游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1795|回复: 3

请教高手 2d游戏中的拖影是怎样制作的

[复制链接]

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
发表于 2007-11-18 14:56:00 | 显示全部楼层 |阅读模式
如附件图中所示,那些飞镖后面都更着很亮的拖影.我想知道直接用程序怎样实现,那种由美工再以纹理的形式贴在ID3DXSprite对象上的方法我已经知道了.我想知道用程序直接实现这种效果的原因是:如果要做一个象蛇一样的可以自由弯曲的拖影(拖影的弯曲方向由产生拖影的对象的运行轨迹决定),用画好的图片恐怕就不行了.
sf_20071118145548.jpg

30

主题

422

帖子

433

积分

中级会员

Rank: 3Rank: 3

积分
433
发表于 2007-11-18 19:43:00 | 显示全部楼层

Re:请教高手 2d游戏中的拖影是怎样制作的

假设前一帧渲染到纹理A

每一次渲染:
对A衰减/模糊等处理
混合A和新画面,并渲染到纹理A
把A作为结果输出到屏幕。

5

主题

23

帖子

29

积分

注册会员

Rank: 2

积分
29
发表于 2007-11-19 12:52:00 | 显示全部楼层

Re:请教高手 2d游戏中的拖影是怎样制作的

用粒子系统

每次移动建立一个alpha为n的粒子
不断衰弱,最后清除

还可以为粒子系统加上随机移动,效果就很好了。

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
 楼主| 发表于 2007-11-22 02:05:00 | 显示全部楼层

Re:请教高手 2d游戏中的拖影是怎样制作的

如果每次对A进行衰减处理要想避免被IDirect3DDevice9::Clear清除掉,是不是还得多个ID3DXSprite对象实现?  如果不是,能再说清楚点吗?具体是怎样设置的.

如果是用多个ID3DXSprite对象实现的那么不是和粒子系统是同一原理,要加载很多灵动精灵,这样很消耗资源.

因为想做飞机游戏,所以那满屏幕的子弹就有数千发,这就已经用了粒子系统,如果再在每个子弹后边跟一个由粒子做的尾巴,我怕电脑运行速度达不到.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-17 23:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表