Godot开发环境与学习资源

记得第一次听到Godot的名字时还在深圳工作,刚刚接触Unity快一年,只是匆匆在Github上star了,就没有继续了。后面时不时翻开它的Git主页,然而一直没有下载过,每每想看看开源引擎都去看Orge了,但没坚持到开始-_-||。去年年底,老孙雨show了一下Gamejam的成果,全球参与Gamejam的项目中,好像是3000,还是500都是Unity的,老孙雨得意洋洋,看看我们大Unity多V5,UE4虽然紧随其后,但相差起码一个数量级。然而我在other一栏中看到了排在第一位的是Godot,好像是90+,忘了。又再次翻开其Git主页看了看,哦,这个引擎还在,好像还有所发展了哦。

终于,现在进了引擎部,老大在Unity的GC折磨下苦不堪言,甚至祭出了下个项目要用有源码的UE4云云。但考虑到UE4的收费模式和公司一贯作风,我不认为即使公司有次时代需求就会用UE4,Unity也可以做次时代啊,效果不好优化不行别老怪引擎。这时我想起Godot,记得页面上的截图,编辑器还可以,要不试试,自己玩玩,或许有一天能派上用场。好,开始了,先学习Godot的使用,后研读Godot的代码。

主页:https://godotengine.org/

Github:https://github.com/alonecat06/godot

文档:http://docs.godotengine.org/en/latest/index.html

样例项目:https://github.com/godotengine/godot-demo-projects

资源库:https://godotengine.org/asset-library/asset

 

一开始从主页上下载了引擎的可执行文件,就一个exe,非常简洁。接着上Github,checkout了项目引擎源码,看着没有sln文件,就找文档看如何编译项目,找到Compling >> Compiling for Windows一节看下去。安装文中所述,安装了Python3.7,也要设置好系统环境变量的Path

接着安装Pywin32和SCon,当时遇到多个报错,多次Google后查到,需要

python -m pip install --upgrade pip

pip install -U setuptools

pip install -U wheel

升级Python的部件到最新,才能安装SCon。文档上说Godot通过SCon构建的,而非传统的CMake,开发者们极爱SCon,怎么说也不会换的,哈哈,好有个性。现在SCon好了,开始构建sln。记得必须是要从VS的Developer Command Prompt打开,转到Godot的源码目录,启动Scon才能构建出项目sln并编译出引擎。具体操作可以参考油桶上的这个教程。我只做了前面6分钟,引擎源码项目的sln就构建出来了,或许是开发者后续修复了视频中的问题。想来有时间我还是得在看看这个教程后面说什么了。

引擎源码编译成功,看者编译里面既然有bullet,嗯,源码确实值得一学。

源码先放放,先了解一下引擎的基本使用,一开始我还是沿着文档,一点一点往下看,先看看引擎的流程,从Project workflow开始。不过看下来有点乏味,后面再油桶找到了一些教程

http://www.gamefromscratch.com/page/Godot-3-Tutorial-Series-Index.aspx

http://www.gamefromscratch.com/page/Godot-Game-Engine-tutorial-series.aspx

教程有个问题是都主要专注在2d方面,我又在Godot的主页上翻了一下,发现还有个资源库和样例项目。打算先看完教程,对Godot的操作有大致了解,然后看文档和摆弄样例项目,去做3d方面的研究。之前与德立交流过,他说Godot没有prefab,但我看教程后,觉得Godot里面的scene就是prefab,当然功能有待加强。现在弄下来,比较大的一个问题是Godot不支持FBX,只支持DAE(Collada),这样的话我可以用的资源就比较少。尝试过使用Blender作为中间转化,试了两个模型,不成功,用自动桌子的FBX Converter,一个模型成功导入引擎,但在Blender还是不对。文档上说fbx格式有挺多现在,不打算原生支持,计划通插件支持。想着如果这样,可以自己尝试写一下fbx的插件,说不定还能为社区作贡献,开启开源开发的路子呢。

 

2018.10.14=======================================

发现一个问题,Godot的编译依赖于Python,之前是在外部独立安装了Python的3.7。结果有可能是与QuantOS使用的Anaconda出现了冲突,导致QuantOS启动不了,于是只有卸载了独立安装的Python3.7,尝试使用Anaconda里面的Python。

打开Anaconda相应的env,同样的方式安装pywin32和scons。启动scons,遇到报错:

Fatal Python error: Py_Initialize: unable to load the file system codec
LookupError: no codec search functions registered: can't find encoding

网上Google多遍后,发现还是要设置系统的环境变量PYTHONPATH和PYTHONHOME为Anaconda的安装目录(C:\ProgramData\Anaconda3)后,scons能正常运行了。

于是cmd跳到Godot目录,调“scons p=windows vsproj=yes”想编译,结果报错。细看log,怎么会认为是arm平台的呢。原来漏了一步,要调用vcvarsall.bat。于是先调用(vs2015是Mircrosoft Visual Studio 14.0)

 %comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"" x86_amd64

然后再调用

scons p=windows vsproj=yes

最后scons帮我在Anaconda下编译出Godot了,yeah!

posted @ 2018-08-25 01:19  斌伯  阅读(907)  评论(2编辑  收藏  举报