从零开始制作一个基础的粒子系统
这里我们来使用SDL2从零开始制作一个基础的粒子系统。
这里我们来使用SDL2从零开始制作一个基础的粒子系统。
SDL2除了自己本身的SDL2库,官方和其他开发者为了补充相应的内容,给出了很多有用的库。这里就来看一下适用范围最广的SDL2_image库。
所有的官方拓展库可以在这里找到。
Lua这个语言常常作为游戏引擎的游戏脚本,用于控制人物逻辑。一般Lua在游戏引擎中需要和其他语言进行沟通,而由于Lua是使用纯C写的语言,所以Lua当然也可以和C/C++沟通。
SDL2以来的,相对于SDL1的一大改变就是添加了SDL_Renderer和SDL_Texture,这两个结构体和对应的函数。这两个结构体用于进行软件加速以便于更快更好地绘制出图形,其使用方法也比SDL_Surface要简单(至少不用底层修改像素来绘制几何图形了)。
其实SDL_Texture是基于SDL_Surface的,有很多东西都很相似。SDL2较SDL1的优点就是,其SDL_Texture是运行在GPU上的,SDL会视情况使用D3D或OpenGL,效率更高。
SDL_Surface是用于存储图像,可以用于图像绘制的结构体。
这里我们来看一下SDL2中的SDL_Surface结构体和与其有关的函数操作。
SDL2中想要展示对话框有两种办法:使用SDL_ShowSimpleMessageBox()来显示一个简单的对话框,或者使用SDL_ShowMessageBox()来显示一个自定义对话框。
SDL2中只能展示模态对话框(就是如果你不点掉它你原本的窗体就不会有响应的对话框)。
在学习OpenGL的时候,或者在使用其他的3D引擎的时候总会遇到投影矩阵。这里就对投影矩阵进行推导 这里只推导透视投影,如果会了透视投影矩阵的推导平行投影矩阵其实也是一样的。
OpenAL的学习笔记
OpenAL很好的入门文章:https://blog.csdn.net/zouxy09/article/details/7893162