<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!DOCTYPE RENDER_MONKEY [ <!ELEMENT RENDER_MONKEY ( RmEffectWorkspace | RmRegistryBranch | RmClipboardNode )?> <!ELEMENT RmEffectWorkspace ( RmRegistryBranch?, RmPlugInData?, RmStringVariable*, ( ( RmDirectXEffect, RmOpenGLEffect?, RmOpenGLESEffect? ) | ( RmOpenGLEffect, RmDirectXEffect?, RmOpenGLESEffect? ) | ( RmOpenGLESEffect, RmDirectXEffect?, RmOpenGLEffect? ) )?, ( RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRenderableTexture | RmStreamMap | RmModelData | RmEffectGroup )* )> <!ELEMENT RmEffectGroup ( RmPlugInData?, ( RmStringVariable | RmDirectXEffect | RmOpenGLEffect | RmOpenGLESEffect | RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRenderableTexture | RmStreamMap | RmModelData )* )> <!ELEMENT RmDirectXEffect ( RmPlugInData?, ( RmStringVariable | RmCamera | RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRenderableTexture | RmStreamMap | RmModelData | RmPass )* )> <!ELEMENT RmOpenGLEffect ( RmPlugInData?, ( RmStringVariable | RmCamera | RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRenderableTexture | RmStreamMap | RmModelData | RmGLPass )* )> <!ELEMENT RmOpenGLESEffect ( RmPlugInData?, ( RmStringVariable | RmCamera | RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRenderableTexture | RmStreamMap | RmModelData | RmGLESPass )* )> <!ELEMENT RmPass ( RmPlugInData?, RmStringVariable*, RmCameraReference?, RmModelReference?, RmRenderStateBlock?, ( ( ( RmHLSLShader | RmShader ), ( RmShader | RmHLSLShader )? ) )?, RmRenderTarget*, RmStreamMapReference?, ( RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmTextureObject | RmLightObject | RmMaterialObject )* )> <!ELEMENT RmGLPass ( RmPlugInData?, RmStringVariable*, RmCameraReference?, RmModelReference?, RmRenderStateBlock?, ( ( RmGLShader, RmGLShader? ) )?, RmRenderTarget?, RmStreamMapReference?, ( RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmTextureObject | RmLightObject | RmMaterialObject | RmShaderConstant | RmSampler )* )> <!ELEMENT RmGLESPass ( RmPlugInData?, RmStringVariable*, RmCameraReference?, RmModelReference?, RmRenderStateBlock?, ( ( RmGLESShader, RmGLESShader? ) )?, RmRenderTarget?, RmStreamMapReference?, ( RmBooleanVariable | RmIntegerVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmColorVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmTextureObject | RmLightObject | RmMaterialObject | RmShaderConstant | RmSampler )* )> <!ELEMENT RmShader ( RmShaderCode, RmPlugInData?, ( RmStringVariable | RmShaderConstant )* )> <!ELEMENT RmHLSLShader ( RmShaderCode, RmPlugInData?, ( RmStringVariable | RmShaderConstant | RmSampler )* )> <!ELEMENT RmGLShader ( RmShaderCode, RmPlugInData?, ( RmStringVariable )* )> <!ELEMENT RmGLESShader ( RmShaderCode, RmPlugInData?, ( RmStringVariable )* )> <!ELEMENT RmTextureObject ( RmPlugInData?, RmStringVariable*, RmTextureReference?, RmState* )> <!ELEMENT RmLightObject ( RmPlugInData?, RmStringVariable*, RmLightReference? )> <!ELEMENT RmMaterialObject ( RmPlugInData?, RmStringVariable*, RmMaterialReference? )> <!ELEMENT RmRenderStateBlock ( RmPlugInData?, ( RmStringVariable | RmState )* )> <!ELEMENT RmStreamMap ( RmPlugInData?, ( RmStringVariable | RmStream )* )> <!ELEMENT RmStream ( RmPlugInData?, RmStreamChannel* )> <!ELEMENT RmModelData ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmTextureReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmLightReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmMaterialReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmCameraReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmModelReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmStreamMapReference ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmRenderableTexture ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmRenderTarget ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmBooleanVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmFloatVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmVectorVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmMatrixVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmColorVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmIntegerVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT Rm2DTextureVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmCubemapVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT Rm3DTextureVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmLightVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmMaterialVariable ( RmPlugInData?, RmStringVariable? )> <!ELEMENT RmCamera ( RmPlugInData?, RmStringVariable* )> <!ELEMENT RmStringVariable ( RmTextDataBlock, RmPlugInData? )> <!ELEMENT RmDynamicVariable ( RmDynamicVariableValueContainer, RmPlugInData?, RmStringVariable? )> <!ELEMENT RmDynamicVariableValueContainer ( RmPlugInData?, RmDynamicVariableValue* )> <!ELEMENT RmTextDataBlock ( #PCDATA ) > <!ELEMENT RmRegistryBranch ( RmTextDataBlock?, ( RmRegistryBranch | RmStringVariable | RmIntegerVariable | RmBooleanVariable | RmFloatVariable )* )> <!ELEMENT RmPlugInData ( RmTextDataBlock?, ( RmStringVariable | RmIntegerVariable | RmBooleanVariable | RmFloatVariable | RmVectorVariable )* )> <!ELEMENT RmClipboardNode ( RmTextDataBlock?, ( RmEffectWorkspace | RmEffectGroup | RmDirectXEffect | RmOpenGLEffect | RmOpenGLESEffect | RmPass | RmGLPass | RmGLESPass | RmShader | RmHLSLShader | RmGLShader | RmGLESShader | RmShaderConstant | RmSampler | RmTextureObject | RmLightObject | RmMaterialObject | RmRenderStateBlock | RmState | RmStreamMap | RmStream | RmStreamChannel | RmModelData | RmTextureReference | RmLightReference | RmMaterialReference | RmModelReference | RmStreamMapReference | RmRenderableTexture | RmRenderTarget | RmBooleanVariable | RmFloatVariable | RmVectorVariable | RmMatrixVariable | RmDynamicVariable | RmDynamicVariableValue | RmColorVariable | RmIntegerVariable | RmStringVariable | Rm2DTextureVariable | RmCubemapVariable | Rm3DTextureVariable | RmLightVariable | RmMaterialVariable | RmRegistryBranch | RmPlugInData | RmCamera | RmCameraReference )* )> <!ELEMENT RmStreamChannel ( RmPlugInData? ) > <!ELEMENT RmShaderConstant ( RmPlugInData? ) > <!ELEMENT RmSampler ( RmPlugInData? ) > <!ELEMENT RmState ( RmPlugInData? ) > <!ELEMENT RmDynamicVariableValue ( RmPlugInData? ) > <!ELEMENT RmShaderCode ( #PCDATA ) > <!ATTLIST RmEffectWorkspace NAME CDATA #REQUIRED API CDATA #REQUIRED ACTIVE_EFFECT CDATA #REQUIRED VALIDATION_STRING CDATA #REQUIRED XML_VERSION CDATA #REQUIRED > <!ATTLIST RmEffectGroup NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmDirectXEffect NAME CDATA #REQUIRED API CDATA #REQUIRED ACTIVE_CAMERA CDATA #REQUIRED > <!ATTLIST RmOpenGLEffect NAME CDATA #REQUIRED API CDATA #REQUIRED ACTIVE_CAMERA CDATA #REQUIRED > <!ATTLIST RmOpenGLESEffect NAME CDATA #REQUIRED API CDATA #REQUIRED ACTIVE_CAMERA CDATA #REQUIRED > <!ATTLIST RmPass NAME CDATA #REQUIRED API CDATA #REQUIRED PASS_INDEX CDATA #REQUIRED ENABLED ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmGLPass NAME CDATA #REQUIRED API CDATA #REQUIRED PASS_INDEX CDATA #REQUIRED ENABLED ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmGLESPass NAME CDATA #REQUIRED API CDATA #REQUIRED PASS_INDEX CDATA #REQUIRED ENABLED ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmShader NAME CDATA #REQUIRED API CDATA #REQUIRED PIXEL_SHADER CDATA #REQUIRED > <!ATTLIST RmHLSLShader NAME CDATA #REQUIRED API CDATA #REQUIRED PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED TARGET CDATA #REQUIRED ENTRY_POINT CDATA #REQUIRED COMPILER_FLAGS CDATA #REQUIRED > <!ATTLIST RmGLShader NAME CDATA #REQUIRED API CDATA #REQUIRED PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmGLESShader NAME CDATA #REQUIRED API CDATA #REQUIRED PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmShaderConstant NAME CDATA #REQUIRED API CDATA #REQUIRED REGISTER CDATA #REQUIRED > <!ATTLIST RmSampler NAME CDATA #REQUIRED API CDATA #REQUIRED REGISTER CDATA #REQUIRED > <!ATTLIST RmTextureObject NAME CDATA #REQUIRED API CDATA #REQUIRED STATE_INDEX CDATA #REQUIRED VERTEX_TEXTURE ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmLightObject NAME CDATA #REQUIRED API CDATA #REQUIRED INDEX CDATA #REQUIRED > <!ATTLIST RmMaterialObject NAME CDATA #REQUIRED API CDATA #REQUIRED INDEX CDATA #REQUIRED > <!ATTLIST RmRenderStateBlock NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmState NAME CDATA #REQUIRED API CDATA #REQUIRED STATE CDATA #REQUIRED VALUE CDATA #REQUIRED USAGE CDATA #REQUIRED > <!ATTLIST RmStreamMap NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmStream NAME CDATA #REQUIRED API CDATA #REQUIRED STRIDE CDATA #REQUIRED > <!ATTLIST RmStreamChannel NAME CDATA #REQUIRED API CDATA #REQUIRED DATA_SIZE CDATA #REQUIRED DATA_TYPE CDATA #REQUIRED REGISTER CDATA #REQUIRED USAGE CDATA #REQUIRED USAGE_INDEX CDATA #REQUIRED ATTRIBUTE_NAME CDATA #REQUIRED > <!ATTLIST RmModelData NAME CDATA #REQUIRED API CDATA #REQUIRED FILE_NAME CDATA #REQUIRED ORIENTATION CDATA #REQUIRED > <!ATTLIST RmTextureReference NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmLightReference NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmMaterialReference NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmModelReference NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmStreamMapReference NAME CDATA #REQUIRED API CDATA #REQUIRED > <!ATTLIST RmRenderableTexture NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED FILE_NAME CDATA #REQUIRED ORIGIN CDATA #REQUIRED WIDTH CDATA #REQUIRED HEIGHT CDATA #REQUIRED FORMAT CDATA #REQUIRED USE_VIEWPORT_DIMENSIONS ( TRUE | FALSE ) #REQUIRED GENERATE_MIPMAPS ( TRUE | FALSE ) #REQUIRED WIDTH_RATIO CDATA #REQUIRED HEIGHT_RATIO CDATA #REQUIRED > <!ATTLIST RmRenderTarget NAME CDATA #REQUIRED API CDATA #REQUIRED INDEX CDATA #REQUIRED RENDER_TO_SCREEN ( TRUE | FALSE ) #REQUIRED COLOR_CLEAR ( TRUE | FALSE ) #REQUIRED DEPTH_CLEAR ( TRUE | FALSE ) #REQUIRED CLEAR_COLOR_VALUE CDATA #REQUIRED DEPTH_CLEAR_VALUE CDATA #REQUIRED > <!ATTLIST RmBooleanVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE CDATA #REQUIRED > <!ATTLIST RmFloatVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE CDATA #REQUIRED MIN CDATA #REQUIRED MAX CDATA #REQUIRED CLAMP ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmVectorVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE_0 CDATA #REQUIRED VALUE_1 CDATA #REQUIRED VALUE_2 CDATA #REQUIRED VALUE_3 CDATA #REQUIRED MIN CDATA #REQUIRED MAX CDATA #REQUIRED CLAMP ( TRUE | FALSE ) #REQUIRED NORMALIZE ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmMatrixVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE_0 CDATA #REQUIRED VALUE_1 CDATA #REQUIRED VALUE_2 CDATA #REQUIRED VALUE_3 CDATA #REQUIRED VALUE_4 CDATA #REQUIRED VALUE_5 CDATA #REQUIRED VALUE_6 CDATA #REQUIRED VALUE_7 CDATA #REQUIRED VALUE_8 CDATA #REQUIRED VALUE_9 CDATA #REQUIRED VALUE_10 CDATA #REQUIRED VALUE_11 CDATA #REQUIRED VALUE_12 CDATA #REQUIRED VALUE_13 CDATA #REQUIRED VALUE_14 CDATA #REQUIRED VALUE_15 CDATA #REQUIRED > <!ATTLIST RmDynamicVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VARIABLE_TYPE ( FLOAT | INTEGER | BOOLEAN ) #REQUIRED ROWS CDATA #REQUIRED COLUMNS CDATA #REQUIRED FIXED_SIZE ( TRUE | FALSE ) #REQUIRED MIN CDATA #REQUIRED MAX CDATA #REQUIRED CLAMP ( TRUE | FALSE ) #REQUIRED NORMALIZE ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmDynamicVariableValue ROW_INDEX CDATA #REQUIRED COLUMN_INDEX CDATA #REQUIRED VALUE CDATA #REQUIRED > <!ATTLIST RmColorVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE_0 CDATA #REQUIRED VALUE_1 CDATA #REQUIRED VALUE_2 CDATA #REQUIRED VALUE_3 CDATA #REQUIRED > <!ATTLIST RmIntegerVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED VALUE CDATA #REQUIRED MIN CDATA #REQUIRED MAX CDATA #REQUIRED CLAMP ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmStringVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED > <!ATTLIST Rm2DTextureVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED FILE_NAME CDATA #REQUIRED ORIGIN CDATA #REQUIRED > <!ATTLIST RmCubemapVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED FILE_NAME CDATA #REQUIRED ORIGIN CDATA #REQUIRED > <!ATTLIST Rm3DTextureVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED FILE_NAME CDATA #REQUIRED ORIGIN CDATA #REQUIRED > <!ATTLIST RmLightVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED LIGHT_ENABLED ( TRUE | FALSE ) #REQUIRED LIGHT_TYPE ( POSITIONAL | DIRECTIONAL | SPOTLIGHT ) #REQUIRED AMBIENT_0 CDATA #REQUIRED AMBIENT_1 CDATA #REQUIRED AMBIENT_2 CDATA #REQUIRED AMBIENT_3 CDATA #REQUIRED DIFFUSE_0 CDATA #REQUIRED DIFFUSE_1 CDATA #REQUIRED DIFFUSE_2 CDATA #REQUIRED DIFFUSE_3 CDATA #REQUIRED SPECULAR_0 CDATA #REQUIRED SPECULAR_1 CDATA #REQUIRED SPECULAR_2 CDATA #REQUIRED SPECULAR_3 CDATA #REQUIRED POSITION_0 CDATA #REQUIRED POSITION_1 CDATA #REQUIRED POSITION_2 CDATA #REQUIRED DIRECTION_0 CDATA #REQUIRED DIRECTION_1 CDATA #REQUIRED DIRECTION_2 CDATA #REQUIRED ATTENUATION_0 CDATA #REQUIRED ATTENUATION_1 CDATA #REQUIRED ATTENUATION_2 CDATA #REQUIRED SPOTLIGHT_THETA CDATA #REQUIRED SPOTLIGHT_PHI CDATA #REQUIRED RANGE CDATA #REQUIRED FALLOFF CDATA #REQUIRED > <!ATTLIST RmMaterialVariable NAME CDATA #REQUIRED API CDATA #REQUIRED ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED VARIABLE_SEMANTIC CDATA #REQUIRED AMBIENT_0 CDATA #REQUIRED AMBIENT_1 CDATA #REQUIRED AMBIENT_2 CDATA #REQUIRED AMBIENT_3 CDATA #REQUIRED DIFFUSE_0 CDATA #REQUIRED DIFFUSE_1 CDATA #REQUIRED DIFFUSE_2 CDATA #REQUIRED DIFFUSE_3 CDATA #REQUIRED SPECULAR_0 CDATA #REQUIRED SPECULAR_1 CDATA #REQUIRED SPECULAR_2 CDATA #REQUIRED SPECULAR_3 CDATA #REQUIRED EMISSIVE_0 CDATA #REQUIRED EMISSIVE_1 CDATA #REQUIRED EMISSIVE_2 CDATA #REQUIRED EMISSIVE_3 CDATA #REQUIRED SPECULAR_POWER CDATA #REQUIRED > <!ATTLIST RmRegistryBranch NAME CDATA #REQUIRED API CDATA #REQUIRED XML_VERSION CDATA #REQUIRED > <!ATTLIST RmPlugInData NAME CDATA #REQUIRED API CDATA #REQUIRED PLUGIN_GUID CDATA #REQUIRED > <!ATTLIST RmClipboardNode NAME CDATA #REQUIRED API CDATA #REQUIRED XML_VERSION CDATA #REQUIRED > <!ATTLIST RmCamera NAME CDATA #REQUIRED API CDATA #REQUIRED CAMERA_POSITION_X CDATA #REQUIRED CAMERA_POSITION_Y CDATA #REQUIRED CAMERA_POSITION_Z CDATA #REQUIRED LOOK_AT_VECTOR_X CDATA #REQUIRED LOOK_AT_VECTOR_Y CDATA #REQUIRED LOOK_AT_VECTOR_Z CDATA #REQUIRED UP_VECTOR_X CDATA #REQUIRED UP_VECTOR_Y CDATA #REQUIRED UP_VECTOR_Z CDATA #REQUIRED FOV CDATA #REQUIRED NEAR_CLIP_PLANE CDATA #REQUIRED FAR_CLIP_PLANE CDATA #REQUIRED > <!ATTLIST RmCameraReference NAME CDATA #REQUIRED API CDATA #REQUIRED USE_ACTIVE_CAMERA ( TRUE | FALSE ) #REQUIRED > <!ATTLIST RmShaderCode TYPE ( TEXT ) #REQUIRED > <!ATTLIST RmTextDataBlock TYPE ( TEXT ) #REQUIRED > ]> <RENDER_MONKEY> <RmEffectWorkspace NAME="Effect Workspace" API="" ACTIVE_EFFECT="Effect Workspace.Position" VALIDATION_STRING="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="RM_REGISTRY" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="RM_LOCAL" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="RM_PLUGIN" API="" XML_VERSION="RenderMonkey 1.71"><RmTextDataBlock TYPE="TEXT"><![CDATA[ <DockingPaneLayouts><Application_Layout><Pane-1><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Artist Editor</Title><ID>1001</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>7</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>7</LastHolder></Pane-1><Pane-2><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>0</Horiz><Pane-1>3</Pane-1><Pane-2>8</Pane-2><Panes>2</Panes></Pane-2><Pane-3><Type>2</Type><DockingCX>0</DockingCX><DockingCY>808</DockingCY><Horiz>1</Horiz><Pane-1>4</Pane-1><Pane-2>6</Pane-2><Pane-3>7</Pane-3><Panes>3</Panes></Pane-3><Pane-4><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>5</Selected><Panes>1</Panes><Pane-1>5</Pane-1></Pane-4><Pane-5><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Workspace</Title><ID>1000</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>4</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>4</LastHolder></Pane-5><Pane-6><Type>4</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY></Pane-6><Pane-7><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-7><Pane-8><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>9</Selected><Panes>1</Panes><Pane-1>9</Pane-1></Pane-8><Pane-9><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Output</Title><ID>1002</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>8</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>8</LastHolder></Pane-9><Summary><TopContainer>2</TopContainer><Client>6</Client><Panes>9</Panes></Summary></Application_Layout></DockingPaneLayouts> ]]></RmTextDataBlock> <RmRegistryBranch NAME="RmRenderStateBlockEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position" API="" XML_VERSION="RenderMonkey 1.71"> <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="54" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="70" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1283" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="434" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="RmStreamEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position.Stream Mapping" API="" XML_VERSION="RenderMonkey 1.71"> <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="459" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="323" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="851" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="270" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="RmPreviewGLWindow" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EffectPlacementRepository" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position" API="" XML_VERSION="RenderMonkey 1.71"> <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="350" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="350" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> </RmRegistryBranch> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="RmColorEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position.u_color1" API="" XML_VERSION="RenderMonkey 1.71"> <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1100" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmBooleanVariable NAME="FloatingPoint" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="FALSE"/> <RmIntegerVariable NAME="ColorType" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmBooleanVariable NAME="LargeSize" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="TRUE"/> </RmRegistryBranch> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="RmDynamicVariableEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position.u_frequency" API="" XML_VERSION="RenderMonkey 1.71"> <RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1101" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmBooleanVariable NAME="ShowSetup" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="TRUE"/> </RmRegistryBranch> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="RmPreviewDx9Window" API="" XML_VERSION="RenderMonkey 1.71"/> <RmRegistryBranch NAME="RmPreviewGLESWindow" API="" XML_VERSION="RenderMonkey 1.71"/> <RmRegistryBranch NAME="RmPreviewGLPreview" API="" XML_VERSION="RenderMonkey 1.71"/> <RmRegistryBranch NAME="RmLightEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="NoteEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="RmRenderableTextureEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="RmRenderTargetEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="RmShaderEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Effect Workspace.Position" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="Disassembly" API="" XML_VERSION="RenderMonkey 1.71"/> <RmStringVariable NAME="Editing Shader" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ Fragment Program]]></RmTextDataBlock></RmStringVariable> <RmStringVariable NAME="Editing Pass" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ Pass 0]]></RmTextDataBlock></RmStringVariable> <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="967" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="718" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="RmTextureObjectEditor" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> <RmRegistryBranch NAME="RmTextureGenerator" API="" XML_VERSION="RenderMonkey 1.71"> <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> </RmRegistryBranch> </RmRegistryBranch> <RmRegistryBranch NAME="WORKSPACE" API="" XML_VERSION="RenderMonkey 1.71"> <RmStringVariable NAME="LAST_SAVE" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ 20/1/2008 22:54:49]]></RmTextDataBlock></RmStringVariable> <RmStringVariable NAME="VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ RenderMonkey Version 1.71 (build 59)]]></RmTextDataBlock></RmStringVariable> <RmStringVariable NAME="XML_VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ RenderMonkey 1.71]]></RmTextDataBlock></RmStringVariable> <RmStringVariable NAME="BASE_WORKSPACE_PATH" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ C:\book\ogles\Code\Chapter_13\ProceduralTextures\]]></RmTextDataBlock></RmStringVariable> </RmRegistryBranch> </RmRegistryBranch> </RmRegistryBranch> <RmOpenGLESEffect NAME="Position" API="OpenGL ES" ACTIVE_CAMERA="Camera"> <RmCamera NAME="Camera" API="" CAMERA_POSITION_X="1.482474" CAMERA_POSITION_Y="-1.227030" CAMERA_POSITION_Z="-2.968942" LOOK_AT_VECTOR_X="0.001000" LOOK_AT_VECTOR_Y="0.001000" LOOK_AT_VECTOR_Z="0.001000" UP_VECTOR_X="-0.087063" UP_VECTOR_Y="0.904525" UP_VECTOR_Z="-0.417437" FOV="45.000000" NEAR_CLIP_PLANE="1.207107" FAR_CLIP_PLANE="23.414213"/> <RmDynamicVariable NAME="u_frequency" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="INTEGER" ROWS="1" COLUMNS="1" FIXED_SIZE="TRUE" MIN="-100" MAX="100" CLAMP="FALSE" NORMALIZE="FALSE"> <RmDynamicVariableValueContainer> <RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="6"/> </RmDynamicVariableValueContainer> </RmDynamicVariable> <RmMatrixVariable NAME="u_mvpMatrix" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewProjection" VALUE_0="-2.014508" VALUE_1="-0.552268" VALUE_2="-0.776526" VALUE_3="0.003343" VALUE_4="-0.210189" VALUE_5="2.183717" VALUE_6="-1.007783" VALUE_7="-0.000962" VALUE_8="-0.441388" VALUE_9="0.365878" VALUE_10="0.884861" VALUE_11="2.457668" VALUE_12="-0.418633" VALUE_13="0.347015" VALUE_14="0.839242" VALUE_15="3.538071"/> <RmColorVariable NAME="u_color1" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.000000" VALUE_1="0.000000" VALUE_2="0.000000" VALUE_3="1.000000"/> <RmColorVariable NAME="u_color0" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="1.000000" VALUE_1="1.000000" VALUE_2="1.000000" VALUE_3="1.000000"/> <RmStreamMap NAME="Stream Mapping" API=""> <RmStream NAME="Stream" API="" STRIDE="20"> <RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0" ATTRIBUTE_NAME="a_position"/> <RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0" ATTRIBUTE_NAME="a_st"/> </RmStream> </RmStreamMap> <RmModelData NAME="Model" API="" FILE_NAME=".\ScreenAlignedQuad.3ds" ORIENTATION="0"/> <RmGLESPass NAME="Pass 0" API="OpenGL ES" PASS_INDEX="0" ENABLED="TRUE"> <RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/> <RmModelReference NAME="Model" API=""/> <RmRenderStateBlock NAME="Render State" API="OpenGL ES"> <RmState NAME="GL_CullMode" API="OpenGL ES" STATE="8" VALUE="1" USAGE="RENDER_STATE"/> </RmRenderStateBlock> <RmGLESShader NAME="Vertex Program" API="OpenGL ES" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[ uniform mat4 u_mvpMatrix; attribute vec4 a_position; attribute vec2 a_st; varying vec2 v_st; void main() { v_st = a_st; gl_Position = u_mvpMatrix * a_position; } ]]></RmShaderCode></RmGLESShader> <RmGLESShader NAME="Fragment Program" API="OpenGL ES" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[ #extension GL_OES_standard_derivatives:enable precision highp float; uniform int u_frequency; uniform vec4 u_color0; uniform vec4 u_color1; varying vec2 v_st; void main() { float s, t, delta; s = mod(floor(v_st.x * float(u_frequency * 2)), 2.0); t = mod(floor(v_st.y * float(u_frequency * 2)), 2.0); delta = abs(s - t); gl_FragColor = mix(u_color1, u_color0, delta); } ]]></RmShaderCode></RmGLESShader> <RmStreamMapReference NAME="Stream Mapping" API=""/> <RmShaderConstant NAME="u_color0" API="" REGISTER="-1"/> <RmShaderConstant NAME="u_color1" API="" REGISTER="-1"/> <RmShaderConstant NAME="u_frequency" API="" REGISTER="-1"/> <RmShaderConstant NAME="u_mvpMatrix" API="" REGISTER="-1"/> </RmGLESPass> </RmOpenGLESEffect> </RmEffectWorkspace> </RENDER_MONKEY>