diff --git a/panda/src/dxgsg9/dxGraphicsStateGuardian9.cxx b/panda/src/dxgsg9/dxGraphicsStateGuardian9.cxx index 7eabe534c1..5350d1794c 100755 --- a/panda/src/dxgsg9/dxGraphicsStateGuardian9.cxx +++ b/panda/src/dxgsg9/dxGraphicsStateGuardian9.cxx @@ -2181,6 +2181,7 @@ bool vertex_buffer_page_in_function (LruPage *lru_page) // update vertex buffer vertex_buffer -> upload_data ( ); + vertex_buffer -> set_resident(true); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { @@ -2196,6 +2197,7 @@ bool vertex_buffer_page_out_function (LruPage *lru_page) vertex_buffer = (DXVertexBufferContext9 *) lru_page -> _m.lru_page_type.pointer; vertex_buffer -> free_vbuffer ( ); + vertex_buffer -> set_resident(false); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { @@ -2218,6 +2220,7 @@ bool index_buffer_page_in_function (LruPage *lru_page) // update vertex buffer index_buffer -> upload_data ( ); + index_buffer -> set_resident(true); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { @@ -2233,6 +2236,7 @@ bool index_buffer_page_out_function (LruPage *lru_page) index_buffer = (DXIndexBufferContext9 *) lru_page -> _m.lru_page_type.pointer; index_buffer -> free_ibuffer ( ); + index_buffer -> set_resident(false); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { @@ -2251,6 +2255,7 @@ bool texture_page_in_function (LruPage *lru_page) texture = (DXTextureContext9 *) lru_page -> _m.lru_page_type.pointer; texture -> create_texture (*(gsg->_screen)); + texture -> set_resident(true); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { @@ -2266,6 +2271,7 @@ bool texture_page_out_function (LruPage *lru_page) texture = (DXTextureContext9 *) lru_page -> _m.lru_page_type.pointer; texture -> delete_texture ( ); + texture -> set_resident(false); if (DEBUG_LRU && dxgsg9_cat.is_debug()) { diff --git a/panda/src/dxgsg9/dxTextureContext9.cxx b/panda/src/dxgsg9/dxTextureContext9.cxx index c3387d8363..3f071de549 100755 --- a/panda/src/dxgsg9/dxTextureContext9.cxx +++ b/panda/src/dxgsg9/dxTextureContext9.cxx @@ -755,6 +755,7 @@ create_texture(DXScreenData &scrn) { { data_size *= 6; } + update_data_size_bytes(data_size); int attempts;