I've created this simple rfx just to see how multipass rendering works.

The filter simply render the model like Plastic.rfx do and then convert it to b&w.
This commit is contained in:
Paolo Cignoni cignoni 2007-10-24 16:29:59 +00:00
parent 5686cb11c5
commit b7fcdb005d

View File

@ -0,0 +1,982 @@
<?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? ) |
( RmOpenGLEffect, RmDirectXEffect? )
)?,
(
RmBooleanVariable |
RmIntegerVariable |
RmFloatVariable |
RmVectorVariable |
RmMatrixVariable |
RmDynamicVariable |
RmColorVariable |
Rm2DTextureVariable |
RmCubemapVariable |
Rm3DTextureVariable |
RmLightVariable |
RmMaterialVariable |
RmRenderableTexture |
RmStreamMap |
RmModelData |
RmEffectGroup
)*
)>
<!ELEMENT RmEffectGroup
(
RmPlugInData?,
(
RmStringVariable |
RmDirectXEffect |
RmOpenGLEffect |
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 RmPass
(
RmPlugInData?,
RmStringVariable*,
RmCameraReference?,
RmModelReference?,
RmRenderStateBlock?,
(
(
( RmHLSLShader | RmShader ),
( RmShader | RmHLSLShader )?
)
)?,
RmRenderTarget*,
RmStreamMapReference?,
(
RmBooleanVariable |
RmIntegerVariable |
RmFloatVariable |
RmVectorVariable |
RmMatrixVariable |
RmDynamicVariable |
RmColorVariable |
Rm2DTextureVariable |
RmCubemapVariable |
Rm3DTextureVariable |
RmLightVariable |
RmMaterialVariable |
RmTextureObject |
RmLightObject |
RmMaterialObject
)*
)>
<!ELEMENT RmGLPass
(
RmPlugInData?,
RmStringVariable*,
RmCameraReference?,
RmModelReference?,
RmRenderStateBlock?,
(
( RmGLShader, RmGLShader? )
)?,
RmRenderTarget?,
RmStreamMapReference?,
(
RmBooleanVariable |
RmIntegerVariable |
RmFloatVariable |
RmVectorVariable |
RmMatrixVariable |
RmDynamicVariable |
RmColorVariable |
Rm2DTextureVariable |
RmCubemapVariable |
Rm3DTextureVariable |
RmLightVariable |
RmMaterialVariable |
RmTextureObject |
RmLightObject |
RmMaterialObject |
RmShaderConstant |
RmSampler
)*
)>
<!ELEMENT RmShader
(
RmShaderCode,
RmPlugInData?,
(
RmStringVariable |
RmShaderConstant
)*
)>
<!ELEMENT RmHLSLShader
(
RmShaderCode,
RmPlugInData?,
(
RmStringVariable |
RmShaderConstant |
RmSampler
)*
)>
<!ELEMENT RmGLShader
(
RmShaderCode,
RmPlugInData?,
(
RmStringVariable
)*
)>
<!ELEMENT RmTextureObject
(
RmPlugInData?,
RmStringVariable*,
RmTextureReference?,
RmState*
)>
<!ELEMENT RmLightObject
(
RmPlugInData?,
RmStringVariable*,
RmLightReference?
)>
<!ELEMENT RmMaterialObject
(
RmPlugInData?,
RmStringVariable*,
RmMaterialReference?
)>
<!ELEMENT RmRenderStateBlock
(
RmPlugInData?,
(
RmStringVariable |
RmState
)*
)>
<!ELEMENT RmStreamMap
(
RmPlugInData?,
(
RmStringVariable |
RmStream
)*
)>
<!ELEMENT RmStream ( RmPlugInData?, RmStreamChannel* )>
<!ELEMENT RmModelData ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmTextureReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmLightReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmMaterialReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmCameraReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmModelReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmStreamMapReference ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmRenderableTexture ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmRenderTarget ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmBooleanVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmFloatVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmVectorVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmMatrixVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmColorVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmIntegerVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT Rm2DTextureVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmCubemapVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT Rm3DTextureVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmLightVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmMaterialVariable ( RmPlugInData?, RmStringVariable? )>
<!ELEMENT RmCamera ( RmPlugInData?, RmStringVariable* )>
<!ELEMENT RmStringVariable ( RmTextDataBlock, RmPlugInData? )>
<!ELEMENT RmDynamicVariable
(
RmPlugInData?,
RmStringVariable?,
RmDynamicVariableValueContainer
)>
<!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 |
RmPass |
RmGLPass |
RmShader |
RmHLSLShader |
RmGLShader |
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 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 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 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
>
<!ATTLIST RmModelData
NAME CDATA #REQUIRED
API CDATA #REQUIRED
FILE_NAME CDATA #REQUIRED
ORIENTATION CDATA #REQUIRED
>
<!ATTLIST RmTextureReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
>
<!ATTLIST RmLightReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
>
<!ATTLIST RmMaterialReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
>
<!ATTLIST RmModelReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
>
<!ATTLIST RmStreamMapReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
>
<!ATTLIST RmRenderableTexture
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
FILE_NAME CDATA #REQUIRED
ORIGIN CDATA #REQUIRED
WIDTH CDATA #REQUIRED
HEIGHT CDATA #REQUIRED
FORMAT CDATA #REQUIRED
USE_VIEWPORT_DIMENSIONS ( TRUE | FALSE ) #REQUIRED
GENERATE_MIPMAPS ( TRUE | FALSE ) #REQUIRED
WIDTH_RATIO CDATA #REQUIRED
HEIGHT_RATIO CDATA #REQUIRED
>
<!ATTLIST RmRenderTarget
NAME CDATA #REQUIRED
API CDATA #REQUIRED
INDEX CDATA #REQUIRED
RENDER_TO_SCREEN ( TRUE | FALSE ) #REQUIRED
COLOR_CLEAR ( TRUE | FALSE ) #REQUIRED
DEPTH_CLEAR ( TRUE | FALSE ) #REQUIRED
CLEAR_COLOR_VALUE CDATA #REQUIRED
DEPTH_CLEAR_VALUE CDATA #REQUIRED
>
<!ATTLIST RmBooleanVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE CDATA #REQUIRED
>
<!ATTLIST RmFloatVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE CDATA #REQUIRED
MIN CDATA #REQUIRED
MAX CDATA #REQUIRED
CLAMP ( TRUE | FALSE ) #REQUIRED
>
<!ATTLIST RmVectorVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE_0 CDATA #REQUIRED
VALUE_1 CDATA #REQUIRED
VALUE_2 CDATA #REQUIRED
VALUE_3 CDATA #REQUIRED
MIN CDATA #REQUIRED
MAX CDATA #REQUIRED
CLAMP ( TRUE | FALSE ) #REQUIRED
NORMALIZE ( TRUE | FALSE ) #REQUIRED
>
<!ATTLIST RmMatrixVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE_0 CDATA #REQUIRED
VALUE_1 CDATA #REQUIRED
VALUE_2 CDATA #REQUIRED
VALUE_3 CDATA #REQUIRED
VALUE_4 CDATA #REQUIRED
VALUE_5 CDATA #REQUIRED
VALUE_6 CDATA #REQUIRED
VALUE_7 CDATA #REQUIRED
VALUE_8 CDATA #REQUIRED
VALUE_9 CDATA #REQUIRED
VALUE_10 CDATA #REQUIRED
VALUE_11 CDATA #REQUIRED
VALUE_12 CDATA #REQUIRED
VALUE_13 CDATA #REQUIRED
VALUE_14 CDATA #REQUIRED
VALUE_15 CDATA #REQUIRED
>
<!ATTLIST RmDynamicVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VARIABLE_TYPE ( FLOAT | INTEGER | BOOLEAN ) #REQUIRED
ROWS CDATA #REQUIRED
COLUMNS CDATA #REQUIRED
FIXED_SIZE ( TRUE | FALSE ) #REQUIRED
MIN CDATA #REQUIRED
MAX CDATA #REQUIRED
CLAMP ( TRUE | FALSE ) #REQUIRED
NORMALIZE ( TRUE | FALSE ) #REQUIRED
>
<!ATTLIST RmDynamicVariableValue
ROW_INDEX CDATA #REQUIRED
COLUMN_INDEX CDATA #REQUIRED
VALUE CDATA #REQUIRED
>
<!ATTLIST RmColorVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE_0 CDATA #REQUIRED
VALUE_1 CDATA #REQUIRED
VALUE_2 CDATA #REQUIRED
VALUE_3 CDATA #REQUIRED
>
<!ATTLIST RmIntegerVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
VALUE CDATA #REQUIRED
MIN CDATA #REQUIRED
MAX CDATA #REQUIRED
CLAMP ( TRUE | FALSE ) #REQUIRED
>
<!ATTLIST RmStringVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
>
<!ATTLIST Rm2DTextureVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
FILE_NAME CDATA #REQUIRED
ORIGIN CDATA #REQUIRED
>
<!ATTLIST RmCubemapVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
FILE_NAME CDATA #REQUIRED
ORIGIN CDATA #REQUIRED
>
<!ATTLIST Rm3DTextureVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
FILE_NAME CDATA #REQUIRED
ORIGIN CDATA #REQUIRED
>
<!ATTLIST RmLightVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
LIGHT_ENABLED ( TRUE | FALSE ) #REQUIRED
LIGHT_TYPE ( POSITIONAL | DIRECTIONAL | SPOTLIGHT ) #REQUIRED
AMBIENT_0 CDATA #REQUIRED
AMBIENT_1 CDATA #REQUIRED
AMBIENT_2 CDATA #REQUIRED
AMBIENT_3 CDATA #REQUIRED
DIFFUSE_0 CDATA #REQUIRED
DIFFUSE_1 CDATA #REQUIRED
DIFFUSE_2 CDATA #REQUIRED
DIFFUSE_3 CDATA #REQUIRED
SPECULAR_0 CDATA #REQUIRED
SPECULAR_1 CDATA #REQUIRED
SPECULAR_2 CDATA #REQUIRED
SPECULAR_3 CDATA #REQUIRED
POSITION_0 CDATA #REQUIRED
POSITION_1 CDATA #REQUIRED
POSITION_2 CDATA #REQUIRED
DIRECTION_0 CDATA #REQUIRED
DIRECTION_1 CDATA #REQUIRED
DIRECTION_2 CDATA #REQUIRED
ATTENUATION_0 CDATA #REQUIRED
ATTENUATION_1 CDATA #REQUIRED
ATTENUATION_2 CDATA #REQUIRED
SPOTLIGHT_THETA CDATA #REQUIRED
SPOTLIGHT_PHI CDATA #REQUIRED
RANGE CDATA #REQUIRED
FALLOFF CDATA #REQUIRED
>
<!ATTLIST RmMaterialVariable
NAME CDATA #REQUIRED
API CDATA #REQUIRED
ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED
VARIABLE_SEMANTIC CDATA #REQUIRED
AMBIENT_0 CDATA #REQUIRED
AMBIENT_1 CDATA #REQUIRED
AMBIENT_2 CDATA #REQUIRED
AMBIENT_3 CDATA #REQUIRED
DIFFUSE_0 CDATA #REQUIRED
DIFFUSE_1 CDATA #REQUIRED
DIFFUSE_2 CDATA #REQUIRED
DIFFUSE_3 CDATA #REQUIRED
SPECULAR_0 CDATA #REQUIRED
SPECULAR_1 CDATA #REQUIRED
SPECULAR_2 CDATA #REQUIRED
SPECULAR_3 CDATA #REQUIRED
EMISSIVE_0 CDATA #REQUIRED
EMISSIVE_1 CDATA #REQUIRED
EMISSIVE_2 CDATA #REQUIRED
EMISSIVE_3 CDATA #REQUIRED
SPECULAR_POWER CDATA #REQUIRED
>
<!ATTLIST RmRegistryBranch
NAME CDATA #REQUIRED
API CDATA #REQUIRED
XML_VERSION CDATA #REQUIRED
>
<!ATTLIST RmPlugInData
NAME CDATA #REQUIRED
API CDATA #REQUIRED
PLUGIN_GUID CDATA #REQUIRED
>
<!ATTLIST RmClipboardNode
NAME CDATA #REQUIRED
API CDATA #REQUIRED
XML_VERSION CDATA #REQUIRED
>
<!ATTLIST RmCamera
NAME CDATA #REQUIRED
API CDATA #REQUIRED
CAMERA_POSITION_X CDATA #REQUIRED
CAMERA_POSITION_Y CDATA #REQUIRED
CAMERA_POSITION_Z CDATA #REQUIRED
LOOK_AT_VECTOR_X CDATA #REQUIRED
LOOK_AT_VECTOR_Y CDATA #REQUIRED
LOOK_AT_VECTOR_Z CDATA #REQUIRED
UP_VECTOR_X CDATA #REQUIRED
UP_VECTOR_Y CDATA #REQUIRED
UP_VECTOR_Z CDATA #REQUIRED
FOV CDATA #REQUIRED
NEAR_CLIP_PLANE CDATA #REQUIRED
FAR_CLIP_PLANE CDATA #REQUIRED
>
<!ATTLIST RmCameraReference
NAME CDATA #REQUIRED
API CDATA #REQUIRED
USE_ACTIVE_CAMERA ( TRUE | FALSE ) #REQUIRED
>
<!ATTLIST RmShaderCode
TYPE ( TEXT ) #REQUIRED
>
<!ATTLIST RmTextDataBlock
TYPE ( TEXT ) #REQUIRED
>
]>
<RENDER_MONKEY>
<RmEffectWorkspace NAME="Effect Workspace" API="" ACTIVE_EFFECT="Effect Workspace.Plastic_OpenGL" VALIDATION_STRING="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="RM_REGISTRY" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="RM_LOCAL" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="WORKSPACE" API="" XML_VERSION="RenderMonkey 1.61">
<RmStringVariable NAME="LAST_SAVE" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
22/10/2007 2:24:18]]></RmTextDataBlock></RmStringVariable>
<RmStringVariable NAME="VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
RenderMonkey Version 1.62 (build 29)]]></RmTextDataBlock></RmStringVariable>
<RmStringVariable NAME="XML_VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
RenderMonkey 1.61]]></RmTextDataBlock></RmStringVariable>
<RmStringVariable NAME="BASE_WORKSPACE_PATH" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
C:\Documents and Settings\fuscof\Desktop\]]></RmTextDataBlock></RmStringVariable>
</RmRegistryBranch>
<RmRegistryBranch NAME="RM_PLUGIN" API="" XML_VERSION="RenderMonkey 1.61"><RmTextDataBlock TYPE="TEXT"><![CDATA[
<DockingPaneLayouts><Application_Layout><Pane-1><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Artist Editor</Title><ID>1001</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>7</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>7</LastHolder></Pane-1><Pane-2><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>0</Horiz><Pane-1>3</Pane-1><Pane-2>8</Pane-2><Panes>2</Panes></Pane-2><Pane-3><Type>2</Type><DockingCX>0</DockingCX><DockingCY>632</DockingCY><Horiz>1</Horiz><Pane-1>4</Pane-1><Pane-2>6</Pane-2><Pane-3>7</Pane-3><Panes>3</Panes></Pane-3><Pane-4><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>5</Selected><Panes>1</Panes><Pane-1>5</Pane-1></Pane-4><Pane-5><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Workspace</Title><ID>1000</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>4</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>4</LastHolder></Pane-5><Pane-6><Type>4</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY></Pane-6><Pane-7><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-7><Pane-8><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>9</Selected><Panes>1</Panes><Pane-1>9</Pane-1></Pane-8><Pane-9><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Output</Title><ID>1002</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>8</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>8</LastHolder></Pane-9><Summary><TopContainer>2</TopContainer><Client>6</Client><Panes>9</Panes></Summary></Application_Layout></DockingPaneLayouts>
]]></RmTextDataBlock>
<RmRegistryBranch NAME="RmShaderEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="Effect Workspace.Plastic_OpenGL" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="Disassembly" API="" XML_VERSION="RenderMonkey 1.61"/>
<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[
luminance]]></RmTextDataBlock></RmStringVariable>
<RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="29" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="886" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="428" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="22" MIN="-10" MAX="10" CLAMP="FALSE"/>
</RmRegistryBranch>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmPreviewDx9Window" API="" XML_VERSION="RenderMonkey 1.61"/>
<RmRegistryBranch NAME="RmPreviewGLPreview" API="" XML_VERSION="RenderMonkey 1.61"/>
<RmRegistryBranch NAME="RmPreviewGLWindow" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EffectPlacementRepository" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="Effect Workspace.Plastic_OpenGL" API="" XML_VERSION="RenderMonkey 1.61">
<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="711" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="577" 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="NoteEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmRenderableTextureEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmRenderTargetEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmRenderStateBlockEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
</RmRegistryBranch>
<RmRegistryBranch NAME="RmTextureObjectEditor" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
<RmRegistryBranch NAME="NodeRepository" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="Effect Workspace.Plastic_OpenGL" API="" XML_VERSION="RenderMonkey 1.61">
<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="886" MIN="-10" MAX="10" CLAMP="FALSE"/>
<RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="428" 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="RmTextureGenerator" API="" XML_VERSION="RenderMonkey 1.61">
<RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.61"/>
</RmRegistryBranch>
</RmRegistryBranch>
</RmRegistryBranch>
</RmRegistryBranch>
<RmStringVariable NAME="Header" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[
$File: Plastic_luminance.rfx $
$Revision$
Code deeply inspired by Plastic.rfx from RenderMonkey.
I've added a pass to make the rendered model b&w
© Fusco Francesco 2007
]]></RmTextDataBlock></RmStringVariable>
<RmOpenGLEffect NAME="Plastic_OpenGL" API="OpenGL" ACTIVE_CAMERA="Camera">
<RmCamera NAME="Camera" API="" CAMERA_POSITION_X="0.000000" CAMERA_POSITION_Y="0.000000" CAMERA_POSITION_Z="-244.559479" LOOK_AT_VECTOR_X="0.000000" LOOK_AT_VECTOR_Y="0.000000" LOOK_AT_VECTOR_Z="0.000000" UP_VECTOR_X="0.000000" UP_VECTOR_Y="1.000000" UP_VECTOR_Z="0.000000" FOV="45.000000" NEAR_CLIP_PLANE="1.000000" FAR_CLIP_PLANE="1000.000000"/>
<RmRenderableTexture NAME="texUnit" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="" ORIGIN="0" WIDTH="512" HEIGHT="512" FORMAT="21" USE_VIEWPORT_DIMENSIONS="FALSE" GENERATE_MIPMAPS="TRUE" WIDTH_RATIO="1.000000" HEIGHT_RATIO="1.000000"/>
<RmGLPass NAME="renderModel" API="OpenGL" PASS_INDEX="0" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="Elephant" API=""/>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
uniform vec4 color;
varying vec3 vNormal;
varying vec3 vViewVec;
void main(void)
{
float v = 0.5 * (1.0 + dot(normalize(vViewVec), vNormal));
gl_FragColor = v * color;
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
uniform vec4 view_position;
varying vec3 vNormal;
varying vec3 vViewVec;
void main(void)
{
gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
// World-space lighting
vNormal = gl_Normal;
vViewVec = view_position.xyz - gl_Vertex.xyz;
}]]></RmShaderCode></RmGLShader>
<RmRenderTarget NAME="texUnit" API="" INDEX="0" RENDER_TO_SCREEN="FALSE" COLOR_CLEAR="TRUE" DEPTH_CLEAR="TRUE" CLEAR_COLOR_VALUE="-16777216" DEPTH_CLEAR_VALUE="1.000000"/>
<RmStreamMapReference NAME="Stream Mapping" API=""/>
<RmShaderConstant NAME="view_position" API="" REGISTER="-1"/>
<RmShaderConstant NAME="color" API="" REGISTER="-1"/>
</RmGLPass>
<RmGLPass NAME="luminance" API="OpenGL" PASS_INDEX="1" ENABLED="TRUE">
<RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/>
<RmModelReference NAME="ScreenAlignedQuad" API=""/>
<RmGLShader NAME="Vertex Program" API="OpenGL" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[
varying vec2 vTexCoord;
void main(void)
{
// Clean up inaccuracies
vec2 Pos = sign(gl_Vertex.xy);
gl_Position = vec4(Pos.xy, 0, 1);
// Image-space
vTexCoord.x = 0.5 * (1.0 + Pos.x);
vTexCoord.y = 0.5 * (1.0 + Pos.y);
}]]></RmShaderCode></RmGLShader>
<RmGLShader NAME="Fragment Program" API="OpenGL" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[
uniform sampler2D texUnit;
varying vec2 vTexCoord;
void main(void)
{
vec4 textureColor = texture2D(texUnit, vTexCoord);
vec4 sum = vec4(0.0);
float lumincance = dot(vec3(0.2125,0.7154,0.0721), vec3(textureColor));
sum = vec4(lumincance, lumincance, lumincance, 1.0);
gl_FragColor = sum;
}]]></RmShaderCode></RmGLShader>
<RmStreamMapReference NAME="Stream Mapping" API=""/>
<RmTextureObject NAME="texUnit" API="OpenGL" STATE_INDEX="0" VERTEX_TEXTURE="FALSE">
<RmTextureReference NAME="texUnit" API=""/>
</RmTextureObject>
<RmSampler NAME="texUnit" API="" REGISTER="-1"/>
</RmGLPass>
</RmOpenGLEffect>
<RmMatrixVariable NAME="view_proj_matrix" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewProjection" VALUE_0="-2.081438" VALUE_1="0.897300" VALUE_2="-0.232473" VALUE_3="0.000003" VALUE_4="0.981060" VALUE_5="2.160903" VALUE_6="-0.443221" VALUE_7="0.000645" VALUE_8="0.019044" VALUE_9="-0.209379" VALUE_10="-0.978673" VALUE_11="169.723724" VALUE_12="0.019025" VALUE_13="-0.209170" VALUE_14="-0.977694" VALUE_15="170.554001"/>
<RmVectorVariable NAME="view_position" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewPosition" VALUE_0="0.000000" VALUE_1="0.000000" VALUE_2="-244.559479" VALUE_3="1.000000" MIN="-10.000000" MAX="10.000000" CLAMP="FALSE" NORMALIZE="FALSE"/>
<RmColorVariable NAME="color" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.400111" VALUE_1="0.740625" VALUE_2="1.000000" VALUE_3="1.000000"/>
<RmStreamMap NAME="Stream Mapping" API="">
<RmStream NAME="Normal3" API="" STRIDE="24">
<RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0"/>
<RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="1" USAGE="3" USAGE_INDEX="0"/>
</RmStream>
</RmStreamMap>
<RmModelData NAME="Elephant" API="" FILE_NAME="..\..\..\Programmi\ATI Research Inc\RenderMonkey 1.62\Examples\Media\Models\ElephantBody.3ds" ORIENTATION="0"/>
<RmModelData NAME="ScreenAlignedQuad" API="" FILE_NAME="..\..\..\Programmi\ATI Research Inc\RenderMonkey 1.62\Examples\Media\Models\ScreenAlignedQuad.3ds" ORIENTATION="0"/>
</RmEffectWorkspace>
</RENDER_MONKEY>