Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
决定检查我自己以外的一些代码,Quake I是不二之选。我点击的第一个文件只包含原始数据,唯一的注释是 GPL。我猜它是一个包含法线向量的数组?不管它的目的是什么,让我感到困惑的是它在头文件anorms.h中所做的事情。我想知道这样做的目的是什么?
另一个来源,实际代码,对我来说感觉相当复杂。作为一个新手程序员,我可能只需要花更多的时间在它上面。
看样子,确实是游戏中某处使用的普通数组。
在过去,几乎所有游戏内容都是硬编码的。现在您可以简单地打开一个文件并加载数据,因为 HDD(通常是 SSD)的速度要快得多。
较早的游戏也被编译为纯 C 可执行文件;在 Visual Studio 等现代 IDE(或几乎任何东西)中,您可以轻松地将任意数据以资源的形式编译到 .exe 中。
话虽如此,这只是遗留问题,我不应该对此非常担心。
示例用法:
struct Vec { float x,y,z }; Vec arr[] = { #include "anorms.h" };