DX的资源存储

DX共有3种资源

1. Vertex Buffer

2. Index Buffer

3. Texture


在创建资源的时候可以用不同的flag来标记资源要存于什么地方

1. D3DPOOL_DEFAULT

    不用D3D托管的资源,一般位于 显存(VRAM) 或 AGP内存中

    当设备丢失时,需要手动恢复资源,但是在这里存储的资源,由于不需要拷贝数据,渲染效率是最快的,如粒子系统一般用D3DPOOL_DEFAULT


2. D3DPOOL_MANAGED

    由D3D托管的资源,位于 RAM(系统内存)中, 由于是托管的,当设备丢失时,D3D会自动帮你恢复资源,无需自己手动恢复。

    但是渲染时,需要从 系统内存 中 拷贝数据到显存中,效率没有D3DPOOL_DEFAULT高,但是D3D会有优化,也算是一种折中的存储方案


3. 其它D3DPOOL_SYSTEMMEM、D3DPOOL_SCRATCH由于用得不是很多,想了解的朋友可以自行查询DX官方文档


你可能感兴趣的:(优化,存储,文档,buffer)