第一天 2021年5月23日
千里之行始于足下,哪一个成熟的男孩纸不想拥有一个属于自己的游戏引擎呢?
之前还行在别人的引擎上面搭建自己的游戏系统,但是别人的东西终究还是别人的。虽然游戏引擎的开发过程注定是一个无聊和孤独的路程,但是只要走下去,我相信一定硕果累累。人生不得太浮躁,急于求成,要静下心来,一步一个脚印。
这里推荐一个巨佬系列:从零开始手敲次世代游戏引擎(序) - 知乎 https://zhuanlan.zhihu.com/p/28587092
目标平台:Windows、Android、IOS
使用语言:C、C++、Lua、Swift、Python(+QT 主要用于写游戏引擎的编辑器)
项目管理:Git、Github
编译工具:CMake
产物:2D的一个跨平台游戏引擎和对应游戏系统的GUI。
名称:The Seed Game Engine(向我最喜欢的SAO(刀剑神域)动漫致敬,希望有一天这个小引擎能发展成为未来的完全潜行引擎,emmm,想太远了:))
这边使用VS2019+Clion 同时对项目编辑。主要是大家对CMake这种项目支持度都不太好,此外Jetbrains公司的Diff工具比较好用。
Visual Studio这边添加一个VSHistory的插件,保证历史记录都在。
CMake生成方面,主要是用VS build
添加.gitignore
进入目录下,建立git目录。
添加一个README.md。这里使用Typora软件编写。
在Github上面建立一个仓库,添加协议为MIT协议。
创建完成,地址为https://github.com/nayaku/TheSeedGameEngine
# 查看远程分支
git remote -v
# 添加远程分支
git remote add origin https://github.com/nayaku/TheSeedGameEngine
上来的第一步就遇到麻烦,现在Github主分支改为main了。
参考GitHub 分支main改为master https://juejin.cn/post/6903782582128017421,把默认主分支改为master。
git fetch origin
git checkout master
# 绑定远程仓库
git branch --set-upstream-to origin/master
git pull
主要是我也是一个人开发,就直接丢Master分支上好了。
git add .
git commit -m "init"
git push
OKay.
继续。。。
先来打一个框架。
首先我们来看看其他引擎的架构:
raylib的1
cmake文件夹下为Cmake脚本,src下为源码。src\external文件夹下存放第三方脚本。
cocos2dx引擎:
算了这种复杂的问题留到晚上睡觉的时候思考去。
一个游戏引擎最主要也是最重要的功能就显示图像。先编写渲染方面的代码。
这里使用Vulkan(虽然之前啃了一个月没下来,但是人总不能一直逃避,要敢于直面困难)
Vulkan填坑学习Day01—框架综述_沉默的舞台剧的博客-CSDN博客 https://blog.csdn.net/qq_35312463/article/details/103813010
安装Vulkan,开敲。配合书本《Vulkan开发实战详解》
Vulkan渲染的步骤:
1.实例和物理设备选取;
2.逻辑设备和队列族;
3.窗口表面和交换链;
4.图像视图和帧缓冲;
5.渲染通道;
6.图形管线;
7.命令池和命令缓冲;
8.主循环渲染。
建立目录如下:
— src
— include
— end 今天就先到这里。
第二天的地址:https://blog.csdn.net/z736248591/article/details/117234099
raylib architecture · raysan5/raylib Wiki https://github.com/raysan5/raylib/wiki/raylib-architecture ↩︎
我所理解的cocos2dx - cocos2dx架构一憋(上) - usp10 - 博客园 https://www.cnblogs.com/usp10/p/6979259.html ↩︎