用户
 找回密码
 立即注册
搜索

小白问题:贴图是先载到内存还是直接载到显存的?

[复制链接]
发表于 2006-12-31 09:03:00
XGL 也是可以认为指定存储位置的:但是对于Geforce3 在大型纹理应用时一般用以下方式:

Geforce 3  系统主内存和显存的关系是 纹理由硬盘调入系统内存然后把存有纹理的内存地址写进 Geforce 3内核中的FIFO 队列,采用拉的方式把纹理信息转移到显存中。同时内存中开始构建下一部分纹理(如果需要的话)。

内存相当于纹理的二级缓存。这样既能够保证纹理调用速度,又能够在画面切换的时候最快的速度重建GUI.
使用道具 举报 回复 支持 反对
发表于 2006-12-31 11:28:00
原帖由 Illuminati 于 2006-12-31 05:36 发表
更进一步讲,这就是 PC 作为一个多用途平台所要牺牲的地方

游戏机一次只运行一个独占全屏幕得游戏,根本没有 PC 上面全屏幕程序丢失焦点以后需要重新创建所有 GPU 资源得问题,所以在游戏机上的情况要简单很多
明白了 谢谢
使用道具 举报 回复 支持 反对
发表于 2006-12-31 14:18:00
研究这个东西,似乎显得很没有必要,是先载入内存还是载入显存,这个应该是DirectX来控制的,对于程序员是透明的,研究它有何意义?我写过dx程序,完全不需要我来控制显存和内存之间的交流。
使用道具 举报 回复 支持 反对
发表于 2006-12-31 19:39:00
原帖由 hunguqi 于 2006-12-31 14:18 发表
研究这个东西,似乎显得很没有必要,是先载入内存还是载入显存,这个应该是DirectX来控制的,对于程序员是透明的,研究它有何意义?我写过dx程序,完全不需要我来控制显存和内存之间的交流。
那就是你写的不多

如果你知道 D3D 有 device invalidate 事件的话,你就清楚程序是怎么透过 D3D API 来干涉 texture, vertex, index 等等的存放位置了
使用道具 举报 回复 支持 反对
发表于 2006-12-31 20:56:00
编写程序需要尽量充分的利用硬件资源。如何利用系统内存和显存需要仔细的思考。
使用道具 举报 回复 支持 反对
12
返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则