michael-fadely / d3d8to11

Run DirectX 8 programs in DirectX 11
MIT License
24 stars 8 forks source link

Make all subsequent mip levels available from Direct3DTexture8::LockRect #2

Closed michael-fadely closed 4 years ago

michael-fadely commented 4 years ago

In Direct3D 8 and 9, a pointer to a contiguous buffer is provided when a level is locked. This contiguous buffer is encompassing of all the mipmap levels including the level asked for, and all the levels to follow.

Some games, such as Phantasy Star Online: Blue Burst exploit this to populate all mipmap levels simultaneously.

There is a branch called lock-rect-all-mips which is experimenting with a fix.