游戏萌新,和小孩一起从头 js+canvas 无框架写个塔防游戏。
那些短子弹(类似圆型)好说,直接用图片就行了,但我看别的塔防有长的子弹,会拉得很长(就是长度不固定,从塔可以直接拉伸到目标,比如闪电之类),这些直接用个长图片就不行了吧?会有拉伸变形。那这些子弹通常是怎么画出来的呢?
![]() | 1 kapaseker 94 天前 复制像素啊。。。中间的像素是复制的。Android 中是.9 patch 图片,游戏中应该是 tilemap 这种做法吧。 |
2 alexsz 94 天前 目标在移动,射击方向不固定 应该需要旋转和伸缩计算,动态的 |
3 bli22ard 94 天前 子弹两头中间,分为三张图, 中间还可以分为各种花纹, 然后拼接。这个思路可以发散一下 |
4 mon6912640 94 天前 淘宝找闪电素材,找几段小段的不同形态的闪电 png ,然后实例化时候计算主角和敌人的距离,根据这个距离实例化几段随机闪电,这样的效果看起来会比较真实,实现上也比较简单 |
5 darklinden 94 天前 ![]() 单个长图片不行用多个啊,sprite frame animation 多帧图片动画 拉伸变形没问题,只需要你的像素精度拉伸之后可以接受就行 直接搜索闪电相关的游戏素材即可,本来就糊拉伸完快速闪过味儿就对了 比如大名鼎鼎的 itch.io/game-assets/tag-lightning |
![]() | 6 dosmlp 94 天前 着色器就可以做 |
7 zuosiruan/a> 94 天前 via iPhone ![]() @dosmlp 人家带小朋友做的 你这一下搞得人家小朋友直接撂挑子了 |
![]() | 8 lyzz0612 94 天前 图片变长不是只有拉伸变形,还可以九宫格、图片重复 |
![]() | 9 Hypn0s 94 天前 1. 如果你基于 WebGL Context ,可以试着配合 AI 写 shader ,图片拉长然后用 repeat 的方式填充 2. 如果是基于 Canvas Context 的,那就拼图片,或者用 Graphic 画 |
![]() | 10 june4 OP @darklinden 感谢。就这个方法了。 |
![]() | 11 funcman 94 天前 现在就算 2D 游戏也没必要按位图帧动画的思维去做。 |
![]() | 13 lpe234 94 天前 关注一下 希望后面分享一下。等我儿子长大了我也教他 |
14 sparklee 94 天前 动态绘制, 粒子生成, 就是用足够多的点 |
15 darklinden 94 天前 说 repeat 也好,九宫格也好,能填出闪电的麻烦帖张图先 另一种做法是 shander 自绘,webgl 支持 glsl shader , 单线+噪声+随时间变化就可以搓出闪电。但是你用没用 webgl 不知道。 想搓游戏玩建议还是上引擎,站别人肩膀上和自己从 0 到 1 搓,工作量还是差异巨大的 |
16 laminux29 94 天前 楼上所有回答,都本末导致了。 建议先了解一下,游戏软硬件的发展历史,早期的硬件游戏机,画面是由游戏机设备上的固定槽位,加上动态的像素点组成。而纯软件游戏,则是像素点 + 线条组成。对,就是这么朴实无华。 如果你想美观一点,人物形象可以用 png 背景透明的图像,但到了这一步,教育意义就已经完成了,子弹直接 png ,闪电用激光代替,激光直接绘制直线就行了。至于闪电效果、导弹跟踪、智能选路、AI 、联机游戏等等,对于小朋友来说就完全超纲了。 |
![]() | 17 andyskaura 94 天前 三段头尾能衔接上的图片,随机拼接。在闪电末端做形变。 |
![]() | 18 june4 OP @laminux29 我就是想做个 Kingdom rush ,植物大战僵尸这类的 2d 小游戏,感觉还在中学生的能力范围内。 像楼上专业人士说的直接上 unity 手搓闪电,这我都很难上手,而且知识点实在太多了。 我把 kingdom rush 1 代那个游戏解包了,得到了上万张游戏素材,打算复制出个简易网页版,只是没从中发现长子弹的图,可能就是从小碎图拼起来的导致我没注意到。 |
19 Rickkkkkkk 94 天前 这问题可太适合问 ai 了。 |
20 WoodsGao 93 天前 trail renderer 了解下 |
![]() | 21 UnluckyNinja 93 天前 楼主想复杂了,我去搜了 kingdom rush 的视频,特斯拉塔的闪电压根就没考虑过变形的问题,就是单个素材重复使用,https://www.bilibili.com/video/BV1g14y1t7CK?t=1807.8 30:08 这里,右上角那个怪丝血被最近处电塔打时,闪电都缩到看不见了,相比正常情况变形很明显吧,但是 0 人在意,楼主练手作品更不需要在意这些细节 |
![]() | 22 june4 OP @UnluckyNinja 嗯。不过我发现象楼上二位说的,用算法自绘闪电或别的长子弹也很容易。ai 就能出个大至的自己改改就能用。 |