Build CryEngine From Source Code
SVOTI(动态全局光照)是CryEngine里一个亮点。为了一窥SVOTI的真谛,让我们开始折腾起来。
安装CryEngine和了解SVOTI
- 按着Tutorials - Getting Started, 下载CryEngine Launcher.
- 安装CryEngine(目前版本5.4)
- 下载GameSDK资源
- 在CryEngine Launcher里以Editor(SandBox)打开Game SDK场景
- 按照Doc - Voxel-Based Global Illumination文档,简单的了解一下SVOGI的功能
- tool->level-settting->Global Illumination_v2->Active开启SVOTI功能
- e_svoDebug开始调试模式
- r_ShowRenderTarget svo_fin显示svoti中间结果
- 在e_svoDebug模式下,新添加物件或移动,物件没有调试的矩形线框,可以勾选Global Illumination->Update Geometry
建议先看看Beginers Guide,了解一下CryEngine’s SandBox Editor一些基本使用方法。
编译和构建CryEngine
- 按照[Download Source Code from Github下载CryEngine源码
- 按照Using C++ Project Template With Custom Engine文档,下载和编译CryEngine.
- 文档相对比较滞后,CryEngine目前支持CMake编译构建
- system.cfg, engine目录需要从CryEngine Launcher的目录拷贝到源码根目录
- 需要指定加载的工程:-project C:/FirstPersonShooter/Game.cryproject, 在我机器是黑屏,
- Using GameSDK with Custom Engine中提示,+map woodland 可以指定场景的哪个Level
- 修改源码,将e_svoDebug等相关变量开启,F5启动,GameSDK帧率太低
- 按照Beginers Guide教程,搭建简单的场景环境,来了解SVOTI底层实现
- SpawnPoint需要设定,不设定一般启动画面在海里。
- SpawnPoint不在Components->Game,而在Legals Entity->Others
- 需要配置下Flow图
- 接下来,就是耐心的看代码
最终跑起来的画面如下:
小结
CryEngine只开源了引擎代码,SandBox编辑器源码未开放。如果SandBox也开源了,是可以少很多折腾的。 文档相对滞后,需要较长时间才能编译运行源码。相反,UE4则比较容易编译构建。