diff options
author | alokp@chromium.org <alokp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-09 17:06:42 +0000 |
---|---|---|
committer | alokp@chromium.org <alokp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-01-09 17:06:42 +0000 |
commit | efb8f2987c9b500b3af21f3498df5ac4ae091551 (patch) | |
tree | 02e102d22c835937981b20e178af38d01e366eb0 /third_party/gles2_book/Chapter_13/EnvironmentMapping | |
parent | 1fe3ec310377e2549d05344583251e9e45148553 (diff) | |
download | chromium_src-efb8f2987c9b500b3af21f3498df5ac4ae091551.zip chromium_src-efb8f2987c9b500b3af21f3498df5ac4ae091551.tar.gz chromium_src-efb8f2987c9b500b3af21f3498df5ac4ae091551.tar.bz2 |
Renamed gles_book_examples to gles2_book to make it shorter and more correct. I still need to rename gles_book_examples.gyp to gles2_book.gyp. I will do it in another CL as svn does not like changes in renamed directories.
TBR=apatrick
Review URL: http://codereview.chromium.org/543002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35875 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/gles2_book/Chapter_13/EnvironmentMapping')
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/EnvironmentMapping.rfx | 1204 | ||||
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/Fieldstone.tga | bin | 0 -> 786476 bytes | |||
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/FieldstoneBumpDOT3.tga | bin | 0 -> 786450 bytes | |||
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/Snow.dds | bin | 0 -> 2097440 bytes | |||
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/Sphere.3ds | bin | 0 -> 23649 bytes | |||
-rw-r--r-- | third_party/gles2_book/Chapter_13/EnvironmentMapping/Teapot.3ds | bin | 0 -> 1004218 bytes |
6 files changed, 1204 insertions, 0 deletions
diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/EnvironmentMapping.rfx b/third_party/gles2_book/Chapter_13/EnvironmentMapping/EnvironmentMapping.rfx new file mode 100644 index 0000000..8c32adb --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/EnvironmentMapping.rfx @@ -0,0 +1,1204 @@ +<?xml version="1.0" encoding="UTF-8" standalone="yes"?> +<!DOCTYPE RENDER_MONKEY [ + <!ELEMENT RENDER_MONKEY + ( + RmEffectWorkspace | + RmRegistryBranch | + RmClipboardNode + )?> + + <!ELEMENT RmEffectWorkspace + ( + RmRegistryBranch?, + RmPlugInData?, + RmStringVariable*, + ( + ( RmDirectXEffect, RmOpenGLEffect?, RmOpenGLESEffect? ) | + ( RmOpenGLEffect, RmDirectXEffect?, RmOpenGLESEffect? ) | + ( RmOpenGLESEffect, RmDirectXEffect?, RmOpenGLEffect? ) + )?, + ( + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRenderableTexture | + RmStreamMap | + RmModelData | + RmEffectGroup + )* + )> + + <!ELEMENT RmEffectGroup + ( + RmPlugInData?, + ( + RmStringVariable | + RmDirectXEffect | + RmOpenGLEffect | + RmOpenGLESEffect | + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRenderableTexture | + RmStreamMap | + RmModelData + )* + )> + + <!ELEMENT RmDirectXEffect + ( + RmPlugInData?, + ( + RmStringVariable | + RmCamera | + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRenderableTexture | + RmStreamMap | + RmModelData | + RmPass + )* + )> + + <!ELEMENT RmOpenGLEffect + ( + RmPlugInData?, + ( + RmStringVariable | + RmCamera | + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRenderableTexture | + RmStreamMap | + RmModelData | + RmGLPass + )* + )> + + <!ELEMENT RmOpenGLESEffect + ( + RmPlugInData?, + ( + RmStringVariable | + RmCamera | + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRenderableTexture | + RmStreamMap | + RmModelData | + RmGLESPass + )* + )> + + <!ELEMENT RmPass + ( + RmPlugInData?, + RmStringVariable*, + RmCameraReference?, + RmModelReference?, + RmRenderStateBlock?, + ( + ( + ( RmHLSLShader | RmShader ), + ( RmShader | RmHLSLShader )? + ) + )?, + RmRenderTarget*, + RmStreamMapReference?, + ( + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmTextureObject | + RmLightObject | + RmMaterialObject + )* + )> + + <!ELEMENT RmGLPass + ( + RmPlugInData?, + RmStringVariable*, + RmCameraReference?, + RmModelReference?, + RmRenderStateBlock?, + ( + ( RmGLShader, RmGLShader? ) + )?, + RmRenderTarget?, + RmStreamMapReference?, + ( + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmTextureObject | + RmLightObject | + RmMaterialObject | + RmShaderConstant | + RmSampler + )* + )> + + <!ELEMENT RmGLESPass + ( + RmPlugInData?, + RmStringVariable*, + RmCameraReference?, + RmModelReference?, + RmRenderStateBlock?, + ( + ( RmGLESShader, RmGLESShader? ) + )?, + RmRenderTarget?, + RmStreamMapReference?, + ( + RmBooleanVariable | + RmIntegerVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmColorVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmTextureObject | + RmLightObject | + RmMaterialObject | + RmShaderConstant | + RmSampler + )* + )> + + <!ELEMENT RmShader + ( + RmShaderCode, + RmPlugInData?, + ( + RmStringVariable | + RmShaderConstant + )* + )> + + <!ELEMENT RmHLSLShader + ( + RmShaderCode, + RmPlugInData?, + ( + RmStringVariable | + RmShaderConstant | + RmSampler + )* + )> + + <!ELEMENT RmGLShader + ( + RmShaderCode, + RmPlugInData?, + ( + RmStringVariable + )* + )> + + <!ELEMENT RmGLESShader + ( + RmShaderCode, + RmPlugInData?, + ( + RmStringVariable + )* + )> + + <!ELEMENT RmTextureObject + ( + RmPlugInData?, + RmStringVariable*, + RmTextureReference?, + RmState* + )> + + <!ELEMENT RmLightObject + ( + RmPlugInData?, + RmStringVariable*, + RmLightReference? + )> + + <!ELEMENT RmMaterialObject + ( + RmPlugInData?, + RmStringVariable*, + RmMaterialReference? + )> + + <!ELEMENT RmRenderStateBlock + ( + RmPlugInData?, + ( + RmStringVariable | + RmState + )* + )> + + <!ELEMENT RmStreamMap + ( + RmPlugInData?, + ( + RmStringVariable | + RmStream + )* + )> + + <!ELEMENT RmStream ( RmPlugInData?, RmStreamChannel* )> + + <!ELEMENT RmModelData ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmTextureReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmLightReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmMaterialReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmCameraReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmModelReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmStreamMapReference ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmRenderableTexture ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmRenderTarget ( RmPlugInData?, RmStringVariable* )> + <!ELEMENT RmBooleanVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmFloatVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmVectorVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmMatrixVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmColorVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmIntegerVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT Rm2DTextureVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmCubemapVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT Rm3DTextureVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmLightVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmMaterialVariable ( RmPlugInData?, RmStringVariable? )> + <!ELEMENT RmCamera ( RmPlugInData?, RmStringVariable* )> + + <!ELEMENT RmStringVariable ( RmTextDataBlock, RmPlugInData? )> + + <!ELEMENT RmDynamicVariable + ( + RmDynamicVariableValueContainer, + RmPlugInData?, + RmStringVariable? + )> + + <!ELEMENT RmDynamicVariableValueContainer + ( + RmPlugInData?, + RmDynamicVariableValue* + )> + + <!ELEMENT RmTextDataBlock ( #PCDATA ) > + + <!ELEMENT RmRegistryBranch + ( + RmTextDataBlock?, + ( + RmRegistryBranch | + RmStringVariable | + RmIntegerVariable | + RmBooleanVariable | + RmFloatVariable + )* + )> + + <!ELEMENT RmPlugInData + ( + RmTextDataBlock?, + ( + RmStringVariable | + RmIntegerVariable | + RmBooleanVariable | + RmFloatVariable | + RmVectorVariable + )* + )> + + <!ELEMENT RmClipboardNode + ( + RmTextDataBlock?, + ( + RmEffectWorkspace | + RmEffectGroup | + RmDirectXEffect | + RmOpenGLEffect | + RmOpenGLESEffect | + RmPass | + RmGLPass | + RmGLESPass | + RmShader | + RmHLSLShader | + RmGLShader | + RmGLESShader | + RmShaderConstant | + RmSampler | + RmTextureObject | + RmLightObject | + RmMaterialObject | + RmRenderStateBlock | + RmState | + RmStreamMap | + RmStream | + RmStreamChannel | + RmModelData | + RmTextureReference | + RmLightReference | + RmMaterialReference | + RmModelReference | + RmStreamMapReference | + RmRenderableTexture | + RmRenderTarget | + RmBooleanVariable | + RmFloatVariable | + RmVectorVariable | + RmMatrixVariable | + RmDynamicVariable | + RmDynamicVariableValue | + RmColorVariable | + RmIntegerVariable | + RmStringVariable | + Rm2DTextureVariable | + RmCubemapVariable | + Rm3DTextureVariable | + RmLightVariable | + RmMaterialVariable | + RmRegistryBranch | + RmPlugInData | + RmCamera | + RmCameraReference + )* + )> + + <!ELEMENT RmStreamChannel ( RmPlugInData? ) > + <!ELEMENT RmShaderConstant ( RmPlugInData? ) > + <!ELEMENT RmSampler ( RmPlugInData? ) > + <!ELEMENT RmState ( RmPlugInData? ) > + <!ELEMENT RmDynamicVariableValue ( RmPlugInData? ) > + + <!ELEMENT RmShaderCode ( #PCDATA ) > + + <!ATTLIST RmEffectWorkspace + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ACTIVE_EFFECT CDATA #REQUIRED + VALIDATION_STRING CDATA #REQUIRED + XML_VERSION CDATA #REQUIRED + > + + <!ATTLIST RmEffectGroup + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmDirectXEffect + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ACTIVE_CAMERA CDATA #REQUIRED + > + + <!ATTLIST RmOpenGLEffect + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ACTIVE_CAMERA CDATA #REQUIRED + > + + <!ATTLIST RmOpenGLESEffect + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ACTIVE_CAMERA CDATA #REQUIRED + > + + <!ATTLIST RmPass + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PASS_INDEX CDATA #REQUIRED + ENABLED ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmGLPass + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PASS_INDEX CDATA #REQUIRED + ENABLED ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmGLESPass + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PASS_INDEX CDATA #REQUIRED + ENABLED ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmShader + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PIXEL_SHADER CDATA #REQUIRED + > + + <!ATTLIST RmHLSLShader + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED + TARGET CDATA #REQUIRED + ENTRY_POINT CDATA #REQUIRED + COMPILER_FLAGS CDATA #REQUIRED + > + + <!ATTLIST RmGLShader + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmGLESShader + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PIXEL_SHADER ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmShaderConstant + NAME CDATA #REQUIRED + API CDATA #REQUIRED + REGISTER CDATA #REQUIRED + > + + <!ATTLIST RmSampler + NAME CDATA #REQUIRED + API CDATA #REQUIRED + REGISTER CDATA #REQUIRED + > + + <!ATTLIST RmTextureObject + NAME CDATA #REQUIRED + API CDATA #REQUIRED + STATE_INDEX CDATA #REQUIRED + VERTEX_TEXTURE ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmLightObject + NAME CDATA #REQUIRED + API CDATA #REQUIRED + INDEX CDATA #REQUIRED + > + + <!ATTLIST RmMaterialObject + NAME CDATA #REQUIRED + API CDATA #REQUIRED + INDEX CDATA #REQUIRED + > + + <!ATTLIST RmRenderStateBlock + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmState + NAME CDATA #REQUIRED + API CDATA #REQUIRED + STATE CDATA #REQUIRED + VALUE CDATA #REQUIRED + USAGE CDATA #REQUIRED + > + + <!ATTLIST RmStreamMap + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmStream + NAME CDATA #REQUIRED + API CDATA #REQUIRED + STRIDE CDATA #REQUIRED + > + + <!ATTLIST RmStreamChannel + NAME CDATA #REQUIRED + API CDATA #REQUIRED + DATA_SIZE CDATA #REQUIRED + DATA_TYPE CDATA #REQUIRED + REGISTER CDATA #REQUIRED + USAGE CDATA #REQUIRED + USAGE_INDEX CDATA #REQUIRED + ATTRIBUTE_NAME CDATA #REQUIRED + > + + <!ATTLIST RmModelData + NAME CDATA #REQUIRED + API CDATA #REQUIRED + FILE_NAME CDATA #REQUIRED + ORIENTATION CDATA #REQUIRED + > + + <!ATTLIST RmTextureReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmLightReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmMaterialReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmModelReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmStreamMapReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + > + + <!ATTLIST RmRenderableTexture + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + FILE_NAME CDATA #REQUIRED + ORIGIN CDATA #REQUIRED + WIDTH CDATA #REQUIRED + HEIGHT CDATA #REQUIRED + FORMAT CDATA #REQUIRED + USE_VIEWPORT_DIMENSIONS ( TRUE | FALSE ) #REQUIRED + GENERATE_MIPMAPS ( TRUE | FALSE ) #REQUIRED + WIDTH_RATIO CDATA #REQUIRED + HEIGHT_RATIO CDATA #REQUIRED + > + + <!ATTLIST RmRenderTarget + NAME CDATA #REQUIRED + API CDATA #REQUIRED + INDEX CDATA #REQUIRED + RENDER_TO_SCREEN ( TRUE | FALSE ) #REQUIRED + COLOR_CLEAR ( TRUE | FALSE ) #REQUIRED + DEPTH_CLEAR ( TRUE | FALSE ) #REQUIRED + CLEAR_COLOR_VALUE CDATA #REQUIRED + DEPTH_CLEAR_VALUE CDATA #REQUIRED + > + + <!ATTLIST RmBooleanVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE CDATA #REQUIRED + > + + <!ATTLIST RmFloatVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE CDATA #REQUIRED + MIN CDATA #REQUIRED + MAX CDATA #REQUIRED + CLAMP ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmVectorVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE_0 CDATA #REQUIRED + VALUE_1 CDATA #REQUIRED + VALUE_2 CDATA #REQUIRED + VALUE_3 CDATA #REQUIRED + MIN CDATA #REQUIRED + MAX CDATA #REQUIRED + CLAMP ( TRUE | FALSE ) #REQUIRED + NORMALIZE ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmMatrixVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE_0 CDATA #REQUIRED + VALUE_1 CDATA #REQUIRED + VALUE_2 CDATA #REQUIRED + VALUE_3 CDATA #REQUIRED + VALUE_4 CDATA #REQUIRED + VALUE_5 CDATA #REQUIRED + VALUE_6 CDATA #REQUIRED + VALUE_7 CDATA #REQUIRED + VALUE_8 CDATA #REQUIRED + VALUE_9 CDATA #REQUIRED + VALUE_10 CDATA #REQUIRED + VALUE_11 CDATA #REQUIRED + VALUE_12 CDATA #REQUIRED + VALUE_13 CDATA #REQUIRED + VALUE_14 CDATA #REQUIRED + VALUE_15 CDATA #REQUIRED + > + + <!ATTLIST RmDynamicVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VARIABLE_TYPE ( FLOAT | INTEGER | BOOLEAN ) #REQUIRED + ROWS CDATA #REQUIRED + COLUMNS CDATA #REQUIRED + FIXED_SIZE ( TRUE | FALSE ) #REQUIRED + MIN CDATA #REQUIRED + MAX CDATA #REQUIRED + CLAMP ( TRUE | FALSE ) #REQUIRED + NORMALIZE ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmDynamicVariableValue + ROW_INDEX CDATA #REQUIRED + COLUMN_INDEX CDATA #REQUIRED + VALUE CDATA #REQUIRED + > + + <!ATTLIST RmColorVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE_0 CDATA #REQUIRED + VALUE_1 CDATA #REQUIRED + VALUE_2 CDATA #REQUIRED + VALUE_3 CDATA #REQUIRED + > + + <!ATTLIST RmIntegerVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + VALUE CDATA #REQUIRED + MIN CDATA #REQUIRED + MAX CDATA #REQUIRED + CLAMP ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmStringVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + > + + <!ATTLIST Rm2DTextureVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + FILE_NAME CDATA #REQUIRED + ORIGIN CDATA #REQUIRED + > + + <!ATTLIST RmCubemapVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + FILE_NAME CDATA #REQUIRED + ORIGIN CDATA #REQUIRED + > + + <!ATTLIST Rm3DTextureVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + FILE_NAME CDATA #REQUIRED + ORIGIN CDATA #REQUIRED + > + + <!ATTLIST RmLightVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + LIGHT_ENABLED ( TRUE | FALSE ) #REQUIRED + LIGHT_TYPE ( POSITIONAL | DIRECTIONAL | SPOTLIGHT ) #REQUIRED + AMBIENT_0 CDATA #REQUIRED + AMBIENT_1 CDATA #REQUIRED + AMBIENT_2 CDATA #REQUIRED + AMBIENT_3 CDATA #REQUIRED + DIFFUSE_0 CDATA #REQUIRED + DIFFUSE_1 CDATA #REQUIRED + DIFFUSE_2 CDATA #REQUIRED + DIFFUSE_3 CDATA #REQUIRED + SPECULAR_0 CDATA #REQUIRED + SPECULAR_1 CDATA #REQUIRED + SPECULAR_2 CDATA #REQUIRED + SPECULAR_3 CDATA #REQUIRED + POSITION_0 CDATA #REQUIRED + POSITION_1 CDATA #REQUIRED + POSITION_2 CDATA #REQUIRED + DIRECTION_0 CDATA #REQUIRED + DIRECTION_1 CDATA #REQUIRED + DIRECTION_2 CDATA #REQUIRED + ATTENUATION_0 CDATA #REQUIRED + ATTENUATION_1 CDATA #REQUIRED + ATTENUATION_2 CDATA #REQUIRED + SPOTLIGHT_THETA CDATA #REQUIRED + SPOTLIGHT_PHI CDATA #REQUIRED + RANGE CDATA #REQUIRED + FALLOFF CDATA #REQUIRED + > + + <!ATTLIST RmMaterialVariable + NAME CDATA #REQUIRED + API CDATA #REQUIRED + ARTIST_EDITABLE ( TRUE | FALSE ) #REQUIRED + VARIABLE_SEMANTIC CDATA #REQUIRED + AMBIENT_0 CDATA #REQUIRED + AMBIENT_1 CDATA #REQUIRED + AMBIENT_2 CDATA #REQUIRED + AMBIENT_3 CDATA #REQUIRED + DIFFUSE_0 CDATA #REQUIRED + DIFFUSE_1 CDATA #REQUIRED + DIFFUSE_2 CDATA #REQUIRED + DIFFUSE_3 CDATA #REQUIRED + SPECULAR_0 CDATA #REQUIRED + SPECULAR_1 CDATA #REQUIRED + SPECULAR_2 CDATA #REQUIRED + SPECULAR_3 CDATA #REQUIRED + EMISSIVE_0 CDATA #REQUIRED + EMISSIVE_1 CDATA #REQUIRED + EMISSIVE_2 CDATA #REQUIRED + EMISSIVE_3 CDATA #REQUIRED + SPECULAR_POWER CDATA #REQUIRED + > + + <!ATTLIST RmRegistryBranch + NAME CDATA #REQUIRED + API CDATA #REQUIRED + XML_VERSION CDATA #REQUIRED + > + + <!ATTLIST RmPlugInData + NAME CDATA #REQUIRED + API CDATA #REQUIRED + PLUGIN_GUID CDATA #REQUIRED + > + + <!ATTLIST RmClipboardNode + NAME CDATA #REQUIRED + API CDATA #REQUIRED + XML_VERSION CDATA #REQUIRED + > + + <!ATTLIST RmCamera + NAME CDATA #REQUIRED + API CDATA #REQUIRED + CAMERA_POSITION_X CDATA #REQUIRED + CAMERA_POSITION_Y CDATA #REQUIRED + CAMERA_POSITION_Z CDATA #REQUIRED + LOOK_AT_VECTOR_X CDATA #REQUIRED + LOOK_AT_VECTOR_Y CDATA #REQUIRED + LOOK_AT_VECTOR_Z CDATA #REQUIRED + UP_VECTOR_X CDATA #REQUIRED + UP_VECTOR_Y CDATA #REQUIRED + UP_VECTOR_Z CDATA #REQUIRED + FOV CDATA #REQUIRED + NEAR_CLIP_PLANE CDATA #REQUIRED + FAR_CLIP_PLANE CDATA #REQUIRED + > + + <!ATTLIST RmCameraReference + NAME CDATA #REQUIRED + API CDATA #REQUIRED + USE_ACTIVE_CAMERA ( TRUE | FALSE ) #REQUIRED + > + + <!ATTLIST RmShaderCode + TYPE ( TEXT ) #REQUIRED + > + + <!ATTLIST RmTextDataBlock + TYPE ( TEXT ) #REQUIRED + > + +]> +<RENDER_MONKEY> + <RmEffectWorkspace NAME="Effect Workspace" API="" ACTIVE_EFFECT="Effect Workspace.Environment Mapping" VALIDATION_STRING="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="RM_REGISTRY" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="RM_LOCAL" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="RM_PLUGIN" API="" XML_VERSION="RenderMonkey 1.71"><RmTextDataBlock TYPE="TEXT"><![CDATA[ +<DockingPaneLayouts><Application_Layout><Pane-1><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Artist Editor</Title><ID>1001</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>8</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>8</LastHolder></Pane-1><Pane-2><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>1</Horiz><Pane-1>3</Pane-1><Panes>1</Panes></Pane-2><Pane-3><Type>2</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY><Horiz>0</Horiz><Pane-1>4</Pane-1><Pane-2>9</Pane-2><Panes>2</Panes></Pane-3><Pane-4><Type>2</Type><DockingCX>0</DockingCX><DockingCY>641</DockingCY><Horiz>1</Horiz><Pane-1>5</Pane-1><Pane-2>7</Pane-2><Pane-3>8</Pane-3><Panes>3</Panes></Pane-4><Pane-5><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>6</Selected><Panes>1</Panes><Pane-1>6</Pane-1></Pane-5><Pane-6><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Workspace</Title><ID>1000</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>5</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>5</LastHolder></Pane-6><Pane-7><Type>4</Type><DockingCX>0</DockingCX><DockingCY>0</DockingCY></Pane-7><Pane-8><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>0</Selected><Panes>0</Panes></Pane-8><Pane-9><Type>1</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Selected>10</Selected><Panes>1</Panes><Pane-1>10</Pane-1></Pane-9><Pane-10><Type>0</Type><DockingCX>250</DockingCX><DockingCY>250</DockingCY><Title>Output</Title><ID>1002</ID><IconID>-1</IconID><Options>0</Options><DockingHolder>9</DockingHolder><FloatingHolder>0</FloatingHolder><LastHolder>9</LastHolder></Pane-10><Summary><TopContainer>2</TopContainer><Client>7</Client><Panes>10</Panes></Summary></Application_Layout></DockingPaneLayouts> +]]></RmTextDataBlock> + <RmRegistryBranch NAME="RmPreviewGLWindow" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EffectPlacementRepository" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="Effect Workspace.Environment Mapping" 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="6" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="433" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="400" 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> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmStreamEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="Effect Workspace.Textured Bump.Stream Mapping" API="" XML_VERSION="RenderMonkey 1.71"> + <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="663" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="400" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="851" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="310" 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="Effect Workspace.Environment Mapping.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="128" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="851" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="310" 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="RmPreviewDx9Window" API="" XML_VERSION="RenderMonkey 1.71"/> + <RmRegistryBranch NAME="RmPreviewGLESWindow" API="" XML_VERSION="RenderMonkey 1.71"/> + <RmRegistryBranch NAME="RmPreviewGLPreview" API="" XML_VERSION="RenderMonkey 1.71"/> + <RmRegistryBranch NAME="RmLightEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + <RmRegistryBranch NAME="NoteEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmRenderableTextureEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmRenderTargetEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmShaderEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="Effect Workspace.Environment Mapping" 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[ +Teapot]]></RmTextDataBlock></RmStringVariable> + <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1014" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="650" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="3" 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="491" MIN="-10" MAX="10" CLAMP="FALSE"/> + </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="Effect Workspace.Environment Mapping" API="" XML_VERSION="RenderMonkey 1.71"> + <RmIntegerVariable NAME="X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="54" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="70" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Width" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1283" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Height" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="434" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="ShowStatus" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="1" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Visible" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="0" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Minimized X" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> + <RmIntegerVariable NAME="Minimized Y" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VALUE="-1" MIN="-10" MAX="10" CLAMP="FALSE"/> + </RmRegistryBranch> + </RmRegistryBranch> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmTextureObjectEditor" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + <RmRegistryBranch NAME="RmTextureGenerator" API="" XML_VERSION="RenderMonkey 1.71"> + <RmRegistryBranch NAME="EditNodeRepository" API="" XML_VERSION="RenderMonkey 1.71"/> + </RmRegistryBranch> + </RmRegistryBranch> + <RmRegistryBranch NAME="WORKSPACE" API="" XML_VERSION="RenderMonkey 1.71"> + <RmStringVariable NAME="LAST_SAVE" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ +27/12/2007 11:33:28]]></RmTextDataBlock></RmStringVariable> + <RmStringVariable NAME="VERSION" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC=""><RmTextDataBlock TYPE="TEXT"><![CDATA[ +RenderMonkey Version 1.80 (build 125)]]></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:\svn\redbook\Code\Chapter_12\EnvironmentMapping\]]></RmTextDataBlock></RmStringVariable> + </RmRegistryBranch> + </RmRegistryBranch> + </RmRegistryBranch> + <RmOpenGLESEffect NAME="Environment Mapping" API="OpenGL ES" ACTIVE_CAMERA="Camera"> + <RmCamera NAME="Camera" API="" CAMERA_POSITION_X="-13.744995" CAMERA_POSITION_Y="23.367828" CAMERA_POSITION_Z="-220.341003" LOOK_AT_VECTOR_X="4.617599" LOOK_AT_VECTOR_Y="-4.282429" LOOK_AT_VECTOR_Z="0.204170" UP_VECTOR_X="-0.257297" UP_VECTOR_Y="0.955950" UP_VECTOR_Z="0.141275" FOV="45.000000" NEAR_CLIP_PLANE="70.930000" FAR_CLIP_PLANE="1883.088135"/> + <RmDynamicVariable NAME="u_eyePosition" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="3" COLUMNS="1" FIXED_SIZE="TRUE" MIN="-100.000000" MAX="100.000000" CLAMP="TRUE" NORMALIZE="FALSE"> + <RmDynamicVariableValueContainer> + <RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="0.000000"/> + <RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="0.000000"/> + <RmDynamicVariableValue ROW_INDEX="2" COLUMN_INDEX="0" VALUE="100.000000"/> + </RmDynamicVariableValueContainer> + </RmDynamicVariable> + <RmMatrixVariable NAME="u_matViewProjection" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewProjection" VALUE_0="-1.965568" VALUE_1="-0.543160" VALUE_2="0.095556" VALUE_3="6.730651" VALUE_4="-0.621170" VALUE_5="2.307867" VALUE_6="0.341067" VALUE_7="12.683241" VALUE_8="0.085555" VALUE_9="-0.128829" VALUE_10="1.027569" VALUE_11="156.895691" VALUE_12="0.082333" VALUE_13="-0.123976" VALUE_14="0.988864" VALUE_15="221.915924"/> + <RmMatrixVariable NAME="u_matViewInverse" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewInverse" VALUE_0="-0.962819" VALUE_1="-0.257297" VALUE_2="-0.082333" VALUE_3="-13.744995" VALUE_4="-0.266063" VALUE_5="0.955950" VALUE_6="0.123978" VALUE_7="23.367828" VALUE_8="0.046807" VALUE_9="0.141272" VALUE_10="-0.988863" VALUE_11="-220.341003" VALUE_12="0.000000" VALUE_13="0.000000" VALUE_14="0.000000" VALUE_15="1.000000"/> + <RmFloatVariable NAME="u_specularPower" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE="25.000000" MIN="1.000000" MAX="100.000000" CLAMP="TRUE"/> + <RmVectorVariable NAME="u_viewPosition" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="ViewPosition" VALUE_0="-13.744995" VALUE_1="23.367828" VALUE_2="-220.341003" VALUE_3="1.000000" MIN="-10.000000" MAX="10.000000" CLAMP="FALSE" NORMALIZE="FALSE"/> + <RmDynamicVariable NAME="u_lightPosition" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VARIABLE_TYPE="FLOAT" ROWS="3" COLUMNS="1" FIXED_SIZE="TRUE" MIN="-100.000000" MAX="100.000000" CLAMP="TRUE" NORMALIZE="FALSE"> + <RmDynamicVariableValueContainer> + <RmDynamicVariableValue ROW_INDEX="0" COLUMN_INDEX="0" VALUE="-100.000000"/> + <RmDynamicVariableValue ROW_INDEX="1" COLUMN_INDEX="0" VALUE="100.000000"/> + <RmDynamicVariableValue ROW_INDEX="2" COLUMN_INDEX="0" VALUE="100.000000"/> + </RmDynamicVariableValueContainer> + </RmDynamicVariable> + <RmColorVariable NAME="u_ambient" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.368627" VALUE_1="0.368421" VALUE_2="0.368421" VALUE_3="1.000000"/> + <RmColorVariable NAME="u_diffuse" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.886275" VALUE_1="0.885003" VALUE_2="0.885003" VALUE_3="1.000000"/> + <RmColorVariable NAME="u_specular" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" VALUE_0="0.490196" VALUE_1="0.488722" VALUE_2="0.488722" VALUE_3="1.000000"/> + <Rm2DTextureVariable NAME="base" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="Fieldstone.tga" ORIGIN="0"/> + <Rm2DTextureVariable NAME="bump" API="" ARTIST_EDITABLE="TRUE" VARIABLE_SEMANTIC="" FILE_NAME="FieldstoneBumpDOT3.tga" ORIGIN="0"/> + <RmCubemapVariable NAME="cubemap" API="" ARTIST_EDITABLE="FALSE" VARIABLE_SEMANTIC="" FILE_NAME="Snow.dds" ORIGIN="0"/> + <RmStreamMap NAME="Stream Mapping" API=""> + <RmStream NAME="Stream" API="" STRIDE="56"> + <RmStreamChannel NAME="Position_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="0" USAGE_INDEX="0" ATTRIBUTE_NAME="a_vertex"/> + <RmStreamChannel NAME="TexCoord_0" API="" DATA_SIZE="8" DATA_TYPE="1" REGISTER="0" USAGE="5" USAGE_INDEX="0" ATTRIBUTE_NAME="a_texcoord0"/> + <RmStreamChannel NAME="Normal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="3" USAGE_INDEX="0" ATTRIBUTE_NAME="a_normal"/> + <RmStreamChannel NAME="Binormal_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="7" USAGE_INDEX="0" ATTRIBUTE_NAME="a_binormal"/> + <RmStreamChannel NAME="Tangent_0" API="" DATA_SIZE="12" DATA_TYPE="2" REGISTER="0" USAGE="6" USAGE_INDEX="0" ATTRIBUTE_NAME="a_tangent"/> + </RmStream> + </RmStreamMap> + <RmModelData NAME="SkyDome" API="" FILE_NAME=".\Sphere.3ds" ORIENTATION="0"/> + <RmModelData NAME="Teapot" API="" FILE_NAME=".\Teapot.3ds" ORIENTATION="0"/> + <RmGLESPass NAME="Skybox" API="OpenGL ES" PASS_INDEX="0" ENABLED="TRUE"> + <RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/> + <RmModelReference NAME="SkyDome" API=""/> + <RmRenderStateBlock NAME="Render State" API="OpenGL ES"> + <RmState NAME="GL_CullMode" API="OpenGL ES" STATE="8" VALUE="1" USAGE="RENDER_STATE"/> + <RmState NAME="GL_WriteMaskDepth" API="OpenGL ES" STATE="54" VALUE="0" USAGE="RENDER_STATE"/> + </RmRenderStateBlock> + <RmGLESShader NAME="Fragment Program" API="OpenGL ES" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[ +precision mediump float; + +uniform samplerCube s_cubeMap; + +varying vec3 v_texcoord; + + +void main(void) +{ + gl_FragColor = textureCube( s_cubeMap, v_texcoord ); +}]]></RmShaderCode></RmGLESShader> + <RmGLESShader NAME="Vertex Program" API="OpenGL ES" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[ +uniform vec4 u_viewPosition; +uniform mat4 u_matViewProjection; +attribute vec4 a_vertex; +varying vec3 v_texcoord; +void main(void) +{ + vec3 position = a_vertex.xyz; + + position += u_viewPosition.xyz; + + gl_Position = u_matViewProjection * vec4( position, 1.0 ); + + v_texcoord = a_vertex.xyz; +}]]></RmShaderCode></RmGLESShader> + <RmStreamMapReference NAME="Stream Mapping" API=""/> + <RmTextureObject NAME="s_cubeMap" API="OpenGL ES" STATE_INDEX="0" VERTEX_TEXTURE="FALSE"> + <RmTextureReference NAME="cubemap" API=""/> + </RmTextureObject> + <RmSampler NAME="s_cubeMap" API="" REGISTER="-1"/> + <RmShaderConstant NAME="u_viewPosition" API="" REGISTER="-1"/> + <RmShaderConstant NAME="u_matViewProjection" API="" REGISTER="-1"/> + </RmGLESPass> + <RmGLESPass NAME="Teapot" API="OpenGL ES" PASS_INDEX="1" ENABLED="TRUE"> + <RmCameraReference NAME="Camera" API="" USE_ACTIVE_CAMERA="FALSE"/> + <RmModelReference NAME="Teapot" API=""/> + <RmRenderStateBlock NAME="Render State" API="OpenGL ES"> + <RmState NAME="GL_CullMode" API="OpenGL ES" STATE="8" VALUE="3" USAGE="RENDER_STATE"/> + <RmState NAME="GL_WriteMaskDepth" API="OpenGL ES" STATE="54" VALUE="1" USAGE="RENDER_STATE"/> + </RmRenderStateBlock> + <RmGLESShader NAME="Vertex Program" API="OpenGL ES" PIXEL_SHADER="FALSE"><RmShaderCode TYPE="TEXT"><![CDATA[ +uniform mat4 u_matViewInverse; +uniform mat4 u_matViewProjection; +uniform vec3 u_lightPosition; +uniform vec3 u_eyePosition; + +varying vec2 v_texcoord; +varying vec3 v_lightDirection; +varying vec3 v_normal; +varying vec3 v_binormal; +varying vec3 v_tangent; + +attribute vec4 a_vertex; +attribute vec2 a_texcoord0; +attribute vec3 a_normal; +attribute vec3 a_binormal; +attribute vec3 a_tangent; + +void main( void ) +{ + // Transform light position into world space + vec3 lightPositionWorld = (u_matViewInverse * vec4(u_lightPosition, 1.0)).xyz; + + // Compute world-space light dirction vector + vec3 lightDirectionWorld = lightPositionWorld - a_vertex.xyz; + + // Pass the world-space light vector to the fragment shader + v_lightDirection = lightDirectionWorld; + + // Transform output position + gl_Position = u_matViewProjection * a_vertex; + + // Pass through other attributes + v_texcoord = a_texcoord0.xy; + v_normal = a_normal; + v_binormal = a_binormal; + v_tangent = a_tangent; + +}]]></RmShaderCode></RmGLESShader> + <RmGLESShader NAME="Fragment Program" API="OpenGL ES" PIXEL_SHADER="TRUE"><RmShaderCode TYPE="TEXT"><![CDATA[ +precision mediump float; + +uniform vec4 u_ambient; +uniform vec4 u_specular; +uniform vec4 u_diffuse; +uniform float u_specularPower; + +uniform sampler2D s_baseMap; +uniform sampler2D s_bumpMap; +uniform samplerCube s_envMap; + + +varying vec2 v_texcoord; +varying vec3 v_lightDirection; +varying vec3 v_normal; +varying vec3 v_binormal; +varying vec3 v_tangent; + +void main( void ) +{ + // Fetch basemap color + vec4 baseColor = texture2D( s_baseMap, v_texcoord ); + + // Fetch the tangent space normal from normal map + vec3 normal = texture2D( s_bumpMap, v_texcoord ).xyz; + + // Scale and bias from [0, 1] to [-1, 1] + normal = normal * 2.0 - 1.0; + + // Construct a matrix to transform from tangent to world space + mat3 tangentToWorldMat = mat3( v_tangent, + v_binormal, + v_normal ); + + // Transform normal to world space and normalize + normal = normalize( tangentToWorldMat * normal ); + + // Normalize the light direction + vec3 lightDirection = normalize( v_lightDirection ); + + // Compute N.L + float nDotL = dot( normal, lightDirection ); + + // Compute reflection vector + vec3 reflection = ( 2.0 * normal * nDotL ) - lightDirection; + + // Use the reflection vector to fetch from the environment map + vec4 envColor = textureCube( s_envMap, reflection ); + + // Output final color + gl_FragColor = 0.25 * baseColor + envColor; +}]]></RmShaderCode></RmGLESShader> + <RmStreamMapReference NAME="Stream Mapping" API=""/> + <RmTextureObject NAME="s_envMap" API="OpenGL ES" STATE_INDEX="2" VERTEX_TEXTURE="FALSE"> + <RmTextureReference NAME="cubemap" API=""/> + </RmTextureObject> + <RmTextureObject NAME="s_baseMap" API="OpenGL ES" STATE_INDEX="0" VERTEX_TEXTURE="FALSE"> + <RmTextureReference NAME="base" API=""/> + <RmState NAME="GL_TextureMinify" API="OpenGL ES" STATE="4" VALUE="6" USAGE="SAMPLER_STATE"/> + <RmState NAME="GL_TextureMagnify" API="OpenGL ES" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/> + </RmTextureObject> + <RmTextureObject NAME="s_bumpMap" API="OpenGL ES" STATE_INDEX="1" VERTEX_TEXTURE="FALSE"> + <RmTextureReference NAME="bump" API=""/> + <RmState NAME="GL_TextureMinify" API="OpenGL ES" STATE="4" VALUE="6" USAGE="SAMPLER_STATE"/> + <RmState NAME="GL_TextureMagnify" API="OpenGL ES" STATE="5" VALUE="1" USAGE="SAMPLER_STATE"/> + </RmTextureObject> + <RmSampler NAME="s_baseMap" API="" REGISTER="-1"/> + <RmSampler NAME="s_bumpMap" API="" REGISTER="-1"/> + <RmSampler NAME="s_envMap" API="" REGISTER="-1"/> + <RmShaderConstant NAME="u_lightPosition" API="" REGISTER="-1"/> + <RmShaderConstant NAME="u_matViewInverse" API="" REGISTER="-1"/> + <RmShaderConstant NAME="u_matViewProjection" API="" REGISTER="-1"/> + </RmGLESPass> + </RmOpenGLESEffect> + </RmEffectWorkspace> +</RENDER_MONKEY> diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/Fieldstone.tga b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Fieldstone.tga Binary files differnew file mode 100644 index 0000000..8acafae --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Fieldstone.tga diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/FieldstoneBumpDOT3.tga b/third_party/gles2_book/Chapter_13/EnvironmentMapping/FieldstoneBumpDOT3.tga Binary files differnew file mode 100644 index 0000000..6290f52 --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/FieldstoneBumpDOT3.tga diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/Snow.dds b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Snow.dds Binary files differnew file mode 100644 index 0000000..62799c2 --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Snow.dds diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/Sphere.3ds b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Sphere.3ds Binary files differnew file mode 100644 index 0000000..108b93d --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Sphere.3ds diff --git a/third_party/gles2_book/Chapter_13/EnvironmentMapping/Teapot.3ds b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Teapot.3ds Binary files differnew file mode 100644 index 0000000..78be5fb --- /dev/null +++ b/third_party/gles2_book/Chapter_13/EnvironmentMapping/Teapot.3ds |