diffNormTemplateMtl.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. R"(<?xml version="1.0" encoding="UTF-8" ?>
  2. <material>
  3. <shaderProgram>
  4. <inputs>
  5. <input><type>mat4</type><name>modelViewProjectionMat</name><value></value><instanced>%instanced%</instanced></input>
  6. <input><type>mat3</type><name>normalMat</name><value></value><instanced>%instanced%</instanced></input>
  7. <input><type>vec2</type><name>specular</name><value>1.0 90.0</value></input>
  8. <input><type>float</type><name>blurring</name><value>0.0</value><const>1</const></input>
  9. <input><type>sampler2D</type><name>diffuseMap</name><value>%diffuseMap%</value></input>
  10. <input><type>sampler2D</type><name>normalMap</name><value>%normalMap%</value></input>
  11. </inputs>
  12. <shader>
  13. <type>vertex</type>
  14. <includes>
  15. <include>shaders/MsCommonVert.glsl</include>
  16. </includes>
  17. <operations>
  18. <operation>
  19. <id>1</id>
  20. <returnType>void</returnType>
  21. <function>writePositionNormalTangentTexCoord</function>
  22. <arguments><argument>modelViewProjectionMat</argument><argument>normalMat</argument></arguments>
  23. </operation>
  24. </operations>
  25. </shader>
  26. <shader>
  27. <type>fragment</type>
  28. <includes>
  29. <include>shaders/MsCommonFrag.glsl</include>
  30. </includes>
  31. <operations>
  32. <operation>
  33. <id>0</id>
  34. <returnType>vec3</returnType>
  35. <function>getNormal</function>
  36. </operation>
  37. <operation>
  38. <id>1</id>
  39. <returnType>vec4</returnType>
  40. <function>getTangent</function>
  41. </operation>
  42. <operation>
  43. <id>2</id>
  44. <returnType>vec2</returnType>
  45. <function>getTextureCoord</function>
  46. </operation>
  47. <operation>
  48. <id>10</id>
  49. <returnType>vec3</returnType>
  50. <function>readRgbFromTexture</function>
  51. <arguments>
  52. <argument>diffuseMap</argument>
  53. <argument>out2</argument>
  54. </arguments>
  55. </operation>
  56. <operation>
  57. <id>20</id>
  58. <returnType>vec3</returnType>
  59. <function>getNormalFromTexture</function>
  60. <arguments>
  61. <argument>out0</argument>
  62. <argument>out1</argument>
  63. <argument>normalMap</argument>
  64. <argument>out2</argument>
  65. </arguments>
  66. </operation>
  67. <operation>
  68. <id>30</id>
  69. <returnType>void</returnType>
  70. <function>writeFais</function>
  71. <arguments>
  72. <argument>out10</argument>
  73. <argument>out20</argument>
  74. <argument>specular</argument>
  75. <argument>blurring</argument>
  76. </arguments>
  77. </operation>
  78. </operations>
  79. </shader>
  80. </shaderProgram>
  81. </material>)"