Porting WW: Needed Functionality

From World Wind Wiki

Jump to: navigation, search

[edit] Needed Functionality

This currently is an mostly complete list of the Microsoft.DirectX functionality within WorldWind. You can view the current status here Porting_WW:_Current_DirectX. This list needs to analyzed and trimmed to the minimum before selecting a 3D engine.

  1. Caps - Represents the capabilities of the hardware exposed through the Microsoft Direct3D object.
  2. CustomVertex
    • CustomVertex.PositionColored[] - custom vertex format structure that contains postion and color information
    • CustomVertex.TransformedColored[] - custom vertex format structure that contains transformed vertices and color information
  3. Device - provides access to devices, properties, set behavior, perform initialization, etc.
    • BeginScene - Begins a scene.
    • Clear - Clears the viewport or a set of rectangles in the viewport to a specified RGBA color, clears the depth buffer, and erases the stencil buffer.
    • DeviceCaps – Retrieves the capabilities of the rendering device [where used?]
      • MaxTextureHeight – Retrieves the maximum texture height for the current device.
      • SupportsHardwareTransformAndLight -
    • DeviceLost - Occurs when a device is about to be lost (for example, immediately prior to a reset).
    • DeviceReset - Occurs after a device is reset, allowing an application to re-create all Pool.Default resources.
    • DeviceResizing - Occurs when a device is resizing, allowing the application to cancel the default handling of the resize.
    • EndScene - Ends a scene that was started by calling the Device.BeginScene method.
    • Lights - Retrieves the LightsCollection collection on the current device.
    • Present - Presents the display with the contents of the next buffer in the sequence of back buffers owned by the device
    • RenderState - Retrieves a render-state value for a device.
    • Reset - Resets the presentation parameters for the current device.
    • SamplerState - Retrieves a device's sampler states.
    • SetTexture - Assigns a texture to a device stage.
    • TestCooperativeLevel - Reports the current cooperative-level status of the Direct3D device for a windowed or full-screen application.
    • TextureState - Retrieves a state value for an assigned texture.
    • Transform - Retrieves a matrix that describes a transformation state.
      • Projection
      • View
      • World
    • VertexFormat - Retrieves or sets the supported flexible vertex formats.
    • Viewport - Retrieves or sets the viewport parameters for the current device.
      • Height
      • Width
  4. DeviceType - Specifies a device type.
    • Hardware
    • Reference
  5. Font - Encapsulates the textures and resources needed to render a specific font on a specific device.
    • DrawText – draws formatted text
  6. FontDescription - Defines the attributes of a font.
    • FaceName - Retrieves or sets the name of the font.
    • Height - Retrieves or sets the height of the font in logical units
    • IsItalic - Determines whether a font is italic.
    • Quality - Retrieves or sets the output quality of a font.
    • Weight - Retrieves or sets the weight of a font.
  7. Format - Defines various types of surface formats.
    • Dxt3 - DXT3 compression texture format.
  8. ImageFileFormat - Defines the supported image file formats.
  9. Line - Implements line drawing using textured triangles.
    • Begin - Prepares a device to draw lines.
    • Draw - Draws a line strip in screen space. Input is in the form of an array that defines points (of Vector2) on the line strip.
    • End - Restores the device to the state it was in when Line.Begin was called.
  10. Manager - Provides information about the environment, and enumerates and retrieves device capabilities.
    • GetDeviceCaps - Retrieves information specific to a device.
  11. Matrix – describes and manipulates a matrix
    • LookAtRH - Builds a right-handed look-at matrix.
    • Multiply - Determines the product of two matrices.
    • PerspectiveFovRH - Builds a right-handed perspective projection matrix based on a field of view (FOV).
    • RotationAxis – Builds a matrix that rotates around an arbitrary axis
    • RotationYawPitchRoll - Builds a matrix with a specified yaw, pitch, and roll.
    • RotationZ - Builds a matrix that rotates around the z-axis.
    • Translation - Builds a matrix using specified offsets.
  12. Quaternion - describes and manipulates a quaternion
    • RotationAxis - Builds a quaternion that is rotated around an arbitrary axis.
    • RotationYawPitchRoll - Builds a quaternion with the given yaw, pitch, and roll.
  13. Plane – describes and manipulates a plane
    • Normalize – returns the normal of a plane
  14. PresentParameters - Describes the presentation parameters.
    • AutoDepthStencilFormat - Retrieves or sets the DepthFormat of the depth stencil surface the device creates.
    • BackBufferHeight - Retrieves or sets the height of a swap chain's back buffers, in pixels.
    • BackBufferWidth - Retrieves or sets the width of a swap chain's back buffers, in pixels.
    • EnableAutoDepthStencil - Retrieves or sets a Boolean value that indicates whether Microsoft Direct3D manages depth buffers for an application.
    • PresentationInterval - Retrieves or sets the maximum rate at which the swap chain's back buffers can be presented.
    • SwapEffect - Retrieves or sets the swap effect.
    • Windowed - Boolean value that indicates whether an application is running in a windowed mode.
  15. Sprite – provides methods and properties to simplify the drawing of sprites
    • Begin - Prepares a device for drawing sprites.
    • Dispose - Immediately releases the unmanaged resources used by the Sprite object.
    • Draw - Adds a sprite to the list of batched sprites.
    • End - Restores the device to the state it was in before Sprite.Begin was called.
    • Transform - Retrieves or sets a Matrix object.
  16. Surface – queries and prepares surfaces
    • Description – description of a surface
  17. SurfaceDescription – describes a surface
    • Height
    • Width
  18. Texture
    • GetLevelDescription – retrieves a level description of a texture
    • GetSurfaceLevel – retrieves the specified texture surface level
    • LockRectangle – locks a rectangle on a texture resource
    • TextureLoader.FromFile – Creates a texture from a file
    • TextureLoader.FromStream – creates a texture from a file in memory
    • UnlockRectangle – unlocks a rectangle on a texture resource
    • Filter [enum] – defines texture filtering modes for a texture stage
    • LockFlags [enum] – defines the type of lock to perform
    • Pool [enum] – Memory class that holds buffers for a resource
  19. Vector2 - Describes and manipulates a vector in two-dimensional (2-D) space.
  20. Vector3 – Describes and manipulates a vector in three-dimensional (3-D) space.
    • Cross – Determines the cross product of two 3-D vectors
    • Dot - Determines the dot product of two 3-D vectors
    • LengthSq – Returns the square of the length of a 3-D vector
    • Normalize – returns the normalized version of a 3-D vector
    • Project – Projects a vector from object space into screen space.Scale - Scales a 3-D vector
    • Subtract - Subtracts two 3-D vectors
    • TransformCoordinate – Transforms a 3-D vector or an array of 3-D vectors by a given matrix, projecting the result back into w = 1.
    • Unproject - Projects a vector from screen space into object space.
  21. ViewPort - Retrieves or sets the viewport parameters for the current device.
    • MaxZ
    • MinZ
Personal tools