赞 | 61 |
VIP | 0 |
好人卡 | 1 |
积分 | 79 |
经验 | 38573 |
最后登录 | 2023-8-30 |
在线时间 | 1049 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 7921
- 在线时间
- 1049 小时
- 注册时间
- 2012-4-3
- 帖子
- 1271
|
2楼
发表于 2022-2-26 20:19:17
手机端发表。
|
只看该作者
本帖最后由 Im剑侠客 于 2022-2-27 11:30 编辑
产生一个事件作为载体,用到的就是它的坐标。令这个事件移动,使用了判定当前的位置,结合这个事件的攻击范围判定是否击中目标。
毕竟事件用到的是map的坐标,是以32*32的格子进行的稍微“模糊”的判定。
如果你的子弹载体是纯图片,那么它的坐标就要考虑real_xy的精确情况,当然,模糊一点的话,按照real_xy与事件在地图的map_xy的关系进行转换,也能有同样功效。
首先还是先确定你的判定系吧,是基于map的事件坐标,还是基于像素的real坐标。
========
2022.02.27 Sun.
多个子弹如果使用事件作为载体,确实会降低效率。当然,你也可以尝试以事件作为基础,起一个新的类,只取事件作为子弹的核心属性,或许可以在保留事件的功用的同时提升效率,而单纯的大规模弹幕类子弹关键属性可能不需要太多,当然,独立于事件也同样有可行方法,预估方法应该很多。
空间碰撞关系,对于默认使用格子地图为基础的RM是一个需要提升的大工程。如果考虑存在静态子弹放置于地图的情况,要考虑它的通行度,子弹的体积与格子地图匹配(以具体多少个格子定义体积)的话,基本没有什么不协调。而如果是不匹配的情况,那就要考虑一个像素化自定义体积的问题,这个问题目前还没有实际可用低门槛的范例教程,是有难度的地方。
如果不考虑通行度,碰撞效果完全可以由受击方的表现来实现。以默认的格子地图八方向为例,标准子弹体积为一个格子,一个子弹的命中,受击方基于子弹的到来方向(简单的直线作用力),以一个反方向于子弹的后退达成基本的碰撞效果,实际的受击力度可以按后退的步数距离来作为简单表现。试想以像素为基础,那么方向可以为360度,子弹的坐标与受击方的当前坐标,在命中前就可以得出一个碰撞后的更为精细的方向,受创后退也可以精细为更为准确的接近物理视觉表现的像素距离,当然相关的想法还有很多,同样的还没有实际可用的低门槛范例教程,也是有难度的地方。
事实上,我是乐见于对RM像素化的研究的,目前论坛还没有太多这方面的范例教程,因为是极大受限于技术的大工程,所以难度不是一般的大。真的全方位实现像素化,像素的人物事件移动,像素化的自定义事件体积,像素化的地图通行等等等等,如果能够得到基础的像素化支持,相关的很多东西都会变得容易许多。
(技术力尚未到位,想象力先行其前。非技术人员,可能有说的不对的地方,望海涵。)
|
|