幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: shawind

[问题]关于以MVC模式组织的游戏引擎

[复制链接]

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
 楼主| 发表于 2007-9-29 09:13:07 | 显示全部楼层
我是想参考rmxp。把游戏中的物件,像人物,地图,技能...都放在model中,把操作这些物件的方法放在controller中。

例子中直接用list来声明东西,只是为了简单说明那是个list。模板实例化应该是alias list ! (GameObj) GameObjList; ,下次不偷赖了.....

model中的GameObj应该可以不用理会用VertexBuffer这类东西。VertexBuffer的存在,本来就是为了加速显示。如何显示,这是view的工作,那就由它自动为GameObj创建好了。

这么一说,果然,只是简单的把整个view看成是一个对象Game是不行的。c/s没我YY的那么简单。人不能太贪心。 [s:5] 还是先考虑单机吧。谢谢你的提醒。
え~え~お!!!
回复 支持 反对

使用道具 举报

50

主题

742

帖子

402

积分

版主

自定义头衔

Rank: 7Rank: 7Rank: 7

积分
402
发表于 2007-9-29 21:45:16 | 显示全部楼层
VERTEXBUFFER其实偶没想过应该 用这个怎么放 就直接提问了……
实际上从直观来说,你的头文件至少需要被VIEW和MODEL交叉、可选的看到……
即是说,如果从状态表征方面来看,VIEW需要的至少是每个OBJ的位置、状态、尺寸、透明……等等的信息,而这些信息肯定需要被时时的FRAMEMOVE来修改……
LIST的话偶并不是很关心……因为偶比较喜欢用数组……XD,STL用过发现会生成100-400K的尺寸立即放弃掉了……
C/S 偶以前有一个简单的模型,不过做的可能不是很理想只测试了简单的情况……CODE要的话下次放出,貌似那个还是用C++写的,不过完全没用啥LZ喜欢的设计模式……
[s:1]  [s:1]
Style-C
回复 支持 反对

使用道具 举报

8

主题

215

帖子

2223

积分

⑥精研

积分
2223
发表于 2007-9-29 22:42:22 | 显示全部楼层
设计模式这种东西是可以refactor出来的,没关系...
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
 楼主| 发表于 2007-9-30 10:35:54 | 显示全部楼层
是的,如果不想用两个list来浪费内存的和CPU的话,view和model,应该是共用一个list的。其实这样并不是太好。只是没想到更好的解决办法。现在在看rails的代码,看看别人是怎么解决的。

用list,是因为它在内存中不是连续分布,添加删除元素的时候显得灵活一点。数组,容器什么的也是差不多的作用,各人的习惯吧。

exe文件的大小,这个无所谓了,我又不为便携设备写程序。(其实d的exe自带gc,想小也小不了,时间长了看得多了,对这个问题也就麻木了。 [s:5] )

有源代码时,c++移植D难度不大。但是,心急吃不了热豆腐,等我什么把单机的部分弄得差不多了,再来向你请教c/s的问题吧。[s:1]

嗯,重构这个办法我一定要记住了。一开始写出来的东西,肯定不会满意,到时候就能派上用场了。
え~え~お!!!
回复 支持 反对

使用道具 举报

50

主题

742

帖子

402

积分

版主

自定义头衔

Rank: 7Rank: 7Rank: 7

积分
402
发表于 2007-9-30 18:31:52 | 显示全部楼层
貌似会很好玩的样子XD~~~
Style-C
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-5-4 00:15 , Processed in 0.031712 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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