PRB: D3D Progressive Meshes Do Not Support Textures with Alpha

ID: Q196382

The information in this article applies to:

SYMPTOMS

The code that handles textures on a progressive mesh in Direct3D Retained Mode for DirectX 6.0 contains a bug. When a texture is loaded, the ALPHABLEND renderstate is not set correctly if the texture contains alpha channel data. As a result, no alpha data is in the texture on the progressive mesh.

RESOLUTION

Use the CreateMesh() method to create a mesh from the progressive mesh each time the level of detail (LOD) is changed. The meshes created this way can correctly handle the alpha information. However, this solution negatively impacts performance, especially if the application needs to make many changes to the LOD. Therefore, it is not suited for all applications.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.

Additional query words:

Keywords          : kbDirect3dRM kbDirectX600 
Hardware          : x86
Issue type        : kbprb
Solution Type     : kbnofix

Last Reviewed: December 1, 1998