3

决定检查我自己以外的一些代码,Quake I是不二之选。我点击的第一个文件只包含原始数据,唯一的注释是 GP​​L。我猜它是一个包含法线向量的数组?不管它的目的是什么,让我感到困惑的是它在头文件anorms.h中所做的事情。我想知道这样做的目的是什么?

另一个来源,实际代码,对我来说感觉相当复杂。作为一个新手程序员,我可能只需要花更多的时间在它上面。

4

1 回答 1

4

看样子,确实是游戏中某处使用的普通数组。

在过去,几乎所有游戏内容都是硬编码的。现在您可以简单地打开一个文件并加载数据,因为 HDD(通常是 SSD)的速度要快得多。

较早的游戏也被编译为纯 C 可执行文件;在 Visual Studio 等现代 IDE(或几乎任何东西)中,您可以轻松地将任意数据以资源的形式编译到 .exe 中。

话虽如此,这只是遗留问题,我不应该对此非常担心。


示例用法:

struct Vec { float x,y,z };
Vec arr[] = {
    #include "anorms.h"
};
于 2013-07-21T08:59:07.693 回答