包含原始数据的头文件的用途是什么?

2024-04-07

决定检查一些除了我自己的代码之外的代码,Quake I https://github.com/id-Software/Quake就是选择。我点击的第一个文件只包含原始数据,唯一的注释是 GP​​L。我猜它是一个包含法向量的数组?不管它的目的是什么,让我困惑的是它在头文件中所做的事情anorms.h https://raw.github.com/id-Software/Quake/master/WinQuake/anorms.h。我想知道这样做的目的是什么?

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


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

在过去,几乎所有游戏内容都是硬编码的;现在,您可以简单地打开文件并加载数据,因为 HDD(以及更常见的 SSD)变得更快。

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

话虽如此,这只是遗留问题,我不应该太关心它。


使用示例:

struct Vec { float x,y,z };
Vec arr[] = {
    #include "anorms.h"
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

包含原始数据的头文件的用途是什么? 的相关文章

随机推荐

  • 如何在 C# / winforms 中将图像裁剪为圆形?

    编辑 重复 问题中给出的代码没有为我解决问题 我遇到的主要问题是我不能简单地使用 CSS 和 radius 这很容易 这是在 winforms 页面 项目中加载的图像 我必须尝试将正方形 矩形图像变成圆形 我尝试了以下两种方法 结果将发布在
  • 在 C# 中强制保留两位小数[重复]

    这个问题在这里已经有答案了 我有这个问题 找不到解决方案 这非常简单 我不知道为什么我找不到解决方案 问题 如果一个值返回例如 16 60 在c 中我将读取 16 6 但我也需要0 因为paypal API只接受没有小数的值 或者它必须有小
  • pyproject.toml 没有安装我的包依赖项

    这是我第一次与pyproject toml我的印象是 当你列出包裹时abc作为项目的依赖项之一 该包的依赖项也会被安装 即使它们没有明确列出 这是我目前的pyproject toml build system requires setupt
  • 带有 varchar(255) PRIMARY KEY 的表会造成什么损害吗?

    我知道这不是一个好主意 但我想仔细检查一下这不会造成服务器崩溃等疯狂的事情 CREATE TABLE dbo Items Id nvarchar 255 NOT NULL PRIMARY KEY Value nvarchar max NOT
  • 可可豆荚和 Watchkit 扩展

    我尝试为我的应用程序构建一个 WatchKit 扩展 我将 pods 文件更新为如下所示 platform ios 8 0 use frameworks source https github com CocoaPods Specs git
  • 如何避免在连接 (.) 中使用未初始化的值?在 Perl v5.8.4 中 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions perl e use warning
  • 如何在 Matlab 中运行 java .jar

    我需要在 Matlab 中运行 Java jar 文件 我们将文件命名为 MyJar jar 如果有帮助的话 我正在运行 Java 1 8 0 121 b13 我尝试了不同的解决方案 并收到了这些相应的错误 java jar MyJar j
  • 动态启用/禁用 mvc 服务器端验证

    我有一个 mvc 表单multiple提交按钮 保存草稿 和 发布 目的是在单击 保存草稿 按钮并提交表单时跳过客户端 javascript 无阻碍 验证和服务器端验证 但如果单击 发布 按钮 我确实需要触发这两个验证 我的研究让我找到了一
  • 如何使用CSS的bootstrap删除屏幕底部生成的空白?

    我一直在尝试创建一个简单的 html 页面 我需要将 html 覆盖到整个页面高度 但底部留有小空间 在移动设备上打开时看起来更奇怪 请帮忙检查链接 https lp codes github io Random Quote Generat
  • 如何在 jquery 中的第一个子 div 之后追加元素?

    假设我有以下 div div div 1 div div 2 div div 3 div div 4 div div 我怎样才能在 jquery 或 javascript 中做到这一点 以便我可以在 mydiv 的第一个子元素之后附加一个元
  • 困惑于在 Azure 部署的 Web.config 中存储密码的正确过程是什么

    在将 MVC 5 应用程序放到 Azure 上时 我有过一次非常令人沮丧的经历 我一直在阅读以下页面 http www asp net identity overview features api best practices for de
  • 两列上的唯一键可交换

    请建议我如何比较地在两列上应用唯一键 即假设我们有两列 FK Col1 和 FK Col2 如果我们在两列中插入 2 和 6 那么我们应该无法在两列中再次插入 2 和 6 或 6 和 2 请建议我如何实现这一目标 提前致谢 创建一个计算列及
  • 如何使用箭头键在屏幕上移动图形?

    我正在尝试创建一个简单游戏的开始 我想做的第一件事是将图形导入到我的代码中并将其移动到屏幕上 我能够在屏幕上画一个球并移动它 但是当我从文件导入图形时 我无法移动它 我错过了什么或做错了什么 import javax swing impor
  • Android Camera2视频播放视频和音频不同步

    我在使用 android 相机 2 api 时遇到了问题 我可以录制视频 但在播放过程中 仅播放音频 视频播放完毕后 时间会提前 10 分钟到 2 小时 然后播放视频 我从来没有听说过这样的问题 我几乎关注了this https githu
  • 使用 Oracle SQL 进行带有一些逻辑网络的汇总查询

    我有一个如下表 AuctionResults Auction Action Shares ProfitperShare Round1 BUY 6 200 Round2 BUY 5 100 Round2 SELL 2 50 Round3 SE
  • 如何刷新 Kendo UI 组合框?

    我有一个 ASP Net MVC Kendo UI 组合框 它的数据绑定到包含 1000 条记录的表 我已将 MinLength 属性设置为 5 因此仅返回相关结果 问题是 用户可能需要一起更改文本值 有没有办法告诉控件刷新 这是控件的代码
  • 如何摆脱“属性无法设置为双精度值,必须将此属性设置为十进制类型的非空值”

    我正在尝试让函数导入正常工作 EF 调用我的存储过程 但结果有一个我不明白的内部异常 var result context SomeFunctionImport I get SomeClass 的 Cnt 属性无法设置为 Double 价值
  • 仅当 Perl 脚本未使用 require 加载时,如何才能运行它?

    我有一个 Perl 脚本 如果直接从命令行调用它 我想运行sub main 如果使用 require 调用它 我不想执行任何操作并等待调用者脚本调用sub job闲暇时 对于需要从脚本和 Perl 模块运行的代码 有一个推荐的 Perl 解
  • 为具有 # 次浏览次数的单页网站启用 Google 分析

    我读过类似的问题 但我的问题略有不同 我正在使用 Kendo UI 为网站实现单页注册处理页面 该网站有 4 个页面 当用户单击菜单选项卡时动态生成 例如 当用户单击菜单上的 tab1 时 则tab 1将被注入app container容器
  • 包含原始数据的头文件的用途是什么?

    决定检查一些除了我自己的代码之外的代码 Quake I https github com id Software Quake就是选择 我点击的第一个文件只包含原始数据 唯一的注释是 GP L 我猜它是一个包含法向量的数组 不管它的目的是什么