第33-39天 :所以我意识到我做错了这条路!
是的,如果查看我的提交历史记录,您会发现我在数据缓冲区管理方面做得还不错。 因此,我将回到介绍性场景并从那里重新开始。 我将使用为着色器稳定性所做的修复,然后将这些修复注入Introscene中。
- 着色器编程,第2卷
- Bitfox游戏开发博客-关于从未完成项目的历史
- 具有AutoHotkey的Roblox Studio中具有Lua代码模板的Roblox代码自动化
- 用于情绪识别的生物信号数据集
- 在Gamedev中使用Rust
我将从这里开始……。 抱歉,不是一直保持不变,但是您知道,我每天都在处理我的代码。 这是我正在做的事情的更新,我没有时间报告。
第32天 :生活很难。
因此,过去几天宝宝生病了,没有时间做事。 但是我又从小开始。 我开始为第一级实现压缩图集。
该计划将具有以下墙贴:

另外,我一直在努力了解GPU如何管理内存,尤其是统一缓冲区对象。 通过这样做,我现在知道我有64k字节来存储资产。 墙壁补丁将占据45k,所以我们应该没事。
好,现在就这些! 再见!
第30天,第31天 :我发现我的纹理记忆很小。
因此,我很高兴获得地图集的质感(屏幕截图中的一部分)。 但是,当我分配192x192x12(440kBytes)的统一缓冲存储器时,着色器程序开始崩溃。 我开始尽我所能,对我的机器将要支持的容量有所了解……回想起我以前对微控制器进行编程时的感觉:我没有太多的内存,我只有49152字节,应该在一个数组上实例化。 4096个无符号的int 3D向量。
因此,使用RGB浮点格式来处理以下图集将完全不需要压缩就需要440k字节:

我必须开始考虑一种更压缩的格式:字节整数而不是浮点数。 它将使用我正在使用的内存的第四部分。 但这还不够,因为需要110k。
好的,所以用字节表示的pathc需要12288个字节(12k)。 因此,表示补丁的最大字节数将是每个图集4个补丁。 太多了 这会使水平太平淡……。
也许是时候考虑在GPU外部进行射线广播并在CPU中执行它了,因为那里有大量的内存…。 不。 明天我会想办法。
感谢您关注我!