想学习游戏引擎架构用哪个开源引擎好

专访Ejoy2D作者云风:因Lua而生的开源图形引擎
发表于 08:27|
作者张红月
摘要:Ejoy2D是一款基于C和Lua开发的游戏图形引擎,旨在帮助开发人员轻松地嵌入到游戏引擎中,方便开发者定制自己所需的功能。CSDN记者采访了Ejoy2D项目创始人云风,请他来分享Ejoy2D的开发故事。
Ejoy2D是一款图形引擎、基于C和Lua开发,底层是一个十分简单的核心层,基本上只负担绘制工作,上层语言是Lua。Ejoy2D是国内简悦(EJOY)游戏公司所开发的一款游戏图形引擎,旨在帮助开发人员轻松地嵌入到游戏引擎中,方便开发者定制自己所需的功能。遵循MIT开源许可。&
托管地址:
CSDN记者联系到了Ejoy2D项目负责人云风(微博:),请他来分享Ejoy2D的开发历程及他在游戏开发方面的感悟。云风:真名吴云洋,曾任网易杭州研究中心总监,是网易《大话西游》、《梦幻西游》等游戏的主要开发者,他在2011年9月从网易辞职,并与前网易COO詹钟晖联合创办了简悦(EJOY)游戏公司,任公司CTO。Ejoy2D项目负责人&云风
CSDN:Ejoy2D项目创建的初衷是什么?
云风:Ejoy2D的起源来自于我在2013年初玩到的一款叫Clash of Clans的移动平台游戏,这让我发现在移动平台上,除了一个人玩的传统游戏之外,还可以有非常有趣且结合移动平台特性的游戏类型存在。在此之前,我们公司并没有立刻开始移动平台开发计划;之后,我们迫切的想进入移动平台游戏的开发领域。在经过公司内部的充分讨论后,我们打算先模仿Clash
of Clans做一款类似的游戏练手。我个人判断,把这类游戏做好,客户端开发有一定的技术门槛,不太容易做的好。而我在十多年前就开始做2D游戏引擎,很有自信可以为这款游戏定制一款新的、适应移动平台开发的2D引擎。这就是Ejoy2D的开始。
在独立开发了大约一个月后,从我们的PC端游戏组调出了一名同事,和我一起来制作这款新游戏。边用边对Ejoy2D提出新需求,并完善它。
到了2013年7月左右,我们的外包美术资源开始进入,这时,我们又从外部招聘了一名同事专门为 Ejoy2D定制美术工具。这样才慢慢完善了工具链,最终把游戏做了出来。这款游戏就是现在的陌陌争霸。
从一开始,我就希望把引擎开源。因为之前我们开源的游戏服务器框架Skynet反响很好,帮助了不少朋友,同时开源也提高了代码质量,不少bug都是公司之外的同学发现的。这让我们在自己生产环境碰到bug前就得以修正。
但一开始的Ejoy2D代码很不稳定,且充满了为了游戏项目能快速完成而临时添加的补丁,所以直到我们的陌陌争霸基本完成。后来,我花了大约2周时间全部重写了Ejoy2D的代码,觉得可以与大家见面了,就公布了代码,并发布了开源的消息。接下来,我们内部有两个新的项目组开始使用新版的Ejoy2D开发游戏,这两个组都有同事开始为Ejoy2D贡献代码。
CSDN:与其它游戏引擎相比,比如Cocos2d-x,Ejoy2D有哪些与众不同的地方?
云风:Ejoy2D其实是对OpenGL ES的一个浅封装。我并不想把它发展成一个游戏引擎,而只停留在图形引擎层面上。但和别的引擎相比较大的区别是,它天生为和Lua结合而设计并实现的。你几乎不可能只使用Ejoy2D的C API ,而我鼓励你只用Lua API在其上做开发。只有解决不了的需求时,再编写一个供Lua调用的C模块。由于这种设计,在使用方式上,Ejoy2D应该会比其它结合Lua脚本的引擎更高效些,使用起Lua API也会更自然。同时,Ejoy2D保留了很小的C内核,代码全部用很简短的C实现。阅读理解起来会比较容易,维护它更轻松一些。
CSDN:您们最近上线了一款手游,叫陌陌争霸,在这款游戏中,Ejoy2D都做了些什么?
云风:陌陌争霸的客户端全部用Lua开发,客户端引擎就是用的Ejoy2D&。但Ejoy2D仅仅只是图形引擎,所以我们还用C编写了网络模块,资源打包的模块等等。陌陌争霸对AI方面还有比较高的性能需求,我们还用C语言为AI,士兵寻路编写了一些代码(在大部分其它类型游戏中,用Lua实现性能就够了)。
由于陌陌争霸开发的比较早,当时的Ejoy2D没有现在的版本完善,所以陌陌争霸组的同事在UI模块、粒子系统上花了更多精力。这些在现在开源版本的Ejoy2D中,在引擎层面已经做了更多的支持。
CSDN:对于使用Ejoy2D的用户,您有哪些建议/经验告诉他们?
云风:最好能通过阅读代码来理解Ejoy2D的结构,明白它能解决什么问题。然后尽量只在Lua层面使用它。把需求提到开源社区,大家来判断该如何改进引擎适应不同的需求。对于很多引擎,通读所有的代码是件工作量很大的工作,但是Ejoy2D不同,它很简短,花不了太多时间。
CSDN:从风魂引擎到Enjoy2D引擎,您在引擎和游戏开发方面有什么心得?您的设计思想和实现方式有什么变化?
云风:风魂是我大学时代的作品,到现在已经有十多年过去了。当初我希望尽量帮助游戏开发人员解决所有问题,而现在不这么想了。我希望使用引擎的开发人员有足够的选择权。作为一个图形引擎,应该尽量配合开发人员的选择权,尽可能的把引擎做成一个方便开发人员组装的一个组件。
引擎的实现应该足够简单,并尽可能的隐藏需要引擎解决的技术细节。
CSDN:与开发PC游戏相比,开发移动游戏的痛点是什么?
云风:我并没有正经的开发过一款传统的PC游戏,而我在意识里并不把MMO Game和传统游戏归为一类的。在移动平台上开发游戏让我找到了一些开发游戏的乐趣,我觉得比开发MMO游戏更加有趣。至于痛点,我觉得在国内做游戏,或多或少的要迎合渠道的想法很讨厌。比如说,我不希望我们的游戏需要玩家有一个账号才能开始游戏,而各种国内的平台会强迫你接入他们的SDK
,需要玩家注册账号,然后才能开始游戏。
CSDN:从事游戏开发这么多年,您最大的感悟是什么?
云风:心无旁骛方能获得无穷乐趣。
CSDN:您一直都在鼓励大家开源,并且把自己的一些作品都开源出去了,这样做给您带来了哪些好处/乐趣?对其它开发者来说,把自己的作品开源出去有哪些好处?
云风:开源对自己毫无损失。反而会督促你把代码质量提高,设计时也需要考虑得更完善。如果有其他人使用,他们往往会以一种你不曾考虑过的方式来用,从而发现你发现不了的漏洞。这些漏洞可能是实现上的,也可能是设计上的。
CSDN:您已经这么牛了,在这个圈子里,有您崇拜的技术大腕吗?您认为这些人身上都有哪些特点?
云风:想不到 “崇拜” 这个词能用在什么人身上,我不认同人和人之间产生 “崇拜”的这种情感。只能说我喜欢怎样的人吧。我喜欢思维理性,有想像力,有执行力,总能自己动手去解决问题的人。以“启蒙·开源”为主题的(Open Source Technology Conference 2014)将于3月30日在北京召开,目前,欢迎各路开源大侠积极参与。届时云风将亲临现场,分享他多年的开源开发经验,欢迎大家来领略大神的风采。
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章评论已经自动封存,请勿再发言论
声明: 下面的评论属于其发表者所有,不代表本站的观点和立场,我们不负责他们说什么。
(得分:0) 日 15时50分 星期一
(得分:0) 日 16时34分 星期一后使用快捷导航没有帐号?
 论坛入口:
  |   |    |   | 
2017开年技术福音 将有一款优秀的国产自研引擎完全开源
评论数: 12
虚拟VR&游戏机&PC/兼容机&
设计思想/框架&客户端&3D图形&
C/C++&Lua&
& && & 2017年新年开工第一周,在朋友圈看到一条福利消息,国内知名游戏引擎架构师张翼称将在今年将自己多年引擎研究经验总结历练而成的《Halluciongen》3D引擎完全开源。 近十年的经验总结,多年的心血就此开源共享,不说商业化应用的价值,作为行业技术交流也是非常好的一件事情!
引擎开源.jpg (116.9 KB, 下载次数: 271)
21:00 上传
& && & 据朋友圈的确切消息,在今年随《Halluciongen》引擎研发的第一个项目《英雄不死》VR游戏项目的上线,《Halluciongen》引擎将正式开源!是的,大家没听错,正式开源,所有开发工具和源代码将全部开放。从底层开始架构,完全国产研发的引擎,渲染效果能达到次世代3A级画面的3D引擎,将要开源了。& && &&&对于国产引擎技术大家向来都很不看好,一直以来90%的人对张翼所做的事情都持怀疑态度,感觉在天荒夜谈的人不少。虽然是近十年的功夫,但《Halluciongen》引擎毕竟是一个人写出来的东西,能用吗???
为此我特意从他们公司公布的项目图片中搜集了几张具有代表性的效果图片,以供大家鉴赏!
21-34-10-25(1).jpg (877.04 KB, 下载次数: 293)
21:04 上传
引擎据说已达到照片级的渲染效果!!!
1.jpg (387.57 KB, 下载次数: 275)
21:03 上传
6.jpg (486.19 KB, 下载次数: 290)
21:03 上传
& && & 在游戏圈认识张翼的人不多,但在引擎技术圈张翼却是非常有名的技术大牛。相信一旦开源必然会有很多的技术爱好者关注、研究,就张翼这份技术分享的精神,为张翼点赞。期待《英雄不死》早日上线,更期待《Halluciongen》早日开源!
111.jpg (330.28 KB, 下载次数: 282)
21:07 上传
关注我们官方微信公众号
下载我们官方APP-游戏行
关注手游动态微信公众号
关注了这么多年的技术大牛,引擎说开源就开源了,这份分享精神值得赞赏!
同样作为写引擎的,表示兹词,尤其是这精神,大赞
感谢关注!
新人学习!求开源地址!!!
tachen 发表于
新人学习!求开源地址!!!
感谢关注!
唯一一款用国产自研引擎开发的3A级次世代VR游戏登录Steam绿光,有Steam账号的欢迎大家去投票,终于不用在国外的游戏下面刷评论了,支持国产原创,支持国产引擎!
提示: 作者被禁止或删除 内容自动屏蔽
说好的开源呢?年初等到年尾 就没消息了?
效果的确不错,但做效果不难。
做到效率好,省内存、省cpu,不卡,能玩才难.
独立研发人都能做,我就是独立研发人,必须有时间设计来设计性能才行.
源代码免费公开-大型3D网游《轮回》的安卓测试评估app
下载地址:
http://user.//blog/
其中技术:
opengl 雾 高度图 地面贴图 模型 纹理贴图 水面 显卡编程 顶点着色器 花草树木 当前地面高度计算 Android Studio入门框架 等应有尽有,是大型3d手游的必备技术
领到此份源代码的同学,等于即刻会安卓3d游戏编程,含资源的哦.
竞技游戏全面网游化的今天,你还记得当年的《王者荣耀》技术总监:技术架构与同步方案阿里巴巴文化娱乐集团宣布成立游戏事业群手游买量市场要被玩坏了,“传奇”抢走了70%9月25日—10月1日共有52款游戏开测|GameRe《塞尔达传说:荒野之息》海拉尔地区是怎样
微信扫一扫关注我们→

我要回帖

 

随机推荐