Direct3D Mobile Migration (Windows Embedded CE 6.0)

1/6/2010

Microsoft® Direct3D® Mobile has a similar level of support for 3-D graphics operations as Direct3D for Windows CE .NET 4.2, which was derived from Direct3D 8 for Windows-based desktop operating systems.

Migrating Applications from Direct3D for Windows CE .NET 4.2

The following list identifies the general considerations for migrating application code for Direct3D for Windows CE .NET 4.2 to Direct3D Mobile.

  • All programming elements are now renamed for Direct3D Mobile.
  • Direct3D Mobile allows you to use a fixed-point graphics pipeline.

Migrating Drivers from Direct3D for Windows CE .NET 4.2

The following list identifies the general considerations for migrating driver code for Direct3D for Windows CE .NET 4.2 to Direct3D Mobile.

  • The Direct3D Mobile driver model does not allow a driver to reveal differing capabilities based on a particular display mode or pixel format. If a driver claims that it is capable of creating one type of surface format, then it must be able to create that format no matter what the current display mode or format it may be.
  • D3DM_LOCKSURFACE_DATA.Rect can get overloaded so it can handle both 2-D and 1-D surfaces.
  • Direct3D Mobile only supports vertex buffers bound to stream zero. The Direct3D Mobile middleware always assigns the stream value passed to IDirect3DMobileDevice::SetStreamSource to zero.

Migrating from Direct3D 8 for Windows-Based Desktop Systems

Generally speaking, the 3-D graphics functionality of Direct3D Mobile is a subset of the functionality provided by Direct3D 8 for Windows-based desktop systems. The following list identifies the Direct3D 8 functionality that Direct3D Mobile does not support.

  • Bump mapping
  • Cube maps
  • Edge antialiasing
  • Emissive materials
  • Gamma correction
  • Higher-order primitives
  • Line stippling
  • Mirror-once texture wrapping
  • Multisample masking
  • Non-local video memory
  • Phong shading
  • Pixel shaders
  • Point sprites
  • Spot lights
  • State blocks
  • Stereoscopic viewing
  • Switching between hardware-based and software-based vertex processing modes
  • User clip planes
  • Vertex blending and indexed vertex blending
  • Vertex shaders
  • Volume or volume textures

The following list identifies area of functionality in which Direct3D Mobile provides limited support.

  • Depth buffer initialization is only supported through the presentation parameters.
  • Multisample antialiasing is only supported through the presentation parameters.
  • Direct3D Mobile only supports the HAL device.
  • Only a single device can be instantiated at any one time and only the default device type is supported, see D3DMDEVTYPE.
  • Direct3D Mobile only supports a single current vertex and index stream.

See Also

Concepts

Differences Between Direct3D Mobile and Other Versions of Direct3D

Other Resources

Direct3D Mobile