Browse Source

Add sponza assets

Panagiotis Christopoulos Charitos 8 years ago
parent
commit
e6860eeede
100 changed files with 923 additions and 0 deletions
  1. BIN
      samples/sponza/assets/Background_Albedo.ankitex
  2. BIN
      samples/sponza/assets/Background_Normal.ankitex
  3. BIN
      samples/sponza/assets/Background_Roughness.ankitex
  4. BIN
      samples/sponza/assets/ChainTexture_Albedo.ankitex
  5. BIN
      samples/sponza/assets/ChainTexture_Metallic.ankitex
  6. BIN
      samples/sponza/assets/ChainTexture_Normal.ankitex
  7. BIN
      samples/sponza/assets/ChainTexture_Roughness.ankitex
  8. BIN
      samples/sponza/assets/Cube.ankimesh
  9. BIN
      samples/sponza/assets/Lion_Albedo.ankitex
  10. BIN
      samples/sponza/assets/Lion_Normal.ankitex
  11. BIN
      samples/sponza/assets/Lion_Roughness.ankitex
  12. 118 0
      samples/sponza/assets/Material__57_001-material.ankimtl
  13. BIN
      samples/sponza/assets/Sponza_Arch_diffuse.ankitex
  14. BIN
      samples/sponza/assets/Sponza_Arch_normal.ankitex
  15. BIN
      samples/sponza/assets/Sponza_Arch_roughness.ankitex
  16. BIN
      samples/sponza/assets/Sponza_Bricks_a_Albedo.ankitex
  17. BIN
      samples/sponza/assets/Sponza_Bricks_a_Normal.ankitex
  18. BIN
      samples/sponza/assets/Sponza_Bricks_a_Roughness.ankitex
  19. BIN
      samples/sponza/assets/Sponza_Ceiling_diffuse.ankitex
  20. BIN
      samples/sponza/assets/Sponza_Ceiling_normal.ankitex
  21. BIN
      samples/sponza/assets/Sponza_Ceiling_roughness.ankitex
  22. BIN
      samples/sponza/assets/Sponza_Column_a_diffuse.ankitex
  23. BIN
      samples/sponza/assets/Sponza_Column_a_normal.ankitex
  24. BIN
      samples/sponza/assets/Sponza_Column_a_roughness.ankitex
  25. BIN
      samples/sponza/assets/Sponza_Column_b_diffuse.ankitex
  26. BIN
      samples/sponza/assets/Sponza_Column_b_normal.ankitex
  27. BIN
      samples/sponza/assets/Sponza_Column_b_roughness.ankitex
  28. BIN
      samples/sponza/assets/Sponza_Column_c_diffuse.ankitex
  29. BIN
      samples/sponza/assets/Sponza_Column_c_normal.ankitex
  30. BIN
      samples/sponza/assets/Sponza_Column_c_roughness.ankitex
  31. BIN
      samples/sponza/assets/Sponza_Curtain_Blue_diffuse.ankitex
  32. BIN
      samples/sponza/assets/Sponza_Curtain_Green_diffuse.ankitex
  33. BIN
      samples/sponza/assets/Sponza_Curtain_Red_diffuse.ankitex
  34. BIN
      samples/sponza/assets/Sponza_Curtain_Red_normal.ankitex
  35. BIN
      samples/sponza/assets/Sponza_Curtain_metallic.ankitex
  36. BIN
      samples/sponza/assets/Sponza_Curtain_roughness.ankitex
  37. BIN
      samples/sponza/assets/Sponza_Details_diffuse.ankitex
  38. BIN
      samples/sponza/assets/Sponza_Details_metallic.ankitex
  39. BIN
      samples/sponza/assets/Sponza_Details_normal.ankitex
  40. BIN
      samples/sponza/assets/Sponza_Details_roughness.ankitex
  41. BIN
      samples/sponza/assets/Sponza_Fabric_Blue_diffuse.ankitex
  42. BIN
      samples/sponza/assets/Sponza_Fabric_Green_diffuse.ankitex
  43. BIN
      samples/sponza/assets/Sponza_Fabric_Red_diffuse.ankitex
  44. BIN
      samples/sponza/assets/Sponza_Fabric_Red_normal.ankitex
  45. BIN
      samples/sponza/assets/Sponza_Fabric_metallic.ankitex
  46. BIN
      samples/sponza/assets/Sponza_Fabric_roughness.ankitex
  47. BIN
      samples/sponza/assets/Sponza_FlagPole_diffuse.ankitex
  48. BIN
      samples/sponza/assets/Sponza_FlagPole_normal.ankitex
  49. BIN
      samples/sponza/assets/Sponza_FlagPole_roughness.ankitex
  50. BIN
      samples/sponza/assets/Sponza_Floor_diffuse.ankitex
  51. BIN
      samples/sponza/assets/Sponza_Floor_normal.ankitex
  52. BIN
      samples/sponza/assets/Sponza_Floor_roughness.ankitex
  53. BIN
      samples/sponza/assets/Sponza_Roof_diffuse.ankitex
  54. BIN
      samples/sponza/assets/Sponza_Roof_normal.ankitex
  55. BIN
      samples/sponza/assets/Sponza_Roof_roughness.ankitex
  56. BIN
      samples/sponza/assets/Sponza_Thorn_diffuse.ankitex
  57. BIN
      samples/sponza/assets/Sponza_Thorn_normal.ankitex
  58. BIN
      samples/sponza/assets/Sponza_Thorn_roughness.ankitex
  59. BIN
      samples/sponza/assets/VaseHanging_diffuse.ankitex
  60. BIN
      samples/sponza/assets/VaseHanging_normal.ankitex
  61. BIN
      samples/sponza/assets/VaseHanging_roughness.ankitex
  62. BIN
      samples/sponza/assets/VasePlant_diffuse.ankitex
  63. BIN
      samples/sponza/assets/VasePlant_normal.ankitex
  64. BIN
      samples/sponza/assets/VasePlant_roughness.ankitex
  65. BIN
      samples/sponza/assets/VaseRound_diffuse.ankitex
  66. BIN
      samples/sponza/assets/VaseRound_normal.ankitex
  67. BIN
      samples/sponza/assets/VaseRound_roughness.ankitex
  68. BIN
      samples/sponza/assets/Vase_diffuse.ankitex
  69. BIN
      samples/sponza/assets/Vase_normal.ankitex
  70. BIN
      samples/sponza/assets/Vase_roughness.ankitex
  71. BIN
      samples/sponza/assets/arc_2.ankimesh
  72. 9 0
      samples/sponza/assets/arc_2arch-material.ankimdl
  73. 118 0
      samples/sponza/assets/arch-material.ankimtl
  74. BIN
      samples/sponza/assets/arch_a.ankimesh
  75. 9 0
      samples/sponza/assets/arch_aarch-material.ankimdl
  76. BIN
      samples/sponza/assets/arch_support_big.ankimesh
  77. 9 0
      samples/sponza/assets/arch_support_bigcolumn_c-material.ankimdl
  78. BIN
      samples/sponza/assets/arch_support_med.ankimesh
  79. 9 0
      samples/sponza/assets/arch_support_medcolumn_c-material.ankimdl
  80. BIN
      samples/sponza/assets/arch_support_tiny.ankimesh
  81. 9 0
      samples/sponza/assets/arch_support_tinycolumn_c-material.ankimdl
  82. 118 0
      samples/sponza/assets/bricks-material.ankimtl
  83. BIN
      samples/sponza/assets/carpet.ankimesh
  84. 9 0
      samples/sponza/assets/carpetfabric_a-material.ankimdl
  85. 9 0
      samples/sponza/assets/carpetfabric_d-material.ankimdl
  86. 9 0
      samples/sponza/assets/carpetfabric_e-material.ankimdl
  87. 118 0
      samples/sponza/assets/ceiling-material.ankimtl
  88. BIN
      samples/sponza/assets/ceiling.ankimesh
  89. 9 0
      samples/sponza/assets/ceilingceiling-material.ankimdl
  90. 98 0
      samples/sponza/assets/chain-material.ankimtl
  91. 118 0
      samples/sponza/assets/column_a-material.ankimtl
  92. BIN
      samples/sponza/assets/column_a.001.ankimesh
  93. 9 0
      samples/sponza/assets/column_a.001column_a-material.ankimdl
  94. BIN
      samples/sponza/assets/column_a.ankimesh
  95. 9 0
      samples/sponza/assets/column_acolumn_a-material.ankimdl
  96. 118 0
      samples/sponza/assets/column_b-material.ankimtl
  97. BIN
      samples/sponza/assets/column_b.ankimesh
  98. BIN
      samples/sponza/assets/column_b_top.ankimesh
  99. 9 0
      samples/sponza/assets/column_b_topcolumn_b-material.ankimdl
  100. 9 0
      samples/sponza/assets/column_bcolumn_b-material.ankimdl

BIN
samples/sponza/assets/Background_Albedo.ankitex


BIN
samples/sponza/assets/Background_Normal.ankitex


BIN
samples/sponza/assets/Background_Roughness.ankitex


BIN
samples/sponza/assets/ChainTexture_Albedo.ankitex


BIN
samples/sponza/assets/ChainTexture_Metallic.ankitex


BIN
samples/sponza/assets/ChainTexture_Normal.ankitex


BIN
samples/sponza/assets/ChainTexture_Roughness.ankitex


BIN
samples/sponza/assets/Cube.ankimesh


BIN
samples/sponza/assets/Lion_Albedo.ankitex


BIN
samples/sponza/assets/Lion_Normal.ankitex


BIN
samples/sponza/assets/Lion_Roughness.ankitex


+ 118 - 0
samples/sponza/assets/Material__57_001-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.039993 0.039993 0.039993</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/VasePlant_roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/VasePlant_diffuse.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/VasePlant_normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.250000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/Sponza_Arch_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Arch_normal.ankitex


BIN
samples/sponza/assets/Sponza_Arch_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Bricks_a_Albedo.ankitex


BIN
samples/sponza/assets/Sponza_Bricks_a_Normal.ankitex


BIN
samples/sponza/assets/Sponza_Bricks_a_Roughness.ankitex


BIN
samples/sponza/assets/Sponza_Ceiling_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Ceiling_normal.ankitex


BIN
samples/sponza/assets/Sponza_Ceiling_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Column_a_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Column_a_normal.ankitex


BIN
samples/sponza/assets/Sponza_Column_a_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Column_b_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Column_b_normal.ankitex


BIN
samples/sponza/assets/Sponza_Column_b_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Column_c_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Column_c_normal.ankitex


BIN
samples/sponza/assets/Sponza_Column_c_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_Blue_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_Green_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_Red_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_Red_normal.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_metallic.ankitex


BIN
samples/sponza/assets/Sponza_Curtain_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Details_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Details_metallic.ankitex


BIN
samples/sponza/assets/Sponza_Details_normal.ankitex


BIN
samples/sponza/assets/Sponza_Details_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_Blue_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_Green_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_Red_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_Red_normal.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_metallic.ankitex


BIN
samples/sponza/assets/Sponza_Fabric_roughness.ankitex


BIN
samples/sponza/assets/Sponza_FlagPole_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_FlagPole_normal.ankitex


BIN
samples/sponza/assets/Sponza_FlagPole_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Floor_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Floor_normal.ankitex


BIN
samples/sponza/assets/Sponza_Floor_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Roof_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Roof_normal.ankitex


BIN
samples/sponza/assets/Sponza_Roof_roughness.ankitex


BIN
samples/sponza/assets/Sponza_Thorn_diffuse.ankitex


BIN
samples/sponza/assets/Sponza_Thorn_normal.ankitex


BIN
samples/sponza/assets/Sponza_Thorn_roughness.ankitex


BIN
samples/sponza/assets/VaseHanging_diffuse.ankitex


BIN
samples/sponza/assets/VaseHanging_normal.ankitex


BIN
samples/sponza/assets/VaseHanging_roughness.ankitex


BIN
samples/sponza/assets/VasePlant_diffuse.ankitex


BIN
samples/sponza/assets/VasePlant_normal.ankitex


BIN
samples/sponza/assets/VasePlant_roughness.ankitex


BIN
samples/sponza/assets/VaseRound_diffuse.ankitex


BIN
samples/sponza/assets/VaseRound_normal.ankitex


BIN
samples/sponza/assets/VaseRound_roughness.ankitex


BIN
samples/sponza/assets/Vase_diffuse.ankitex


BIN
samples/sponza/assets/Vase_normal.ankitex


BIN
samples/sponza/assets/Vase_roughness.ankitex


BIN
samples/sponza/assets/arc_2.ankimesh


+ 9 - 0
samples/sponza/assets/arc_2arch-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/arc_2.ankimesh</mesh>
+			<material>assets/arch-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 118 - 0
samples/sponza/assets/arch-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.040000 0.040000 0.040000</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/Sponza_Arch_roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/Sponza_Arch_diffuse.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/Sponza_Arch_normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/arch_a.ankimesh


+ 9 - 0
samples/sponza/assets/arch_aarch-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/arch_a.ankimesh</mesh>
+			<material>assets/arch-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

BIN
samples/sponza/assets/arch_support_big.ankimesh


+ 9 - 0
samples/sponza/assets/arch_support_bigcolumn_c-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/arch_support_big.ankimesh</mesh>
+			<material>assets/column_c-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

BIN
samples/sponza/assets/arch_support_med.ankimesh


+ 9 - 0
samples/sponza/assets/arch_support_medcolumn_c-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/arch_support_med.ankimesh</mesh>
+			<material>assets/column_c-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

BIN
samples/sponza/assets/arch_support_tiny.ankimesh


+ 9 - 0
samples/sponza/assets/arch_support_tinycolumn_c-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/arch_support_tiny.ankimesh</mesh>
+			<material>assets/column_c-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 118 - 0
samples/sponza/assets/bricks-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.040000 0.040000 0.040000</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/Sponza_Bricks_a_Roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/Sponza_Bricks_a_Albedo.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/Sponza_Bricks_a_Normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/carpet.ankimesh


+ 9 - 0
samples/sponza/assets/carpetfabric_a-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/carpet.ankimesh</mesh>
+			<material>assets/fabric_a-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 9 - 0
samples/sponza/assets/carpetfabric_d-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/carpet.ankimesh</mesh>
+			<material>assets/fabric_d-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 9 - 0
samples/sponza/assets/carpetfabric_e-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/carpet.ankimesh</mesh>
+			<material>assets/fabric_e-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 118 - 0
samples/sponza/assets/ceiling-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.040000 0.040000 0.040000</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/Sponza_Ceiling_roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/Sponza_Ceiling_diffuse.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/Sponza_Ceiling_normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/ceiling.ankimesh


+ 9 - 0
samples/sponza/assets/ceilingceiling-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/ceiling.ankimesh</mesh>
+			<material>assets/ceiling-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 98 - 0
samples/sponza/assets/chain-material.ankimtl

@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.039993 0.039993 0.039993</value></input>
+				<input><type>float</type><name>roughness</name><const>1</const><value>0.097847</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/ChainTexture_Albedo.ankitex</value></input>
+				 
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				 
+				
+				
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out0</argument>
+						<argument>uSpecularColor</argument>
+						<argument>roughness</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

+ 118 - 0
samples/sponza/assets/column_a-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.040000 0.040000 0.040000</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/Sponza_Column_a_roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/Sponza_Column_a_diffuse.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/Sponza_Column_a_normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/column_a.001.ankimesh


+ 9 - 0
samples/sponza/assets/column_a.001column_a-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/column_a.001.ankimesh</mesh>
+			<material>assets/column_a-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

BIN
samples/sponza/assets/column_a.ankimesh


+ 9 - 0
samples/sponza/assets/column_acolumn_a-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/column_a.ankimesh</mesh>
+			<material>assets/column_a-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 118 - 0
samples/sponza/assets/column_b-material.ankimtl

@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<material>
+	<programs>
+		<program>
+			<type>vert</type>
+			<includes>
+				<include>shaders/MsCommonVert.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>mat4</type><name>anki_mvp</name></input>
+				<input><type>mat3</type><name>anki_n</name><inShadow>0</inShadow></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>void</returnType>
+					<function>writePositionAndUv</function>
+					<arguments><argument>anki_mvp</argument></arguments>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>void</returnType>
+					<function>writeNormalAndTangent</function>
+					<arguments><argument>anki_n</argument></arguments>
+				</operation>
+				 
+			</operations>
+		</program>
+		<program>
+			<type>frag</type>
+
+			<includes>
+				<include>shaders/MsCommonFrag.glsl</include>
+			</includes>
+
+			<inputs>
+				<input><type>vec3</type><name>uSpecularColor</name><value>0.040000 0.040000 0.040000</value></input>
+				<input><type>sampler2D</type><name>roughness</name><value>assets/Sponza_Column_b_roughness.ankitex</value></input>
+				<input><type>sampler2D</type><name>uDiffuseColor</name><value>assets/Sponza_Column_b_diffuse.ankitex</value></input>
+				<input><type>sampler2D</type><name>uNormal</name><value>assets/Sponza_Column_b_normal.ankitex</value></input>
+				<input><type>float</type><name>subsurface</name><const>1</const><value>0.000000</value></input>
+				<input><type>float</type><name>emission</name><value>0.000000</value><const>1</const></input>
+				<input><type>float</type><name>metallic</name><value>0.000000</value><const>1</const></input>
+				 
+			</inputs>
+
+			<operations>
+				<operation>
+					<id>0</id>
+					<returnType>vec3</returnType>
+					<function>getNormal</function>
+				</operation>
+				<operation>
+					<id>1</id>
+					<returnType>vec4</returnType>
+					<function>getTangent</function>
+				</operation>
+				<operation>
+					<id>2</id>
+					<returnType>vec2</returnType>
+					<function>getTextureCoord</function>
+				</operation>
+				 
+				
+				<operation>
+					<id>10</id>
+					<returnType>vec3</returnType>
+					<function>readRgbFromTexture</function>
+					<arguments>
+						<argument>uDiffuseColor</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				<operation>
+					<id>20</id>
+					<returnType>vec3</returnType>
+					<function>readNormalFromTexture</function>
+					<arguments>
+						<argument>out0</argument>
+						<argument>out1</argument>
+						<argument>uNormal</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>60</id>
+					<returnType>float</returnType>
+					<function>readRFromTexture</function>
+					<arguments>
+						<argument>roughness</argument>
+						<argument>out2</argument>
+					</arguments>
+				</operation>
+				
+				
+				<operation>
+					<id>100</id>
+					<returnType>void</returnType>
+					<function>writeRts</function>
+					<arguments>
+						<argument>out10</argument>
+						<argument>out20</argument>
+						<argument>uSpecularColor</argument>
+						<argument>out60</argument>
+						<argument>subsurface</argument>
+						<argument>emission</argument>
+						<argument>metallic</argument>
+					</arguments>
+				</operation>
+			</operations>
+		</program>
+	</programs>	</material>

BIN
samples/sponza/assets/column_b.ankimesh


BIN
samples/sponza/assets/column_b_top.ankimesh


+ 9 - 0
samples/sponza/assets/column_b_topcolumn_b-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/column_b_top.ankimesh</mesh>
+			<material>assets/column_b-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

+ 9 - 0
samples/sponza/assets/column_bcolumn_b-material.ankimdl

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<model>
+	<modelPatches>
+		<modelPatch>
+			<mesh>assets/column_b.ankimesh</mesh>
+			<material>assets/column_b-material.ankimtl</material>
+		</modelPatch>
+	</modelPatches>
+</model>

Some files were not shown because too many files changed in this diff