suchen

Heim  >  Fragen und Antworten  >  Hauptteil

android - 这种安卓游戏下雨效果是怎么做的?求思路

这种下雨效果是怎么做的?求思路

伊谢尔伦伊谢尔伦2772 Tage vor821

Antworte allen(7)Ich werde antworten

  • 迷茫

    迷茫2017-04-17 17:52:57

    在Canvas游戏中,针对这种场景,其实采用的最优化的方案进行的,因为有雨或者没雨都不是游戏的关键,我们也不是游戏引擎,所以一般这么做,从简单到复杂:

    • 使用其他工具,比如PS、AE,让美术师绘制一个全屏下雨动画图片(注意是全屏),然后将动画导出成1帧1帧的PNG图片
      使用动画控件,绘制到当前场景中,一帧一帧的播放即可

    • 使用粒子系统生成,但是粒子比较消耗CPU,除非用在一些关键的物件,对于这种锦上添花的效果还真没意义

    • 针对3D游戏,比如Asphalt等,会专门研发(或购买)水滴引擎,让水滴有反弹、融合等自然效果,当然,也可以用贴图,只在屏幕表面下,而非场景内下。

    2D游戏一般都是方案1

    所以类似题主提到的这种场景,应该是贴图,一张一张的贴,效率也高,反正雨滴在表现上循环播放也合理。

    Antwort
    0
  • PHPz

    PHPz2017-04-17 17:52:57

    如果是有游戏引擎的话应该是用了粒子吧。

    Antwort
    0
  • PHP中文网

    PHP中文网2017-04-17 17:52:57

    用的png做好的局部下雨图片,然后代码控制图片效果,亲测

    Antwort
    0
  • 迷茫

    迷茫2017-04-17 17:52:57

    粒子效果
    每个雨滴是一个粒子,粒子包含静态图片或若干帧的动画
    每个粒子有自己的坐标和2维速度,以及生命周期
    随着时间变化更改坐标,动画帧数,就是下雨效果了

    当然,下到屏幕下面就重新随机一个坐标和速度,从屏幕上方放进来。

    Antwort
    0
  • 迷茫

    迷茫2017-04-17 17:52:57

    这里有雪花的效果,可以研究一下源码
    https://github.com/jinatonic/...

    Antwort
    0
  • 迷茫

    迷茫2017-04-17 17:52:57

    用svg 做吧。具体请自行百度

    Antwort
    0
  • PHPz

    PHPz2017-04-17 17:52:57

    做一个一滴水的落下移动动画,然后循环整个屏幕的宽高,随机坐标点生成这个动画

    Antwort
    0
  • StornierenAntwort