摘要:
在游戏开发中,矩阵具有十分重要的地位,但他也只是我们操作点和向量的一个工具,在这里我们使用列优先规则来存储矩阵。在这里矩阵最主要的两个作用是:1. 旋转一个向量或者变换一个坐标点的位置;2. 坐标空间变换。对于第一点,在第2.1向量章节中,我们直接使用了三角函数对向量进行旋转,矩阵则是提供了另一种表 阅读全文
摘要:
在介绍向量前,首先要介绍下坐标系统,因为向量是依赖于坐标系统的,最常用的是笛卡尔直角坐标系。坐标系分为左手坐标系和右手坐标系,如下图,当我们使用向量[a,b,c]来做为我们的坐标系时,使用的是右手坐标系,而使用[c,b,a] 做为坐标系时,则使用了左手坐标系统,即两个基向量进行叉乘a x b = c 阅读全文
摘要:
软件项目中最为重要的内容之一就是内存管理,游戏开发尤为如此。一款游戏的运行需要占用大量内存资源,特别是移动设备在硬件受限的情况下,如果不能管理好内存,系统很快就会因为内存不足导致程序崩溃。内存管理中最为关心的两类问题是内存泄露和内存碎片问题。使用C++进行开发时,我们new出一个对象后很容易忘记释放 阅读全文
摘要:
1.11 环境搭建 本系列主要在Windows平台下进行开发,后续核心代码与可以移植到其它平台上。首先我们利用Windows API 显示最基本的窗口而不借助于任何窗口库。下面是显示一个窗口的基本代码。 1 #include <Windows.h> 2 3 LRESULT CALLBACK Wi 阅读全文
摘要:
提到游戏开发,从事或了解过游戏开发的人立刻想到的可能是Unity、虚幻、CryEngine等商业引擎,如今,虚拟引擎已经迎来第五代,Unity2022版本也已经发布,越来越强大的功能被这些商业引擎所支持,使我们能够快速方便的搭建游戏框架,但引擎内部也封装了很多底层细节,对于热爱游戏开发的人而言,能够 阅读全文