gpt4 book ai didi

有人可以解释 Quake 3's ' hunk' 吗?

转载 作者:太空狗 更新时间:2023-10-29 16:09:53 26 4
gpt4 key购买 nike

我已经通读了源代码,并尝试在线研究它,但我在完全理解它方面遇到了瓶颈。
我的意思是,它与区域分配有何不同?

“zone”是否用于小内存,而“hunk”用于模型等较大的东西?

谢谢

最佳答案

是的,hunk 用于大型静态分配,例如纹理和几何体,而 zone 用于较小的(并且可能是不稳定的)分配。

像这样拥有两个(或更多!)区域是游戏中的常见模式。这有两个原因;

1) 大多数游戏会预分配它们运行所需的内存,然后从该空间执行它们自己的分配。这不仅比使用操作系统分配器更快,而且它会阻止操作系统将您的纹理/几何图形/任何内容分页到磁盘。使用您自己的分配器还可以更轻松地创建代码来跟踪内存模式和泄漏。

2) 将您的小型和/或动态分配保留在单独的区域中,避免分散用于较大分配的区域。碎片化是之前的小分配留下“漏洞”的地方,导致连续可用空间量变得小于总可用空间量,并且是插入内存限制的游戏的祸根:)

关于有人可以解释 Quake 3's ' hunk' 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/520714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com