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

Project1

 找回密码
 注册会员
搜索
楼主: 九夜神尊
打印 上一主题 下一主题

高手讨论→RM里你们在乎程序效率吗?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1323
在线时间
831 小时
注册时间
2007-12-25
帖子
1558
11
 楼主| 发表于 2010-10-2 09:55:51 | 只看该作者
回复 熊的选民 的帖子

你说的子弹实际上是因为算法的问题

如果需要处理很多的碰撞问题,就要用另一种数据结构了

在每个物体移动的时候,都要反馈一个自己的ID到坐标表中

直接调坐标就能得到事件的ID。

而这个坐标表实际上就是一个三维数组

obj[x][y][p]

当从4,5移动到4,6 的时候

就会在obj[4][5]中删除自己的ID
然后在obj[4][6]中再添加自己的ID
精卫赤龙腾   
总是存在一种强大,去完成似乎不可能的事情.
无畏战乾程   
或是需要一种勇气,去挑战几乎不存在的胜利.
一味玄真魂     
这是拥有一种恒心,去化解根本没有解的困难.
烈卫开天径    
只是带着一种决心,去争取残存的最后的希望。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
61
在线时间
24 小时
注册时间
2008-8-5
帖子
1924
12
发表于 2010-10-2 10:15:27 | 只看该作者
本帖最后由 紫苏 于 2010-10-2 10:16 编辑

回复 九夜神尊 的帖子

三维数组的空间代价比较大,而且每次移动都添加/删除元素也不是个办法,如果需要表示二维场景并进行简单的碰撞检测,可以选择用四叉树之类的稀疏结构节省空间,同时移动节点的频率也没有数组那么高。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1323
在线时间
831 小时
注册时间
2007-12-25
帖子
1558
13
 楼主| 发表于 2010-10-2 10:38:54 | 只看该作者
回复 紫苏 的帖子
我表示关于2叉3叉4叉一类的我不懂。
精卫赤龙腾   
总是存在一种强大,去完成似乎不可能的事情.
无畏战乾程   
或是需要一种勇气,去挑战几乎不存在的胜利.
一味玄真魂     
这是拥有一种恒心,去化解根本没有解的困难.
烈卫开天径    
只是带着一种决心,去争取残存的最后的希望。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8075
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

14
发表于 2010-10-2 10:56:02 | 只看该作者
回复 紫苏 的帖子
以前做过类似的游戏,用的是网格或者树,加上visitor。不过要是从头开始写一个这种东西很烦啊。

   
回复 支持 反对

使用道具 举报

Lv1.梦旅人

剑圣

梦石
0
星屑
50
在线时间
122 小时
注册时间
2008-8-31
帖子
778
15
发表于 2010-10-9 10:42:21 | 只看该作者
哇,听的似懂非懂的飘过。。。=。=。。。

PC/IOS/Android共享的RM RPG:未名大学
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
8075
在线时间
7346 小时
注册时间
2010-7-16
帖子
4915

开拓者

16
发表于 2010-10-9 15:32:05 | 只看该作者
主要的步骤有两个吧,一个是在事件每次移动时改变它在容器中的位置,另一个是在需要时对半径内的事件进行搜索得到一个列表。不过就算应用了高级的数据结构,也不知道性能可以提高多少。本来一幅图中的事件也就几十个,不是有成百上千个怪的大型游戏;而rm脚本的效率又不高,用高级数据结构的额外支出可能还抵不上带来的收益。
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1175
在线时间
1564 小时
注册时间
2008-7-30
帖子
4418

贵宾

17
发表于 2010-10-12 23:30:51 | 只看该作者
不是很纠结那东西,除非在很要手感的情况下。。。。
因为让我独立用SDK并用C/C++语言写游戏的话我觉得不会这样做。。。感觉好麻烦的说。

其实我觉得无论是立即数(存放在实变量中)还是通过方法获得,其消耗时间应该相差不是很大。再者,通过方法获取弹性更大。在我正在计划的武器天赋中:重定义了原获取攻击力的方法

alias _fsl_eg_atk atk
def atk
  # 代码有省略
  return @gifts.atk_plus + _fsl_eg_atk
end

这样对程序的兼容性很有帮助,也就是说,不但可以使用我的增益脚本,也可以使用其他程序员的。这些取舍,就仁者见仁智者见智了。

最后一句话说得不错。。。(纯Ruby的环境的确很快,RGSS2的结构比RGSS赞。。。)

See FScript Here:https://github.com/DeathKing/fscript
潜心编写URG3中。
所有对URG3的疑问和勘误或者建议,请移步至发布页面。
欢迎萌妹纸催更
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
27 小时
注册时间
2010-7-11
帖子
44
18
发表于 2010-10-12 23:48:48 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1624
在线时间
1609 小时
注册时间
2007-8-28
帖子
3253

第3届短篇游戏大赛主流游戏组冠军第1届Title华丽大赛新人奖

19
发表于 2010-10-13 02:46:40 | 只看该作者
很精辟的一句话:在乎效率就别用RUBY
buruohuainian1 发表于 2010-10-12 23:48



我反而觉得是 正是因为我在乎效率采用的ruby
开发一个小软件 ruby的开发速度是c不能比的
对于商业来说,开发效率才重要啊,管你用户死活

点评

但还是得保证用户操作流畅,不然持续的卡会让用户流失的..  发表于 2010-10-22 21:31
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
3 小时
注册时间
2010-8-15
帖子
33
20
发表于 2010-10-22 21:29:09 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-13 12:38

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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