3.2.5.13.1 MILCMD_RENDERDATA

The server SHOULD build a render data instruction buffer for a TYPE_RENDERDATA resource with the following drawing instructions:

MILCMD_DRAW_BITMAP: Draws the specified hBitmap resource at its native size.

MILCMD_DRAW_GLASS: Executes a Gaussian blur effect of the existing render target pixels in the areas specified by the four geometry resources.

MILCMD_DRAW_MESH2D: Draws the mesh geometry specified by the hMesh parameter by using hImageSource as the source texture.

MILCMD_DRAW_VISUAL: Draws the visual tree as specified by the hVisual parameter.

MILCMD_DRAW: Fills the rectangle shape specified by the rectangle parameter with the hBrush specified in the command.

MILCMD_DRAW_RECTANGLE: Fills the shape specified by the hRectangleAnimations resource. If hRectangleAnimations is null, then the shape will be specified by the rectangle parameter. The rectangle shape will be filled with the hBrush specified in the instruction.

MILCMD_DRAW_GEOMETRY: Fills the current shape specified by the hGeometry parameter with the hBrush specified in the instruction.

MILCMD_DRAW_IMAGE: Draws the image specified by the hImageSource parameter into the rectangle specified by the rectangle parameter.

MILCMD_DRAW_IMAGE_ANIMATE: Draws the image specified by the hImageSource parameter into the rectangle shape specified by the hRectangleAnimations resource. If hRectangleAnimations is null, then the shape will be specified by the rectangle parameter.

MILCMD_DRAW_GLYPH_RUN: Draws the glyphs specified in the hGlyphRun resource with the brush specified by the hForegroundBrush parameter.

MILCMD_DRAW_SCENE3D: Draws the 3-D scene as described by the TYPE_SCENE3DhScene3D resource.

MILCMD_PUSH_CLIP: Ensures that all future drawing is clipped by the specified hClipGeometry resource. When the matching MILCMD_POP render data instruction is processed, the drawing will no longer be clipped.

MILCMD_PUSH_OPACITY: Ensures that all future drawing is collected into an intermediate render target resource. When the matching MILCMD_POP render data instruction is processed, the intermediate render target must be blended with a fixed alpha value as specified by the opacity parameter.

MILCMD_PUSH_OPACITY_ANIMATE: Ensures that all future drawing is collected into an intermediate render target resource. When the matching MILCMD_POP render data instruction is processed, the intermediate render target must be blended with a fixed alpha value as specified by the hOpacityAnimations resource. If hOpacityAnimations is null, then the opacity is specified by the opacity parameter.

MILCMD_PUSH_TRANSFORM: Ensures that all future drawing is transformed by the hTransform resource. When the matching MILCMD_POP render data instruction is processed, the drawing will no longer be transformed.

MILCMD_POP: Ends the previous MILCMD_PUSH_CLIP, MILCMD_PUSH_OPACITY, MILCMD_PUSH_OPACITY_ANIMATE, or MILCMD_PUSH_TRANSFORM instruction. The changes to rendering that were affected by the previous push instruction will be undone and all state restored.