level 2
azuregal
楼主
CE3免费版用了大半年,说起来也算是有项目经验了,但总觉得自己对CE3的掌握还停留在非常皮毛的阶段上。这种感觉产生的根源就是我对基于CE3的编程感觉很绝望,有很多非常基本的问题,官方的文档里根本不提,只是一味地教用户如何去制作一些具体的效果。这导致的结果就是你只会用引擎里已经提供的东西,而你想对它进行哪怕一点点扩展,都难上加难。
如果你只是想玩玩Sandbox做个翻版的FPS游戏,CE3无疑是很快的,因为Sandbox里面已经预置了一个完整的FPS游戏,你甚至很少需要编码。而如果你需要做一个在游戏规则上稍有变化的东西,你就必须在几乎没有文档支持的情况下独立去啃那几十万行C++代码。这些代码紧密地勾连在一起,官方文档永远不会告诉你关于它们之间是如何勾连的任何本质的信息,官方文档永远在扯一些非常皮毛的东西。通俗地说,CE3相当于直接卖个车给你,到手就能开,但你不想开车想开飞机,对不起你自己先研究怎么把这车拆了吧;而Unity之类的引擎相当于卖零件,不能直接开,但你想用这些零件造什么,都可以自己组合。
在我看来,要在CE3中实现一个游戏设计最难的地方就在于CE3自身的结构不清晰。一般的游戏引擎都是底层功能和具体的游戏逻辑分开,而CE3把具体的游戏逻辑割裂了,在C++上有具体的游戏逻辑,Lua脚本上有,在FG上也有。这导致你对同一件事情的处理方法总是很难统一,你总要想我写的这个功能到底应该在哪里实现?你甚至经常不得不在FG里做一些,在C++里做一些,在Flash UI里面又是一些,然后定义一大堆event、function把所有这些粘到一起,实现一个其实非常简单的功能。
CE3有系统化的Sandbox使用教程,但没有系统化的编程教程。无论是C++还是Lua,网上可以找到的教程都是些皮毛。CE3中的每一个功能模块都牵涉成千上万行的代码,而官网上的Technical Documentation中对应的部分往往鼠标一滚就到底,简直跟没说一样。我也不知道这算是故意藏起来不说,还是懒得说?说到底大家对这引擎的评论就是:渲染效果很好,没了。对美工来说这绝对是个好东西,因为效果牛;对程序员来说——这可能是个好东西,但你驾驭不了它,它对你而言就一点用也没有。
2013年08月21日 04点08分
1
如果你只是想玩玩Sandbox做个翻版的FPS游戏,CE3无疑是很快的,因为Sandbox里面已经预置了一个完整的FPS游戏,你甚至很少需要编码。而如果你需要做一个在游戏规则上稍有变化的东西,你就必须在几乎没有文档支持的情况下独立去啃那几十万行C++代码。这些代码紧密地勾连在一起,官方文档永远不会告诉你关于它们之间是如何勾连的任何本质的信息,官方文档永远在扯一些非常皮毛的东西。通俗地说,CE3相当于直接卖个车给你,到手就能开,但你不想开车想开飞机,对不起你自己先研究怎么把这车拆了吧;而Unity之类的引擎相当于卖零件,不能直接开,但你想用这些零件造什么,都可以自己组合。
在我看来,要在CE3中实现一个游戏设计最难的地方就在于CE3自身的结构不清晰。一般的游戏引擎都是底层功能和具体的游戏逻辑分开,而CE3把具体的游戏逻辑割裂了,在C++上有具体的游戏逻辑,Lua脚本上有,在FG上也有。这导致你对同一件事情的处理方法总是很难统一,你总要想我写的这个功能到底应该在哪里实现?你甚至经常不得不在FG里做一些,在C++里做一些,在Flash UI里面又是一些,然后定义一大堆event、function把所有这些粘到一起,实现一个其实非常简单的功能。
CE3有系统化的Sandbox使用教程,但没有系统化的编程教程。无论是C++还是Lua,网上可以找到的教程都是些皮毛。CE3中的每一个功能模块都牵涉成千上万行的代码,而官网上的Technical Documentation中对应的部分往往鼠标一滚就到底,简直跟没说一样。我也不知道这算是故意藏起来不说,还是懒得说?说到底大家对这引擎的评论就是:渲染效果很好,没了。对美工来说这绝对是个好东西,因为效果牛;对程序员来说——这可能是个好东西,但你驾驭不了它,它对你而言就一点用也没有。