Files
Legacy-Projects/HLSL & GLSL Shaders/Flowing Water (GLSL)/WaterShaders.rfx
T
2014-11-24 18:18:24 +01:00

2029 lines
118 KiB
XML

<?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*,
RmTessellationNode?,
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 RmTessellationNode
(
RmPlugInData?,
RmStringVariable*
)>
<!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
>
<!ATTLIST RmTessellationNode
NAME CDATA #REQUIRED
API CDATA #REQUIRED
MIN_TESSELLATION_LEVEL CDATA #REQUIRED
MAX_TESSELLATION_LEVEL CDATA #REQUIRED
>
]>
<RENDER_MONKEY>
<RmEffectWorkspace NAME="Water Shaders" API="" ACTIVE_EFFECT="Water Shaders.Using Flowmap.Flowmap" 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>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>1</Horiz><Pane-1>2</Pane-1><Pane-2>3</Pane-2><Pane-3>4</Pane-3><Pane-4>5</Pane-4><Pane-5>6</Pane-5><Pane-6>7</Pane-6><Pane-7>8</Pane-7><Pane-8>9</Pane-8><Pane-9>10</Pane-9><Pane-10>11</Pane-10><Pane-11>12</Pane-11><Pane-12>13</Pane-12><Pane-13>14</Pane-13><Panes>13</Panes></Pane-1><Pane-2><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-2><Pane-3><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-3><Pane-4><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-4><Pane-5><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-5><Pane-6><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-6><Pane-7><Type>1</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-7><Pane-8><Type>1</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-8><Pane-9><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-9><Pane-10><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-10><Pane-11><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-11><Pane-12><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-12><Pane-13><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-13><Pane-14><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>0</Horiz><Pane-1>15</Pane-1><Pane-2>21</Pane-2><Panes>2</Panes></Pane-14><Pane-15><Type>2</Type><DockingCX>0</DockingCX><DockingCY>776</DockingCY><Horiz>1</Horiz><Pane-1>16</Pane-1><Pane-2>18</Pane-2><Pane-3>19</Pane-3><Panes>3</Panes></Pane-15><Pane-16><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>17</Selected><Panes>1</Panes><Pane-1>17</Pane-1></Pane-16><Pane-17><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Workspace</Title><ID>1000</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>16</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>16</LastHolder></Pane-17><Pane-18><Type>4</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY></Pane-18><Pane-19><Type>1</Type><DockingCX>171</DockingCX><DockingCY>250</DockingCY><Selected>20</Selected><Panes>1</Panes><Pane-1>20</Pane-1></Pane-19><Pane-20><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Artist Editor</Title><ID>1001</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>19</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>19</LastHolder></Pane-20><Pane-21><Type>1</Type><DockingCX>250</DockingCX><DockingCY>193</DockingCY><Selected>22</Selected><Panes>1</Panes><Pane-1>22</Pane-1></Pane-21><Pane-22><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Output</Title><ID>1002</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>21</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>21</LastHolder></Pane-22><Pane-23><Type>5</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Direction>0</Direction><Panes>0</Panes></Pane-23><Pane-24><Type>5</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Direction>3</Direction><Panes>0</Panes></Pane-24><Pane-25><Type>5</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Direction>1</Direction><Panes>0</Panes></Pane-25><Pane-26><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fWaveTime</Title><ID>1100</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>13</DockingHolder><FloatingHolder>29</FloatingHolder><LastHolder>29</LastHolder></Pane-26><Pane-27><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>28</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-27><Pane-28><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>29</Pane-1><Panes>1</Panes></Pane-28><Pane-29><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-29><Pane-30><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fFadePercent</Title><ID>1101</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>12</DockingHolder><FloatingHolder>33</FloatingHolder><LastHolder>33</LastHolder></Pane-30><Pane-31><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>32</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-31><Pane-32><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>33</Pane-1><Panes>1</Panes></Pane-32><Pane-33><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-33><Pane-34><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fWaveSpeed</Title><ID>1102</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>11</DockingHolder><FloatingHolder>37</FloatingHolder><LastHolder>37</LastHolder></Pane-34><Pane-35><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>36</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-35><Pane-36><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>37</Pane-1><Panes>1</Panes></Pane-36><Pane-37><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-37><Pane-38><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fFadePercent</Title><ID>1103</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>10</DockingHolder><FloatingHolder>41</FloatingHolder><LastHolder>41</LastHolder></Pane-38><Pane-39><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>40</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-39><Pane-40><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>41</Pane-1><Panes>1</Panes></Pane-40><Pane-41><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-41><Pane-42><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fNormalStrength</Title><ID>1104</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>9</DockingHolder><FloatingHolder>45</FloatingHolder><LastHolder>45</LastHolder></Pane-42><Pane-43><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>44</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-43><Pane-44><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>45</Pane-1><Panes>1</Panes></Pane-44><Pane-45><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-45><Pane-46><Type>0</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Title>waterColor</Title><ID>1105</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>8</DockingHolder><FloatingHolder>49</FloatingHolder><LastHolder>49</LastHolder></Pane-46><Pane-47><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>48</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>332</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>201</WindowRectRightPos></Pane-47><Pane-48><Type>2</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Horiz>1</Horiz><Pane-1>49</Pane-1><Panes>1</Panes></Pane-48><Pane-49><Type>1</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-49><Pane-50><Type>0</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Title>waterColor</Title><ID>1106</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>7</DockingHolder><FloatingHolder>53</FloatingHolder><LastHolder>53</LastHolder></Pane-50><Pane-51><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>52</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>332</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>201</WindowRectRightPos></Pane-51><Pane-52><Type>2</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Horiz>1</Horiz><Pane-1>53</Pane-1><Panes>1</Panes></Pane-52><Pane-53><Type>1</Type><DockingCX>201</DockingCX><DockingCY>310</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-53><Pane-54><Type>0</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Title>fViewportDimensions</Title><ID>1107</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>6</DockingHolder><FloatingHolder>57</FloatingHolder><LastHolder>57</LastHolder></Pane-54><Pane-55><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>56</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>200</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>339</WindowRectRightPos></Pane-55><Pane-56><Type>2</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Horiz>1</Horiz><Pane-1>57</Pane-1><Panes>1</Panes></Pane-56><Pane-57><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-57><Pane-58><Type>0</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Title>v2ReflectSize</Title><ID>1108</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>5</DockingHolder><FloatingHolder>61</FloatingHolder><LastHolder>61</LastHolder></Pane-58><Pane-59><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>60</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>200</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>339</WindowRectRightPos></Pane-59><Pane-60><Type>2</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Horiz>1</Horiz><Pane-1>61</Pane-1><Panes>1</Panes></Pane-60><Pane-61><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-61><Pane-62><Type>0</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Title>v2RefractSize</Title><ID>1109</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>4</DockingHolder><FloatingHolder>65</FloatingHolder><LastHolder>65</LastHolder></Pane-62><Pane-63><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>64</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>200</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>339</WindowRectRightPos></Pane-63><Pane-64><Type>2</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Horiz>1</Horiz><Pane-1>65</Pane-1><Panes>1</Panes></Pane-64><Pane-65><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-65><Pane-66><Type>0</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Title>fFarClipPlane</Title><ID>1110</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>3</DockingHolder><FloatingHolder>69</FloatingHolder><LastHolder>69</LastHolder></Pane-66><Pane-67><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>68</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>132</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>435</WindowRectRightPos></Pane-67><Pane-68><Type>2</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Horiz>1</Horiz><Pane-1>69</Pane-1><Panes>1</Panes></Pane-68><Pane-69><Type>1</Type><DockingCX>435</DockingCX><DockingCY>110</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-69><Pane-70><Type>0</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Title>v2DepthSize</Title><ID>1111</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>2</DockingHolder><FloatingHolder>73</FloatingHolder><LastHolder>73</LastHolder></Pane-70><Pane-71><Type>3</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><TopContaner>72</TopContaner><WindowRectTopPos>22</WindowRectTopPos><WindowRectBottomPos>200</WindowRectBottomPos><WindowRectLeftPos>0</WindowRectLeftPos><WindowRectRightPos>339</WindowRectRightPos></Pane-71><Pane-72><Type>2</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Horiz>1</Horiz><Pane-1>73</Pane-1><Panes>1</Panes></Pane-72><Pane-73><Type>1</Type><DockingCX>339</DockingCX><DockingCY>178</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-73><Summary><TopContainer>1</TopContainer><Client>18</Client><Panes>73</Panes></Summary></Application_Layout></DockingPaneLayouts>
]]></RmTextDataBlock>
<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 NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap.s2Reflect" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="210" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="356" 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 NAME="Water Shaders.Using Flowmap.Flowmap.s2Refract" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="210" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="356" 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 NAME="Water Shaders.Using Flowmap.Flowmap.s2Depth" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="210" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="356" 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="RmRenderTargetEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap.Pass: Refract / Skybox.s2Refract" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="239" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="238" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Pass: Water.s2Refract" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="239" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="238" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Pass: Depth / Water.s2Depth" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="239" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="238" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Pass: Depth / Terrain.s2Depth" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="239" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="238" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Pass: Reflect / Skybox.s2Reflect" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="239" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="238" 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="RmRenderStateBlockEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap" 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="66" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="675" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="593" 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="RmTextureObjectEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap" 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="160" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="907" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="521" 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="RmTessellationNodeEditorDlg" 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 NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmPreviewGLWindow" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="EffectPlacementRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="741" 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="742" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="746" 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"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="Water Shaders.Basic Stuff.Skybox" 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="679" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="746" 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="RmStreamEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Basic Stuff.Skybox.Stream Mapping_1" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="256" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="112" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="214" 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 NAME="Water Shaders.Using Flowmap.Single Flowmap.Water (Stream Mapping)" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" 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 NAME="Water Shaders.Using Flowmap.Single Flowmap.Skybox (Stream Mapping)" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Water (Stream Mapping)" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" 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 NAME="Water Shaders.Using Flowmap.Flowmap.Skybox (Stream Mapping)" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" 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 NAME="Water Shaders.Using Flowmap.Flowmap.World (Stream Mapping)" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="258" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="114" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="641" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="228" 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="RmShaderEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Basic Stuff.Skybox" 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[
Vertex Program]]></RmTextDataBlock></RmStringVariable>
<RmStringVariable NAME="Editing Pass" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
Pass: Skybox]]></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="740" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="746" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="2" 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="0" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="719" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap" 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: Water]]></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="740" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="746" 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="160" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="719" 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="RmScalarEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmColorEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmDynamicVariableEditor" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.71">
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap.v2ReflectSize" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1108" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmBooleanVariable NAME="ShowSetup" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="TRUE"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap.v2RefractSize" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1109" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmBooleanVariable NAME="ShowSetup" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="TRUE"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="Water Shaders.Using Flowmap.Flowmap.v2DepthSize" API="" XML_VERSION="RenderMonkey 1.71">
<RmIntegerVariable NAME="DockPaneID" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1111" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmBooleanVariable NAME="ShowSetup" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="TRUE"/>
</RmRegistryBranch>
</RmRegistryBranch>
</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[
28/8/2013 2:11:34]]></RmTextDataBlock></RmStringVariable>
<RmStringVariable NAME="VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
RenderMonkey Version 1.82 (build 322)]]></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[
D:\Projekte\Shader - Water\]]></RmTextDataBlock></RmStringVariable>
</RmRegistryBranch>
</RmRegistryBranch>
</RmRegistryBranch>
<RmEffectGroup NAME="Using Flowmap" API="">
<RmOpenGLEffect NAME="Flowmap" API="OpenGL" ACTIVE_CAMERA="Camera">
<RmCamera NAME="Camera" API="" CAMERA_POSITION_X="-13.061480" CAMERA_POSITION_Y="92.142799" CAMERA_POSITION_Z="7.920703" LOOK_AT_VECTOR_X="-13.061480" LOOK_AT_VECTOR_Y="0.000000" LOOK_AT_VECTOR_Z="7.920703" UP_VECTOR_X="0.000000" UP_VECTOR_Y="0.000000" UP_VECTOR_Z="1.000000" FOV="90.000000" NEAR_CLIP_PLANE="0.100000" FAR_CLIP_PLANE="1024.000000"/>
<RmFloatVariable NAME="fTime" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="Time0_X" VALUE="109.979927" MIN="0.000000" MAX="60.000000" CLAMP="TRUE"/>
<RmDynamicVariable NAME="v2ReflectSize" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="2" COLUMNS="1" FIXED_SIZE="TRUE" MIN="0.000000" MAX="2048.000000" CLAMP="TRUE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="1024.000000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="1024.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmDynamicVariable NAME="v2RefractSize" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="2" COLUMNS="1" FIXED_SIZE="TRUE" MIN="0.000000" MAX="2048.000000" CLAMP="TRUE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="1024.000000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="1024.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmDynamicVariable NAME="v3Animation" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="3" COLUMNS="1" FIXED_SIZE="TRUE" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="1.000000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="1.000000"/>
<RmDynamicVariableValue ROW_INDEX="2" COLUMN_INDEX="0" VALUE="1.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmDynamicVariable NAME="v2Density" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="2" COLUMNS="1" FIXED_SIZE="TRUE" MIN="0.000000" MAX="8.000000" CLAMP="FALSE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="0.060000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="0.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmDynamicVariable NAME="v2DepthSize" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="2" COLUMNS="1" FIXED_SIZE="TRUE" MIN="0.000000" MAX="2048.000000" CLAMP="TRUE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="1024.000000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="1024.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmDynamicVariable NAME="v3NormalScale" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="3" COLUMNS="1" FIXED_SIZE="TRUE" MIN="-1.000000" MAX="1.000000" CLAMP="FALSE" NORMALIZE="FALSE">
<RmDynamicVariableValueContainer>
<RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="0.250000"/>
<RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="0.250000"/>
<RmDynamicVariableValue ROW_INDEX="2" COLUMN_INDEX="0" VALUE="1.000000"/>
</RmDynamicVariableValueContainer>
</RmDynamicVariable>
<RmVectorVariable NAME="v4Color" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.450000" VALUE_1="0.570000" VALUE_2="0.490000" VALUE_3="0.480000" MIN="0.000000" MAX="1.000000" CLAMP="TRUE" NORMALIZE="FALSE"/>
<Rm2DTextureVariable NAME="s2NormalMap" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME=".\NormalMap_01.jpg" ORIGIN="0"/>
<Rm2DTextureVariable NAME="s2FlowMap" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME=".\Flowmap_01.fw.png" ORIGIN="0"/>
<Rm2DTextureVariable NAME="s2DiffuseMap" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME=".\DiffuseMap_01.png" ORIGIN="0"/>
<RmCubemapVariable NAME="sCSkybox" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="D:\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Media\Textures\Snow.dds" ORIGIN="0"/>
<RmRenderableTexture NAME="s2Refract" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="" ORIGIN="0" WIDTH="1024" HEIGHT="1024" FORMAT="21" USE_VIEWPORT_DIMENSIONS="FALSE" GENERATE_MIPMAPS="FALSE" WIDTH_RATIO="1.000000" HEIGHT_RATIO="1.000000"/>
<RmRenderableTexture NAME="s2Reflect" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="" ORIGIN="0" WIDTH="1024" HEIGHT="1024" FORMAT="20" USE_VIEWPORT_DIMENSIONS="FALSE" GENERATE_MIPMAPS="FALSE" WIDTH_RATIO="1.000000" HEIGHT_RATIO="1.000000"/>
<RmRenderableTexture NAME="s2Depth" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="" ORIGIN="0" WIDTH="1024" HEIGHT="1024" FORMAT="21" USE_VIEWPORT_DIMENSIONS="FALSE" GENERATE_MIPMAPS="FALSE" WIDTH_RATIO="1.000000" HEIGHT_RATIO="1.000000"/>
<RmStreamMap NAME="Water (Stream Mapping)" API="">
<RmStream NAME="Stream 0" API="" STRIDE="32">
<RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_Vertex"/>
<RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="3" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_Normal"/>
<RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_TexCoord0"/>
</RmStream>
</RmStreamMap>
<RmStreamMap NAME="World (Stream Mapping)" API="">
<RmStream NAME="Stream" API="" STRIDE="32">
<RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_Vertex"/>
<RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="3" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_Normal"/>
<RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_TexCoord0"/>
</RmStream>
</RmStreamMap>
<RmModelData NAME="Skybox" API="" FILE_NAME="" ORIENTATION="0">
<RmPlugInData NAME="BoxData" API="" PLUGIN_GUID="35ea14d9-fc6d-4bbd-9fe5-159accd679ab"><RmTextDataBlock TYPE="TEXT"><![CDATA[
Generated box model with parameters: width = 512.000000, height = 512.000000, depth = 512.000000]]></RmTextDataBlock></RmPlugInData>
</RmModelData>
<RmModelData NAME="Plane / Flat Surface" API="" FILE_NAME=".\Plane.obj" ORIENTATION="0"/>
<RmModelData NAME="Terrain" API="" FILE_NAME="..\..\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Media\Models\Terrain.3ds" ORIENTATION="0"/>
<RmModelData NAME="Screen-Aligned Quad" API="" FILE_NAME="..\..\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Advanced\HeatHaze\ScreenAlignedQuad.3ds" ORIENTATION="0"/>
<RmGLPass NAME="Pass: Reflect / Terrain" API="OpenGL" PASS_INDEX="3" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Terrain" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="2" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
out vec2 v2TextureCoord0;
out vec4 v4VertexPosition;
void main(void) {
v2TextureCoord0 = gl_MultiTexCoord0.xy;
v4VertexPosition = gl_Vertex;
v4VertexPosition.y = -gl_Vertex.y;
v4VertexPosition.xyz -= vec3(0, 48, 0);
gl_Position = gl_ModelViewProjectionMatrix * v4VertexPosition;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform sampler2D s2Diffuse;
in vec4 v4VertexPosition;
in vec2 v2TextureCoord0;
void main(void) {
if (v4VertexPosition.y > 0.0) {
discard;
}
gl_FragColor = texture(s2Diffuse, v2TextureCoord0);
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Reflect" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="FALSE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<Rm2DTextureVariable NAME="s2Diffuse" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="..\..\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Media\Textures\Terrain.tga" ORIGIN="0"/>
<RmTextureObject NAME="s2Diffuse" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Diffuse" API=""/>
</RmTextureObject>
<RmTextureObject NAME="s2Buffer" API="OpenGL" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Reflect" API=""/>
</RmTextureObject>
<RmSampler NAME="s2Diffuse" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Refract / Skybox" API="OpenGL" PASS_INDEX="4" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Skybox" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_StencilEnable" API="OpenGL" STATE="56" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="8" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
out vec4 v4VertexPosition;
void main( void ) {
v4VertexPosition = gl_Vertex;
gl_Position = gl_ModelViewProjectionMatrix * vec4(gl_Vertex.xyz + gl_ModelViewMatrixInverse[3].xyz, 1.0);
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform samplerCube sCSkybox;
in vec4 v4VertexPosition;
void main(void) {
gl_FragColor = texture(sCSkybox, v4VertexPosition.xyz);
gl_FragColor.a = 1.0;
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Refract" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<RmTextureObject NAME="sCSkybox" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="sCSkybox" API=""/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="6" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="2" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmSampler NAME="sCSkybox" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Refract / Terrain" API="OpenGL" PASS_INDEX="5" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Terrain" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_StencilEnable" API="OpenGL" STATE="56" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFar" API="OpenGL" STATE="15" VALUE="1149239296" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthNear" API="OpenGL" STATE="14" VALUE="1036831949" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform float fFarClipPlane;
out vec2 v2TextureCoord0;
out vec4 v4VertexPosition;
void main(void) {
v2TextureCoord0 = gl_MultiTexCoord0.xy;
v4VertexPosition = (gl_Vertex + vec4(0, 48, 0, 0));
gl_Position = gl_ModelViewProjectionMatrix * v4VertexPosition;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform sampler2D terrainDiffuse;
in vec2 v2TextureCoord0;
in vec4 v4VertexPosition;
void main(void) {
gl_FragColor = texture(terrainDiffuse, v2TextureCoord0);
gl_FragColor.a = distance(v4VertexPosition.xyz, gl_ModelViewMatrixInverse[3].xyz) / gl_DepthRange.far;
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Refract" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="FALSE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<Rm2DTextureVariable NAME="terrainDiffuse" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="..\..\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Media\Textures\Terrain.tga" ORIGIN="0"/>
<RmTextureObject NAME="terrainDiffuse" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="terrainDiffuse" API=""/>
</RmTextureObject>
<RmSampler NAME="terrainDiffuse" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Render To Screen" API="OpenGL" PASS_INDEX="7" ENABLED="TRUE">
<RmModelReference NAME="Screen-Aligned Quad" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_StencilEnable" API="OpenGL" STATE="56" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="8" USAGE="RENDER_STATE"/>
<RmState NAME="GL_PolySmooth" API="OpenGL" STATE="30" VALUE="0" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
uniform sampler2D rtBuffer;
varying vec2 v2TextureCoord;
void main(void) {
gl_FragColor = texture2D(rtBuffer, v2TextureCoord);
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
varying vec2 v2TextureCoord;
void main(void)
{
gl_Position = vec4( gl_Vertex.xy, 0.0, 1.0 );
gl_Position = sign( gl_Position );
// Texture coordinate for screen aligned (in correct range):
v2TextureCoord = (vec2( gl_Position.x, gl_Position.y ) + vec2( 1.0 ) ) / vec2( 2.0 );
}]]></RmShaderCode></RmGLShader>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<RmTextureObject NAME="rtBuffer" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Refract" API=""/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="1" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmSampler NAME="rtBuffer" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Depth / Water" API="OpenGL" PASS_INDEX="0" ENABLED="FALSE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Plane / Flat Surface" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="4" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
out vec4 v4VertexPosition;
void main( void ) {
v4VertexPosition = gl_Vertex;
gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
in vec4 v4VertexPosition;
const vec4 v4DepthConstants = vec4(1.0, 255.0, 65535.0, 16777215.0);
void main(void) {
float fDepth = (length(v4VertexPosition - gl_ModelViewMatrixInverse[3]) - gl_DepthRange.near) / gl_DepthRange.far;
vec4 v4Packed = vec4(fDepth, fDepth, fDepth, fDepth) / v4DepthConstants;
gl_FragColor.rgba = mod(v4Packed, 1.0);
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Depth" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
</RmGLPass>
<RmGLPass NAME="Pass: Depth / Terrain" API="OpenGL" PASS_INDEX="1" ENABLED="FALSE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Terrain" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="4" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
out vec4 v4VertexPosition;
void main( void ) {
v4VertexPosition = (gl_Vertex + vec4(0, 48, 0, 0));
gl_Position = gl_ModelViewProjectionMatrix * v4VertexPosition;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform sampler2D s2DepthMap;
uniform vec2 v2DepthSize;
in vec4 v4VertexPosition;
const vec4 v4DepthConstants = vec4(1.0, 255.0, 65535.0, 16777215.0);
void main(void) {
vec4 v4InDepth = texture(s2DepthMap, gl_FragCoord.xy / v2DepthSize);
float fInDepth = v4InDepth.a + v4InDepth.b + v4InDepth.g + v4InDepth.r;
float fDepth = (length(v4VertexPosition - gl_ModelViewMatrixInverse[3]) - gl_DepthRange.near) / gl_DepthRange.far;
gl_FragColor = v4InDepth.a;
//vec4 v4Packed = vec4(fDepth, fDepth, fDepth, fDepth) / v4DepthConstants;
//gl_FragColor.rgba = mod(v4Packed, 1.0);
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Depth" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="FALSE" DEPTH_CLEAR="FALSE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<RmTextureObject NAME="s2DepthMap" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Depth" API=""/>
</RmTextureObject>
<RmSampler NAME="s2DepthMap" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v2DepthSize" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Water" API="OpenGL" PASS_INDEX="6" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="TRUE"/>
<RmModelReference NAME="Plane / Flat Surface" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_StencilEnable" API="OpenGL" STATE="56" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFar" API="OpenGL" STATE="15" VALUE="1149239296" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthNear" API="OpenGL" STATE="14" VALUE="1036831949" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 420
out vec2 v2TextureCoord0;
out highp vec4 v4VertexPosition;
void main(void) {
v2TextureCoord0 = gl_MultiTexCoord0.xy;
v4VertexPosition = gl_Vertex;
gl_Position = gl_ModelViewProjectionMatrix * v4VertexPosition;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 420
/* Animated Water using Flow Maps
* Shader By: Xaymar
*
* Usage:
* s2FlowMap - FlowMap for the Water, see below on the color components
* s2DiffuseMap - DiffuseMap (Used for <Foam>)
* s2NormalMap - NormalMap (Used for refracting the <Reflection> and <Objects in Water>)
* s2Reflect - Reflection Texture (RGB = Color)
* s2Refract - Refraction Texture (RGB = Color, A = Depth)
* v2Density - Thickness Settings: Density, MinimumDepth
* v3Color - Tinting of Refraction and color of Fog
* v3Animation - Animation Settings: Length, SpeedMul, OffsetMul
* v2ReflectSize - Size of 's2Reflect'
* v2RefractSize - Size of 's2Refract'
*
* Components of the Flow map:
* Red - X-Direction (Normalized with Y-Direction to create movement Vector)
* Green - Y-Direction (Normalized with X-Direction to create movement Vector)
* Blue - Speed (0.125 = Half, 0.25 = Normal, 0.5 = Double, 1.0 = Quadruple)
*
* NormalMap Color Components:
* RGB - Normal
* Alpha - Height
*/
/* Which Fading technique to use for each Texture.
* Defaults to RGB fading if none is defined.
*/
// YUV based fading
//#define FADE_DIFFUSEMAP_YUV
//#define FADE_NORMALMAP_YUV
// YIQ based fading
//#define FADE_DIFFUSEMAP_YIQ
//#define FADE_NORMALMAP_YIQ
// HSL based fading
//#define FADE_DIFFUSEMAP_HSL
//#define FADE_NORMALMAP_HSL
// HSV based fading
//#define FADE_DIFFUSEMAP_HSV
//#define FADE_NORMALMAP_HSV
/* Enable Debug Modes */
//#define DEBUG_FLOW
//#define DEBUG_TESTDIFFUSE
//#define DEBUG_DIFFUSE
//#define DEBUG_NORMAL
//#define DEBUG_REFRACT
//#define DEBUG_REFLECT
/* Constants */
const float LOG2 = 1.442695;
/* Water Variables */
uniform sampler2D s2DiffuseMap;
uniform sampler2D s2NormalMap;
uniform sampler2D s2FlowMap;
uniform vec2 v2Density;
uniform vec4 v4Color;
uniform vec3 v3Animation;
/* Reflection and Refraction */
uniform sampler2D s2Reflect;
uniform vec2 v2ReflectSize;
uniform sampler2D s2Refract;
uniform vec2 v2RefractSize;
uniform vec3 v3NormalScale; // Tex-X, Tex-Y, Strength
/* Other Things */
uniform float fTime;
// Variables from Vertex Program
in vec2 v2TextureCoord0;
in highp vec4 v4VertexPosition;
/* Function pre-definitions */
vec3 RGB2YUV(in vec3 RGB);
vec3 YUV2RGB(in vec3 YUV);
vec3 RGB2YIQ(in vec3 RGB);
vec3 YIQ2RGB(in vec3 YIQ);
vec3 RGB2HSL(in vec3 RGB);
vec3 HSL2RGB(in vec3 HSL);
vec3 RGB2HSV(in vec3 RGB);
vec3 HSV2RGB(in vec3 HSV);
vec4 getNormal(in sampler2D s2NormalMap, in vec2 v2TexCoord, in float fTime) {
vec4 v4Normal = texture(s2NormalMap, v2TexCoord);
return v4Normal;
}
// Main Loop
void main(void) {
// Read and convert the flowmap color into useable values.
vec4 v4FlowData = texture(s2FlowMap, v2TextureCoord0);
vec2 v2Offset = normalize(vec2(-1.0 + v4FlowData.r * 2.0, -1.0 + v4FlowData.g * 2.0));
float fSpeed = max(v3Animation.y * (v4FlowData.b * 4.0), 0.00001);
float fTimeOffset = dot(v2Offset, v2TextureCoord0) * v3Animation.z;
// Since the water can flow at different speeds, the same repeat time is not always appropriate.
float fAnimTime = max(v3Animation.x / fSpeed, 0.00001);
float fRealTime = mod(fTime + fTimeOffset, fAnimTime);
float fProgress = fRealTime / fAnimTime;
// Calculate the fade value from how far the time has progressed.
float fFade = sin(radians(fProgress * 90));
// Calculate the new Texture Coords using direction, speed and time.
vec2 v2Coord1 = v2TextureCoord0 + v2Offset * fSpeed * fRealTime;
vec2 v2Coord2 = v2Coord1 - v2Offset * fSpeed * fAnimTime;
// Normal: Gather Texels and combine them.
vec4 v4Normal;
vec4 v4Normal1 = getNormal(s2NormalMap, v2Coord1 * v3NormalScale.xy, fTime);
vec4 v4Normal2 = getNormal(s2NormalMap, v2Coord2 * v3NormalScale.xy, fTime);
// Normal: Fade between Normal1 and Normal2.
#ifdef FADE_NORMALMAP_YUV
v4Normal.rgb = YUV2RGB(mix(RGB2YUV(v4Normal1.rgb), RGB2YUV(v4Normal2.rgb), fFade));
#else
#ifdef FADE_NORMALMAP_YIQ
v4Normal.rgb = YIQ2RGB(mix(RGB2YIQ(v4Normal1.rgb), RGB2YIQ(v4Normal2.rgb), fFade));
#else
#ifdef FADE_NORMALMAP_HSL
v4Normal.rgb = HSL2RGB(mix(RGB2HSL(v4Normal1.rgb), RGB2HSL(v4Normal2.rgb), fFade));
#else
#ifdef FADE_NORMALMAP_HSV
v4Normal.rgb = HSV2RGB(mix(RGB2HSV(v4Normal1.rgb), RGB2HSV(v4Normal2.rgb), fFade));
#else //Default to RGB mixing
v4Normal.rgb = mix(v4Normal1.rgb, v4Normal2.rgb, fFade);
#endif
#endif
#endif
#endif
v4Normal.a = mix(v4Normal1.a, v4Normal2.a, fFade);
// Normal: Adjust XYZ Vector.
v4Normal.xyz = (vec3(-1.0, -1.0, -1.0) + (2.0 * v4Normal.xyz)) * v3NormalScale.z;
v4Normal.xy *= 0.075;
// Geometry/Depth: Retrieve Color and Depth from Refraction buffer.
vec4 v4Geometry = texture(s2Refract, (gl_FragCoord.xy / v2RefractSize));
float fGeometryDepth = gl_DepthRange.near + v4Geometry.a * gl_DepthRange.diff;
// Reflect/Refraction: Difference in Depth determines transparency
float fWaterDepth = clamp(length(v4VertexPosition - gl_ModelViewMatrixInverse[3]), 0.0, gl_DepthRange.far);
float fDepth = clamp((fGeometryDepth - fWaterDepth) - v2Density.y, 0.0, gl_DepthRange.far);
float fTransparency = clamp(exp2(-v2Density.x * v2Density.x * fDepth * fDepth * 2.0 * LOG2), 0.0, 1.0);
// Fix for cutoff: Smoothly fade Transparency to 0 after we reach half of fFarClipPlane
fTransparency = mix(fTransparency, 0.0, clamp((fWaterDepth / gl_DepthRange.far) * 4.0 - 2.7, 0.0, 1.0));
// Calculate color tint intensity
float fThickness = 1.0 - clamp(fTransparency / v4Color.a, 0.0, 1.0);
// Adjust Normal strength by depth.
v4Normal.xy = v4Normal.xy * fThickness;
// Reflect/Refraction: Use NormalMap scaled by depth to distort.
vec3 v3Refract = texture(s2Refract, (gl_FragCoord.xy / v2RefractSize) + v4Normal.xy).rgb;
vec3 v3Reflect = texture(s2Reflect, (gl_FragCoord.xy / v2ReflectSize) + v4Normal.xy).rgb;
vec3 v3RefractColor = mix(v3Refract, v3Refract * v4Color.rgb, fThickness);
vec3 v3ReflectColor = mix(v3Reflect, v4Color.rgb, 0.0);
vec3 v3Output = mix(v3ReflectColor, v3RefractColor, fTransparency);
// Diffuse/Foam: Add foam to the top of the waves.
vec4 v4Diffuse;
vec4 v4Diffuse1 = texture(s2DiffuseMap, v2Coord1);
vec4 v4Diffuse2 = texture(s2DiffuseMap, v2Coord2);
// Diffuse/Foam: Fade between Diffuse1 and Diffuse2.
#ifdef FADE_DIFFUSEMAP_YUV
v4Diffuse.rgb = YUV2RGB(mix(RGB2YUV(v4Diffuse1.rgb), RGB2YUV(v4Diffuse2.rgb), fFade));
#else
#ifdef FADE_DIFFUSEMAP_YIQ
v4Diffuse.rgb = YIQ2RGB(mix(RGB2YIQ(v4Diffuse1.rgb), RGB2YIQ(v4Diffuse2.rgb), fFade));
#else
#ifdef FADE_DIFFUSEMAP_HSL
v4Diffuse.rgb = HSL2RGB(mix(RGB2HSL(v4Diffuse1.rgb), RGB2HSL(v4Diffuse2.rgb), fFade));
#else
#ifdef FADE_DIFFUSEMAP_HSV
v4Diffuse.rgb = HSV2RGB(mix(RGB2HSV(v4Diffuse1.rgb), RGB2HSV(v4Diffuse2.rgb), fFade));
#else //Default to RGB mixing
v4Diffuse.rgb = mix(v4Diffuse1.rgb, v4Diffuse2.rgb, fFade);
#endif
#endif
#endif
#endif
v4Diffuse.a = mix(v4Diffuse1.a, v4Diffuse2.a, fFade);
// Output the result.
#ifdef DEBUG_FLOW
gl_FragColor.rgb = v4FlowData.rgb;
#else
#ifdef DEBUG_DIFFUSE
gl_FragColor.rgb = v4Diffuse.rgb;
#else
#ifdef DEBUG_NORMAL
gl_FragColor.rgb = v3Normal;
#else
#ifdef DEBUG_REFRACT
gl_FragColor.rgb = v3Refract;
#else
#ifdef DEBUG_REFLECT
gl_FragColor.rgb = v3Reflect;
#else
gl_FragColor.rgb = v3Output;
#endif
#endif
#endif
#endif
#endif
}
/* --- --- RGB Conversion Functions --- ---*/
// RGB <-> YUV
const vec3 yuv_Y = vec3(0.299000, 0.587000, 0.114000);
const vec3 yuv_U = vec3(0.595716, -0.274453, -0.321263);
const vec3 yuv_V = vec3(0.211456, -0.522591, 0.311135);
const vec3 yuv_R = vec3(1.0, 0.9562, 0.6210);
const vec3 yuv_G = vec3(1.0, -0.2721, -0.6474);
const vec3 yuv_B = vec3(1.0, -1.1070, 1.7046);
vec3 RGB2YUV(in vec3 RGB) {
return RGB;
}
vec3 YUV2RGB(in vec3 YUV) {
return YUV;
}
// RGB <-> YIQ
const vec3 yiq_Y = vec3(0.299000, 0.587000, 0.114000);
const vec3 yiq_I = vec3(0.595716, -0.274453, -0.321263);
const vec3 yiq_Q = vec3(0.211456, -0.522591, 0.311135);
const vec3 yiq_R = vec3(1.0, 0.9562, 0.6210);
const vec3 yiq_G = vec3(1.0, -0.2721, -0.6474);
const vec3 yiq_B = vec3(1.0, -1.1070, 1.7046);
#define dRGB2YIQ(RGB) vec3(dot(RGB, yiq_Y), dot(RGB, yiq_I), dot(RGB, yiq_Q))
#define dYIQ2RGB(YIQ) vec3(dot(YIQ, yiq_R), dot(YIQ, yiq_G), dot(YIQ, yiq_B))
vec3 RGB2YIQ(in vec3 RGB) {
return vec3(dot(RGB, yiq_Y), dot(RGB, yiq_I), dot(RGB, yiq_Q));
}
vec3 YIQ2RGB(in vec3 YIQ) {
return vec3(dot(YIQ, yiq_R), dot(YIQ, yiq_G), dot(YIQ, yiq_B));
}
// RGB <-> HSL
vec3 RGB2HSL(in vec3 RGB) {
return RGB;
}
vec3 HSL2RGB(in vec3 HSL) {
return HSL;
}
// RGB <-> HSV
const vec4 hsv_From = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);
const vec4 hsv_To = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 RGB2HSV(in vec3 RGB) {
vec4 p = mix(vec4(RGB.bg, hsv_From.wz), vec4(RGB.gb, hsv_From.xy), step(RGB.b, RGB.g));
vec4 q = mix(vec4(p.xyw, RGB.r), vec4(RGB.r, p.yzx), step(p.x, RGB.r));
float d = q.x - min(q.w, q.y);
float e = 1.0e-10;
return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x);
}
vec3 HSV2RGB(in vec3 HSV) {
vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(HSV.xxx + hsv_To.xyz) * 6.0 - hsv_To.www);
return HSV.z * mix(hsv_To.xxx, clamp(p - K.xxx, 0.0, 1.0), HSV.y);
}
/* --- --- End Of: RGB Conversion Functions --- --- */]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Refract" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="FALSE" DEPTH_CLEAR="FALSE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="Water (Stream Mapping)" API=""/>
<RmTextureObject NAME="s2NormalMap" API="OpenGL" STATE_INDEX="1" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2NormalMap" API=""/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="3" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmTextureObject NAME="s2Refract" API="OpenGL" STATE_INDEX="3" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Refract" API=""/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="2" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmTextureObject NAME="s2Reflect" API="OpenGL" STATE_INDEX="4" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2Reflect" API=""/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="2" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmTextureObject NAME="s2FlowMap" API="OpenGL" STATE_INDEX="2" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2FlowMap" API=""/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="2" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="2" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmTextureObject NAME="s2DiffuseMap" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="s2DiffuseMap" API=""/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="6" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapS" API="OpenGL" STATE="1" VALUE="3" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapT" API="OpenGL" STATE="2" VALUE="3" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureWrapR" API="OpenGL" STATE="3" VALUE="3" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmSampler NAME="s2FlowMap" API="" REGISTER="-1"/>
<RmSampler NAME="s2NormalMap" API="" REGISTER="-1"/>
<RmSampler NAME="s2Reflect" API="" REGISTER="-1"/>
<RmSampler NAME="s2Refract" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v3Animation" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v3NormalScale" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v4Color" API="" REGISTER="-1"/>
<RmShaderConstant NAME="fTime" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v2Density" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v2ReflectSize" API="" REGISTER="-1"/>
<RmShaderConstant NAME="v2RefractSize" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="Pass: Reflect / Skybox" API="OpenGL" PASS_INDEX="2" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Skybox" API=""/>
<RmRenderStateBlock NAME="Render State" API="OpenGL">
<RmState NAME="GL_BlendEnable" API="OpenGL" STATE="46" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_AlphaEnable" API="OpenGL" STATE="41" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_CullMode" API="OpenGL" STATE="8" VALUE="3" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthEnable" API="OpenGL" STATE="44" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_EdgeFlag" API="OpenGL" STATE="9" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_ShadeModel" API="OpenGL" STATE="6" VALUE="2" USAGE="RENDER_STATE"/>
<RmState NAME="GL_VertexProgramTwoSideARB" API="OpenGL" STATE="55" VALUE="0" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskDepth" API="OpenGL" STATE="54" VALUE="1" USAGE="RENDER_STATE"/>
<RmState NAME="GL_WriteMaskColor" API="OpenGL" STATE="53" VALUE="15" USAGE="RENDER_STATE"/>
<RmState NAME="GL_DepthFunction" API="OpenGL" STATE="45" VALUE="8" USAGE="RENDER_STATE"/>
</RmRenderStateBlock>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
out vec4 v4VertexPosition;
void main( void ) {
v4VertexPosition = gl_Vertex;
vec4 v4NewVertexPosition = v4VertexPosition;
v4NewVertexPosition.y = -gl_Vertex.y;
v4NewVertexPosition.xyz += gl_ModelViewMatrixInverse[3].xyz;
gl_Position = gl_ModelViewProjectionMatrix * v4NewVertexPosition;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 100
uniform samplerCube sCSkybox;
in vec4 v4VertexPosition;
void main(void) {
gl_FragColor = texture(sCSkybox, v4VertexPosition.xyz);
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="s2Reflect" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="World (Stream Mapping)" API=""/>
<RmTextureObject NAME="sCSkybox" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="sCSkybox" API=""/>
</RmTextureObject>
<RmSampler NAME="sCSkybox" API="" REGISTER="-1"/>
</RmGLPass>
</RmOpenGLEffect>
</RmEffectGroup>
<RmEffectGroup NAME="Basic Stuff" API="">
<RmOpenGLEffect NAME="Skybox" API="OpenGL" ACTIVE_CAMERA="">
<RmCubemapVariable NAME="Skybox" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="D:\Program Files (x86)\AMD\RenderMonkey 1.82\Examples\Media\Textures\Snow.dds" ORIGIN="0"/>
<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="rm_Vertex"/>
<RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0" ATTRIBUTE_NAME="rm_TexCoord0"/>
</RmStream>
</RmStreamMap>
<RmModelData NAME="Skybox" API="" FILE_NAME="" ORIENTATION="0">
<RmPlugInData NAME="SphereData" API="" PLUGIN_GUID="35ea14d9-fc6d-4bbd-9fe5-159accd679ab"><RmTextDataBlock TYPE="TEXT"><![CDATA[
Generated sphere model with parameters: radius in X = 512.000000, radius in y = 512.000000, radius in z = 512.000000,
horizontal segments = 64, vertical segments = 64
]]></RmTextDataBlock></RmPlugInData>
</RmModelData>
<RmGLPass NAME="Pass: Skybox" API="OpenGL" PASS_INDEX="0" ENABLED="TRUE">
<RmModelReference NAME="Skybox" API=""/>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 420
out vec3 v3VertexPosition;
void main( void ) {
v3VertexPosition = gl_Vertex.xyz;
gl_Position = gl_ModelViewProjectionMatrix * vec4(-v3VertexPosition,1.0);
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
#version 420
uniform samplerCube sSkybox;
in vec3 v3VertexPosition;
void main(void) {
gl_FragColor = texture(sSkybox, -v3VertexPosition);
}]]></RmShaderCode></RmGLShader>
<RmStreamMapReference NAME="Stream Mapping" API=""/>
<RmTextureObject NAME="sSkybox" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="Skybox" API=""/>
<RmState NAME="GL_TextureMinify" API="OpenGL" STATE="4" VALUE="6" USAGE="SAMPLER_STATE"/>
<RmState NAME="GL_TextureMagnify" API="OpenGL" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/>
</RmTextureObject>
<RmSampler NAME="sSkybox" API="" REGISTER="-1"/>
</RmGLPass>
</RmOpenGLEffect>
</RmEffectGroup>
</RmEffectWorkspace>
</RENDER_MONKEY>