设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 7192|回复: 17

[胡扯] 【更新物理引擎功能展示】为啥做动作游戏不用PGMMV而用RM做

[复制链接]

Lv4.逐梦者

梦石
0
星屑
5060
在线时间
705 小时
注册时间
2018-12-11
帖子
241
发表于 2020-10-2 23:04:34 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 lisliz 于 2020-10-5 16:12 编辑

今天酒喝多了,话就有点多。之前我在招募板块发帖动作游戏企划招队友,有人喊我用PGMMV来着。
用pgmmv直接写好的脚本做动作游戏,确实看起来会更快,但是你要想,pgmmv它再好,始终是别人写好给你的,你并不懂里面是什么原理,这样你就很难定制自己想要的东西,而且你要了解它还会有很大的接触成本。

这样就好比各位做一款好点的剧情游戏不让你用原创素材一样,是非常麻烦的,非原创素材(类比PGMMV),他并不是写给你的游戏的,而且你多半还改不了它,无形中限制了你去精雕细琢的可能性。

我截图一哈这两天空洞骑士STEAM底下的评价哈,大家看看。
QQ截图20201002212357.png
你说人家游戏为啥就好玩,“好玩”这两个字分量有多重?那大家觉得用人家做好的战斗插件或者说写好的PGMMV能达到这个分量么?
这种玩法上登峰造极的作品,肯定是需要一个非常强大的策划,和一个什么好玩的东西都能实现的神仙(gong ju ren)程序。所以,看上面的红色字体,现在知道原因了吧。


好的,我们接下来就在MZ里实现一个小型物理引擎。以下折叠过于硬核,慎点!包括碰撞检测,各种数学,物理等烧脑逻辑。
MZ里物理引擎实现的过程


好,经过国庆这几天几乎没日没夜摧残身心的脚本编写和调试,终于重构了一个还算看得过去的运行在RPGMAKER MZ上的2D横板物理引擎。
说起重构,因为之前也有在RMMV上编写过2D物理引擎,所以这次已经是个人的第四代重构版本了。第二代版本发布于今年2月份,作为《喵可莉的兔玩偶》STEAM版本的彩蛋房间小游戏,但是因为被玩家吐槽手感屎,所以发布第二天就删除掉了。
第三代版本发布于今年8月22日,作为《喵可莉的兔玩偶》STEAM上的DLC内容的一个隐藏要素(小游戏)呈现给玩家,现今仍然可以游玩到。

以下折叠是第四代重构物理引擎实现的功能展示:

惯性和摩擦力
重力和跳跃
地形和碰撞
动量定理和弹性碰撞
感想

评分

参与人数 3+3 收起 理由
哇哇哇啊叭叭 + 1 感觉楼主肝到呲血
多啦A户 + 1 精品文章
百里_飞柳 + 1 大工程

查看全部评分

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
20895
在线时间
9331 小时
注册时间
2012-6-19
帖子
7105

开拓者短篇九导演组冠军

发表于 2020-10-3 00:04:12 | 显示全部楼层
那为啥要用rm做?直接用pixi自己搭一套呗
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7921
在线时间
1049 小时
注册时间
2012-4-3
帖子
1271

开拓者

发表于 2020-10-3 00:55:45 手机端发表。 | 显示全部楼层
感觉物理碰撞用公式总是不够用的感觉。毕竟不规则多边形书写难度呈指数型增长。如果碰撞可以像素化,我觉得可以参考参考a星寻路与黑白路径图。以图片的像素颜色判断攻击范围,读取范围,成为读取图片的像素颜色,或者透明度,这又有点像鼠标的透明度感应范围。如果可以在读取图片获取必要信息,而且能够保证效率的话,我觉得不规则多边形碰撞可以一解。

点评

像素范围也许可以通过控制比例处理一下微妙的效率关系,其实也不完全是1:1的像素比例,a星黑白路径图也有1:20的呢。  发表于 2020-10-3 12:06
像素点判断效率是真的低,我亲测过,基本上没办法满足60帧的需求。我用的是canvas.getImageData这个函数,不知道是不是我的问题。  发表于 2020-10-3 08:35
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5060
在线时间
705 小时
注册时间
2018-12-11
帖子
241
 楼主| 发表于 2020-10-3 08:30:16 | 显示全部楼层
本帖最后由 lisliz 于 2020-10-3 08:53 编辑
喵呜喵5 发表于 2020-10-3 00:04
那为啥要用rm做?直接用pixi自己搭一套呗


很多游戏都会写一套自己的战斗系统,但很少有游戏会自己写一套OpenGL出来,对吧。

有些轮子需要自己造,因为做出好游戏必须走定制,但有些轮子可以用别人的。RM和PGMMV或者UNITY肯定多少都有能用的轮子,所以从pixijs自己搭(甚至从汇编自己写),就用不了这些不怎么需要定制轮子了。

所以这个地方就挺主观的,这个帖子不应该这样取名,搞得好像大家都用RM更好似的,对不起dbq可能给大佬造成误会了!用RM,是因为更了解它,能更快把它的轮子用好。跟我说MZ天下第一!
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
20895
在线时间
9331 小时
注册时间
2012-6-19
帖子
7105

开拓者短篇九导演组冠军

发表于 2020-10-3 08:51:59 | 显示全部楼层
lisliz 发表于 2020-10-3 08:30
很多游戏都会写一套自己的战斗系统,但很少有游戏会自己写一套OpenGL出来,对吧。

有些轮子需要自己造, ...

但pixi从概念上接近你说的OpenGL啊
mz或者pgmmv都是在这上面针对特定游戏类型包了一层

你不想用mz的默认游戏类型已经等于放弃它大部分已经包好的代码了……
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5060
在线时间
705 小时
注册时间
2018-12-11
帖子
241
 楼主| 发表于 2020-10-3 09:07:59 | 显示全部楼层
本帖最后由 lisliz 于 2020-10-3 09:24 编辑
喵呜喵5 发表于 2020-10-3 08:51
但pixi从概念上接近你说的OpenGL啊
mz或者pgmmv都是在这上面针对特定游戏类型包了一层


我还是很想保留事件的功能和RM自带地图编辑器的作用的。物理引擎都尽量在Game_Map和Game_CharacterBase上扩展,尽量不破坏它原本的功能。

然后就是放弃一部分包好的代码,哎,真的我觉得必须放弃掉,不这样做不好游戏的。空洞骑士那么多好玩的技能,如果战斗引擎不是你自己写的你咋实现蹭墙跳,空中前冲,向后闪避这种好玩有趣的技能。哎,真的不是吃饱了没事干自己写一个出来显摆,你说不是自己写的战斗引擎。自己却有一万个好玩的技能和关卡设计想要发挥,一万个啊,各种各样的都有啊,不是自己写的战斗引擎你说咋实现,没法整啊。

我举个例子哈,我以前玩游戏玩过这种地形,就是这种土堆,上面能站人,也能从下面跳上去,还能从左边和右边进来。

QQ截图20201003092334.png

QQ截图20201003092324.png

这合理吗?这薄荷里!!!这个土堆根本不是普通的碰撞体,他只有上面有判定,底下是没有的,像这种恶心奇葩的需求以后关卡设计还有很多很多。简直了,如果用别人写好的插件我都不知道怎么实现。
回复 支持 1 反对 0

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
20895
在线时间
9331 小时
注册时间
2012-6-19
帖子
7105

开拓者短篇九导演组冠军

发表于 2020-10-3 09:16:14 | 显示全部楼层
lisliz 发表于 2020-10-3 09:07
我还是很想保留事件的功能和RM自带地图编辑器的作用的。物理引擎都尽量在Game_Map和Game_CharacterBase上 ...

我的意思是,game_map 和 game_characterbase 也放弃

点评

233,如果这俩都不用了,再加上战斗系统也不用,那RM90%的轮子都废了。这还是有点可怕的。  发表于 2020-10-3 09:30
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
34864
在线时间
4148 小时
注册时间
2007-12-15
帖子
9980
发表于 2020-10-3 09:36:14 | 显示全部楼层
本帖最后由 89444640 于 2020-10-3 09:40 编辑
lisliz 发表于 2020-10-3 09:07
我还是很想保留事件的功能和RM自带地图编辑器的作用的。物理引擎都尽量在Game_Map和Game_CharacterBase上 ...


MZ那个地图素材总数量限制很烦,遮挡不分级更烦。
这种土堆应该能拉下跳下去的,从下面跳上去这个功能,反正xp那个act我是没辙了,只能平台左右留口,不能从下面跳上去,合金弹头也没拉下按跳跃式下跳一层的功能XD,但是人家关卡设计不一样不需要下跳。
然后我记得,如果是曲线运动需要算切线,什么sin之类的,动作游戏看上去是美工玩的,实际上全是程序在玩。
光画图像没问题,什么贴壁三角跳,蹭墙下滑所有互动我都能画出来,但是,rm程序里面,尤其是XP里面,很多时候,没法照gif模拟的那么好好运行,
比如贴壁,跳跃中左侧或者右侧顶到墙,继续按着方向键不放转化为贴壁,用小刀扎着墙慢慢下滑,然后再按跳跃会往反方向跳一段距离如果有墙重复,没墙下落,纯剧情没事,允许玩家操作打死我也写不出来。
写出一个靠谱的能兼容rpg模式的act引擎真是挺难的,尤其是自己看得懂的。

点评

设计越好,程序越强大,游戏就越好玩,比如以撒,脸黑没救系列XD,我还是老老实实玩文字游戏,玩家选择指令看表演吧XD  发表于 2020-10-3 09:48
是这样的,我真的就遇到过最难最恶心的系统就是这个了。  发表于 2020-10-3 09:43
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
5060
在线时间
705 小时
注册时间
2018-12-11
帖子
241
 楼主| 发表于 2020-10-5 16:13:05 | 显示全部楼层
顶一下,更新了这两天爆肝出来的rmmz搭载的2D物理引擎展示
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
8
星屑
2832
在线时间
474 小时
注册时间
2010-9-11
帖子
519
发表于 2020-10-5 18:03:11 | 显示全部楼层
大神! 但是想问如果想要从物理开始做起... 为什么不要用Unity
逻辑学好的话甚至不用编程

虽然觉得把物理引擎导入RMMZ有点本末倒置 但是这世界就需要这种人:)

点评

就算用unity我也会写一套自己的物理引擎的,因为要更好的定制关卡内容和特色玩法,然后用RM只是情怀嘛,我喜欢用js系的rm  发表于 2020-10-5 19:29
Paku
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-17 07:30

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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