猫史档案馆


【UT】【啥也不是小讲堂】保证听懂的屏幕特效

用户:学习GMS2的星烬有多辣寄学习GMS2的星烬有多辣寄查看:23 回复:17 评论:23 创建时间:2021-09-20T12:50:59


在UT审判这里

无论是动画还是游戏,类似于屏幕旋转,缩放这样的屏幕特效相当常见

在合适的时候添加这些屏幕特效

能给玩家很(xiang)惊(sha)艳(ren)的体验

这里就来随便讲一下这些东西

1.屏幕旋转

屏幕旋转其实很简单

理论上说只需要

center_image

就可以解决

但是这样不能固定屏幕角度

center_image

这样就很完美了

控制角度的原理很简单

就是不断找差值

差值为零就不转,差值不是零就会旋转差值度

很方便

但是我不经常用,因为看起来不高级(什)

 

当然也有别的方法

随便列举几种常见的

①三角函数

这个我自己也不是很清楚原理

大家只需要明白这玩意儿能用就行

center_image

 

②依靠非围绕旋转的动作积木

我比较喜欢这样

这里展示一下我经常用的一种

center_image

原理很简单

屏幕旋转,绝对xy轴也应该旋转

观察可以发现屏幕旋转度=0°时

x轴与屏幕旋转度相等,y轴当然与x轴垂直,也就是屏幕旋转度+90°

因此,先移动到屏幕中心点

再面向x轴的角度,移动x步

随后面向y轴的角度,移动y步

最后转回原本角度。就酱

 

接下来是屏幕缩放

屏幕缩放会“稍微”比屏幕旋转难搞一些

首先讲一下屏幕缩放怎么办

首先,屏幕缩放不是只动角色大小能搞定的

还需要动角色的xy

动用大家的脑子,随便想想就知道

屏幕缩放时,角色的xy肯定是原有xy × 屏幕缩放倍,角色的大小则是角色大小 × 屏幕缩放倍

但是问题来了

如果重复执行  {移到x ×屏幕缩放倍,y × 屏幕缩放倍; 设置大小为 角色大小 × 屏幕缩放倍}

就像这样

center_image

乍看没问题

但是仔细一琢磨,问题很大!

xy和大小不断乘一个小于1的数,肯定会无限趋近于0啊,如果屏幕缩放倍大于1,又会无限趋近于无限大

所以这样做是绝对不行的

那我们就要想办法

(当时我想了好长时间)

目前看来,只有一个办法:将角色的所有信息都用 变量 代替!

是的,角度,x,y,宽度,高度等等这些信息

都需要用变量代替,不然就会出现上述情况

自然麻烦不少,对吧

因为这个原因,在有屏幕旋转,缩放的的审判里,变量等数据的传输和使用挺重要的

稍不留神就会整个崩掉

至于屏幕缩放的代码,我更喜欢和屏幕旋转合在一起

这里只晒两种

①还是三角函数

center_image

为什么这么Looooonnnnnggggg?

因为为了避免不必要的多余移动,我把设置xy变成了移到xy

同时加上了”×屏幕缩放倍“

因此显得超级长

②动作积木

center_image

这个是我常用的,也用了围绕旋转

因为有多余移动,因此对于画笔不太友好

所以我的画笔用的一般是三角函数版

这个就等于是先让角色归位,如果屏幕旋转度=0°的情况

在围绕旋转就可以了(这也是一种固定屏幕旋转角度的方法)

 

3.屏幕移动

不知道大家有没有注意到

我在所有的屏幕特效函数里都加了”屏幕中心点“这个角色?

好了,屏幕移动讲完了

只需要让屏幕中心点移动就行

(围绕旋转就是围绕中心点旋转就OK)

 

4.屏幕镜像

事实证明,最后的不一定最难

来理解一下屏幕镜像的概念

简单来说,就是角喵像要左右翻转,x则取相反数,y不变

center_image

(就是这个积木,能让角喵像镜像)

但是心细的同学就会想到:欸,角度怎么办?

简单,只需要 180°-角色角度 就可以!(为什么?自己画个图,想想就行)

相信大家都能明白怎么办了

分情况就行

像这样

位置:

center_image

 

图像:

center_image

Okay,非常完美

这就是四种屏幕特效的基本教程

结束!

撒花!*★,°*:.☆/( ̄▽ ̄)/$:*.°★* 。


回复

上一页1 页 / 共 1下一页
传闻中的三叶传闻中的三叶

imgsrc="https://static.cod喵/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E7%82%B9%E8%B5%9E.gif"alt="emotion_编程猫_点赞"

点赞1


评论


Summer橘子喵Summer橘子喵

点赞

你可以看看A12的,那个屏幕切换值得你学习(

点赞0


评论


Summer橘子喵Summer橘子喵

https://shequ.cod喵/work/111766014

点赞1


评论


AlcalaAlcala

ddd

点赞1


评论


MC东方墨染殇雪就是秀MC东方墨染殇雪就是秀

ddd

点赞1


评论


学习GMS2的星烬有多辣寄学习GMS2的星烬有多辣寄

喵d

点赞0


评论


学习GMS2的星烬有多辣寄学习GMS2的星烬有多辣寄

喵喵d

点赞1


评论


误杀丶误杀丶

星烬nb

点赞0


评论


帥猪帥猪

ddd

点赞0


评论


学习GMS2的星烬有多辣寄学习GMS2的星烬有多辣寄

喵d

点赞0


评论


小鱼yuzifu小鱼yuzifu

ddd

点赞0


评论


学习GMS2的星烬有多辣寄学习GMS2的星烬有多辣寄

ddd

点赞0


评论


MC东方墨染殇雪就是秀MC东方墨染殇雪就是秀

ddd

点赞0


评论


寂梦晨风寂梦晨风

说什么呢(

点赞0


评论


小黑是个zz小黑是个zz

nb

点赞0


评论


小黑是个zz小黑是个zz

喵喵喵喵喵喵喵

点赞0


评论


一光之逆子一一光之逆子一

哇,坟

点赞0


评论