@tushar-br/editing-pack 1.0.195 → 1.0.196

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (463) hide show
  1. package/package.json +1 -1
  2. package/staging_area/Blender/BlendThumb.dll +0 -0
  3. package/staging_area/Blender/BlendThumb.lib +0 -0
  4. package/staging_area/Blender/blender.shared/usd_ms.dll +0 -0
  5. package/staging_area/Blender/blender.shared/vulkan-1.dll +0 -0
  6. package/staging_area/Blender/blender_cpu_check.dll +0 -0
  7. package/staging_area/Blender/blender_cpu_check.lib +0 -0
  8. package/staging_area/Blender/blender_debug_cycles.cmd +20 -0
  9. package/staging_area/Blender/blender_debug_gpu.cmd +21 -0
  10. package/staging_area/Blender/blender_debug_gpu_glitchworkaround.cmd +21 -0
  11. package/staging_area/Blender/blender_debug_log.cmd +20 -0
  12. package/staging_area/Blender/blender_factory_startup.cmd +20 -0
  13. package/staging_area/Blender/blender_factory_startup_vulkan.cmd +20 -0
  14. package/staging_area/Blender/blender_oculus.cmd +14 -0
  15. package/staging_area/Blender/blender_startup_opengl.cmd +4 -0
  16. package/staging_area/Blender/blender_startup_vulkan.cmd +4 -0
  17. package/staging_area/Blender/blender_system_info.cmd +16 -0
  18. package/staging_area/Blender/copyright.txt +39 -0
  19. package/staging_area/Blender/blender.shared/shaderc_shared.dll +0 -0
  20. package/staging_area/Blender/blender.shared/sndfile.dll +0 -0
  21. package/staging_area/Blender/blender.shared/swresample-5.dll +0 -0
  22. package/staging_area/Blender/blender.shared/swscale-8.dll +0 -0
  23. package/staging_area/Blender/blender.shared/sycl8.dll +0 -0
  24. package/staging_area/Blender/blender.shared/tbb12.dll +0 -0
  25. package/staging_area/Blender/blender.shared/tbbmalloc.dll +0 -0
  26. package/staging_area/Blender/blender.shared/tbbmalloc_proxy.dll +0 -0
  27. package/staging_area/Blender/blender.shared/ur_adapter_level_zero.dll +0 -0
  28. package/staging_area/Blender/blender.shared/ur_adapter_level_zerod.dll +0 -0
  29. package/staging_area/Blender/blender.shared/ur_loader.dll +0 -0
  30. package/staging_area/Blender/blender.shared/ur_loaderd.dll +0 -0
  31. package/staging_area/Blender/blender.shared/ur_win_proxy_loader.dll +0 -0
  32. package/staging_area/Blender/blender.shared/ur_win_proxy_loaderd.dll +0 -0
  33. package/staging_area/Blender/blender.shared/usd/ar/resources/plugInfo.json +0 -23
  34. package/staging_area/Blender/blender.shared/usd/esf/resources/plugInfo.json +0 -15
  35. package/staging_area/Blender/blender.shared/usd/esfUsd/resources/plugInfo.json +0 -15
  36. package/staging_area/Blender/blender.shared/usd/exec/resources/plugInfo.json +0 -15
  37. package/staging_area/Blender/blender.shared/usd/execGeom/resources/plugInfo.json +0 -23
  38. package/staging_area/Blender/blender.shared/usd/execUsd/resources/plugInfo.json +0 -15
  39. package/staging_area/Blender/blender.shared/usd/glf/resources/plugInfo.json +0 -14
  40. package/staging_area/Blender/blender.shared/usd/glf/resources/shaders/pcfShader.glslfx +0 -124
  41. package/staging_area/Blender/blender.shared/usd/glf/resources/shaders/simpleLighting.glslfx +0 -543
  42. package/staging_area/Blender/blender.shared/usd/hd/resources/codegenTemplates/schemaClass.cpp +0 -265
  43. package/staging_area/Blender/blender.shared/usd/hd/resources/codegenTemplates/schemaClass.h +0 -310
  44. package/staging_area/Blender/blender.shared/usd/hd/resources/plugInfo.json +0 -12
  45. package/staging_area/Blender/blender.shared/usd/hdGp/resources/plugInfo.json +0 -24
  46. package/staging_area/Blender/blender.shared/usd/hdSt/resources/plugInfo.json +0 -76
  47. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/basisCurves.glslfx +0 -1365
  48. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/compute.glslfx +0 -439
  49. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/domeLight.glslfx +0 -280
  50. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/edgeId.glslfx +0 -237
  51. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackLighting.glslfx +0 -59
  52. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackLightingShader.glslfx +0 -27
  53. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackMaterialNetwork.glslfx +0 -47
  54. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/fallbackVolume.glslfx +0 -97
  55. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/frustumCull.glslfx +0 -448
  56. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/imageShader.glslfx +0 -103
  57. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/instancing.glslfx +0 -217
  58. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/invalidMaterialNetwork.glslfx +0 -53
  59. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/mesh.glslfx +0 -1519
  60. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshFaceCull.glslfx +0 -40
  61. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshNormal.glslfx +0 -201
  62. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/meshWire.glslfx +0 -326
  63. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/overlayShader.glslfx +0 -66
  64. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/pointDisk.glslfx +0 -103
  65. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/pointId.glslfx +0 -87
  66. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/points.glslfx +0 -155
  67. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/ptexTexture.glslfx +0 -371
  68. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/renderPass.glslfx +0 -319
  69. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/renderPassShader.glslfx +0 -53
  70. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/simpleLightingShader.glslfx +0 -41
  71. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/surfaceHelpers.glslfx +0 -80
  72. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/terminals.glslfx +0 -458
  73. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/visibility.glslfx +0 -80
  74. package/staging_area/Blender/blender.shared/usd/hdSt/resources/shaders/volume.glslfx +0 -631
  75. package/staging_area/Blender/blender.shared/usd/hdSt/resources/textures/fallbackBlackDomeLight.png +0 -0
  76. package/staging_area/Blender/blender.shared/usd/hdStorm/resources/plugInfo.json +0 -22
  77. package/staging_area/Blender/blender.shared/usd/hdsi/resources/plugInfo.json +0 -20
  78. package/staging_area/Blender/blender.shared/usd/hdx/resources/plugInfo.json +0 -14
  79. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/boundingBox.glslfx +0 -52
  80. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/colorChannel.glslfx +0 -53
  81. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/colorCorrection.glslfx +0 -57
  82. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/fullscreen.glslfx +0 -48
  83. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/oitResolveImageShader.glslfx +0 -93
  84. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/outline.glslfx +0 -138
  85. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPass.glslfx +0 -405
  86. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorAndSelectionShader.glslfx +0 -56
  87. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorShader.glslfx +0 -55
  88. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassColorWithOccludedSelectionShader.glslfx +0 -55
  89. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitOpaqueShader.glslfx +0 -53
  90. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitShader.glslfx +0 -54
  91. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassOitVolumeShader.glslfx +0 -53
  92. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassPickingShader.glslfx +0 -51
  93. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/renderPassShadowShader.glslfx +0 -53
  94. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/selection.glslfx +0 -476
  95. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/skydome.glslfx +0 -46
  96. package/staging_area/Blender/blender.shared/usd/hdx/resources/shaders/visualize.glslfx +0 -107
  97. package/staging_area/Blender/blender.shared/usd/hdx/resources/textures/StinsonBeach.hdr +0 -0
  98. package/staging_area/Blender/blender.shared/usd/hdx/resources/textures/StinsonBeach.tex +0 -0
  99. package/staging_area/Blender/blender.shared/usd/hgiGL/resources/plugInfo.json +0 -18
  100. package/staging_area/Blender/blender.shared/usd/hgiVulkan/resources/plugInfo.json +0 -18
  101. package/staging_area/Blender/blender.shared/usd/hio/resources/plugInfo.json +0 -25
  102. package/staging_area/Blender/blender.shared/usd/hioOiio/resources/plugInfo.json +0 -20
  103. package/staging_area/Blender/blender.shared/usd/hioOpenVDB/resources/plugInfo.json +0 -20
  104. package/staging_area/Blender/blender.shared/usd/plugInfo.json +0 -5
  105. package/staging_area/Blender/blender.shared/usd/sdf/resources/plugInfo.json +0 -94
  106. package/staging_area/Blender/blender.shared/usd/sdr/resources/plugInfo.json +0 -21
  107. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/CMakeLists.txt +0 -15
  108. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/__init__.py +0 -10
  109. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/api.h +0 -30
  110. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/generatedSchema.classes.txt +0 -16
  111. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/generatedSchema.module.h +0 -11
  112. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/module.cpp +0 -18
  113. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/moduleDeps.cpp +0 -27
  114. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/plugInfo.json +0 -15
  115. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schema.usda +0 -12
  116. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaClass.cpp +0 -438
  117. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaClass.h +0 -489
  118. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/schemaUserDoc.usda +0 -20
  119. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/tokens.cpp +0 -30
  120. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/tokens.h +0 -74
  121. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/wrapSchemaClass.cpp +0 -328
  122. package/staging_area/Blender/blender.shared/usd/usd/resources/codegenTemplates/wrapTokens.cpp +0 -25
  123. package/staging_area/Blender/blender.shared/usd/usd/resources/generatedSchema.usda +0 -146
  124. package/staging_area/Blender/blender.shared/usd/usd/resources/plugInfo.json +0 -125
  125. package/staging_area/Blender/blender.shared/usd/usd/resources/usd/schema.usda +0 -538
  126. package/staging_area/Blender/blender.shared/usd/usdGeom/resources/generatedSchema.usda +0 -2689
  127. package/staging_area/Blender/blender.shared/usd/usdGeom/resources/plugInfo.json +0 -433
  128. package/staging_area/Blender/blender.shared/usd/usdGeom/resources/usdGeom/schema.usda +0 -2775
  129. package/staging_area/Blender/blender.shared/usd/usdGeomValidators/resources/plugInfo.json +0 -39
  130. package/staging_area/Blender/blender.shared/usd/usdHydra/resources/generatedSchema.usda +0 -28
  131. package/staging_area/Blender/blender.shared/usd/usdHydra/resources/plugInfo.json +0 -38
  132. package/staging_area/Blender/blender.shared/usd/usdHydra/resources/shaders/empty.glslfx +0 -18
  133. package/staging_area/Blender/blender.shared/usd/usdHydra/resources/shaders/shaderDefs.usda +0 -252
  134. package/staging_area/Blender/blender.shared/usd/usdHydra/resources/usdHydra/schema.usda +0 -201
  135. package/staging_area/Blender/blender.shared/usd/usdImaging/resources/plugInfo.json +0 -340
  136. package/staging_area/Blender/blender.shared/usd/usdImagingGL/resources/plugInfo.json +0 -12
  137. package/staging_area/Blender/blender.shared/usd/usdLux/resources/generatedSchema.usda +0 -1165
  138. package/staging_area/Blender/blender.shared/usd/usdLux/resources/plugInfo.json +0 -266
  139. package/staging_area/Blender/blender.shared/usd/usdLux/resources/usdLux/schema.usda +0 -1511
  140. package/staging_area/Blender/blender.shared/usd/usdMedia/resources/generatedSchema.usda +0 -95
  141. package/staging_area/Blender/blender.shared/usd/usdMedia/resources/plugInfo.json +0 -40
  142. package/staging_area/Blender/blender.shared/usd/usdMedia/resources/usdMedia/schema.usda +0 -214
  143. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/generatedSchema.usda +0 -20
  144. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/disney_principled.mtlx +0 -140
  145. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/gltf_pbr.mtlx +0 -695
  146. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_add.mtlx +0 -52
  147. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_conductor.mtlx +0 -123
  148. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_dielectric.mtlx +0 -163
  149. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_diffuse.mtlx +0 -45
  150. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_emission.mtlx +0 -20
  151. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_generalized_schlick.mtlx +0 -172
  152. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_iridescence.mtlx +0 -103
  153. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_layer.mtlx +0 -27
  154. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_mix.mtlx +0 -41
  155. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_sheen.mtlx +0 -41
  156. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_sss.mtlx +0 -60
  157. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_surface.mtlx +0 -28
  158. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/lama/lama_translucent.mtlx +0 -22
  159. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/open_pbr_surface.mtlx +0 -676
  160. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/standard_surface.mtlx +0 -431
  161. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/open_pbr_to_standard_surface.mtlx +0 -362
  162. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_gltf_pbr.mtlx +0 -166
  163. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_open_pbr.mtlx +0 -309
  164. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/translation/standard_surface_to_usd.mtlx +0 -128
  165. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/bxdf/usd_preview_surface.mtlx +0 -438
  166. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/cmlib/cmlib_defs.mtlx +0 -110
  167. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/cmlib/cmlib_ng.mtlx +0 -392
  168. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/lights_genglsl_impl.mtlx +0 -13
  169. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_directional_light.glsl +0 -5
  170. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_point_light.glsl +0 -8
  171. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genglsl/mx_spot_light.glsl +0 -13
  172. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/lights_genmsl_impl.mtlx +0 -13
  173. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_directional_light.metal +0 -5
  174. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_point_light.metal +0 -8
  175. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/genmsl/mx_spot_light.metal +0 -13
  176. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/lights/lights_defs.mtlx +0 -53
  177. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/core.mdl +0 -206
  178. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/hsv.mdl +0 -80
  179. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/noise.mdl +0 -759
  180. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib.mdl +0 -30
  181. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_10.mdl +0 -234
  182. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_6.mdl +0 -1083
  183. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_7.mdl +0 -265
  184. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_8.mdl +0 -36
  185. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/pbrlib_1_9.mdl +0 -373
  186. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/sampling.mdl +0 -182
  187. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib.mdl +0 -18
  188. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_10.mdl +0 -18
  189. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_6.mdl +0 -4474
  190. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_7.mdl +0 -18
  191. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_8.mdl +0 -444
  192. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/mdl/materialx/stdlib_1_9.mdl +0 -388
  193. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genglsl/nprlib_genglsl_impl.mtlx +0 -17
  194. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genmdl/nprlib_genmdl_impl.mtlx +0 -17
  195. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genmsl/nprlib_genmsl_impl.mtlx +0 -17
  196. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/genosl/nprlib_genosl_impl.mtlx +0 -17
  197. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/nprlib_defs.mtlx +0 -55
  198. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/nprlib/nprlib_ng.mtlx +0 -114
  199. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_closure_type.glsl +0 -17
  200. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_fis.glsl +0 -69
  201. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_none.glsl +0 -11
  202. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_environment_prefilter.glsl +0 -30
  203. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_generate_albedo_table.glsl +0 -10
  204. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_generate_prefilter_env.glsl +0 -66
  205. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet.glsl +0 -106
  206. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_diffuse.glsl +0 -199
  207. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_sheen.glsl +0 -189
  208. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_microfacet_specular.glsl +0 -510
  209. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_shadow.glsl +0 -23
  210. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_transmission_opacity.glsl +0 -6
  211. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/lib/mx_transmission_refract.glsl +0 -14
  212. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_add_bsdf.glsl +0 -7
  213. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_add_edf.glsl +0 -6
  214. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_anisotropic_vdf.glsl +0 -6
  215. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_artistic_ior.glsl +0 -17
  216. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_blackbody.glsl +0 -48
  217. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_burley_diffuse_bsdf.glsl +0 -33
  218. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_chiang_hair_bsdf.glsl +0 -291
  219. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_conductor_bsdf.glsl +0 -51
  220. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_dielectric_bsdf.glsl +0 -73
  221. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_displacement_float.glsl +0 -5
  222. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_displacement_vector3.glsl +0 -5
  223. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_generalized_schlick_bsdf.glsl +0 -80
  224. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_generalized_schlick_edf.glsl +0 -13
  225. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_layer_bsdf.glsl +0 -7
  226. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_layer_vdf.glsl +0 -7
  227. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_mix_bsdf.glsl +0 -7
  228. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_mix_edf.glsl +0 -6
  229. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_bsdf_color3.glsl +0 -8
  230. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_bsdf_float.glsl +0 -8
  231. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_edf_color3.glsl +0 -6
  232. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_multiply_edf_float.glsl +0 -6
  233. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_oren_nayar_diffuse_bsdf.glsl +0 -37
  234. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_roughness_anisotropy.glsl +0 -15
  235. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_roughness_dual.glsl +0 -9
  236. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_sheen_bsdf.glsl +0 -60
  237. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_subsurface_bsdf.glsl +0 -33
  238. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_translucent_bsdf.glsl +0 -28
  239. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/mx_uniform_edf.glsl +0 -9
  240. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genglsl/pbrlib_genglsl_impl.mtlx +0 -89
  241. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genmdl/pbrlib_genmdl_impl.mtlx +0 -105
  242. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genmsl/pbrlib_genmsl_impl.mtlx +0 -10
  243. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/lib/mx_microfacet.osl +0 -78
  244. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_anisotropic_vdf.osl +0 -8
  245. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_artistic_ior.osl +0 -17
  246. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_blackbody.osl +0 -49
  247. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_chiang_hair_bsdf.osl +0 -12
  248. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl +0 -7
  249. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_dielectric_bsdf.osl +0 -6
  250. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_generalized_schlick_bsdf.osl +0 -6
  251. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_generalized_schlick_edf.osl +0 -8
  252. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_roughness_anisotropy.osl +0 -15
  253. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_roughness_dual.osl +0 -12
  254. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_subsurface_bsdf.osl +0 -8
  255. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/mx_surface.osl +0 -6
  256. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx +0 -86
  257. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/pbrlib_defs.mtlx +0 -462
  258. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/pbrlib/pbrlib_ng.mtlx +0 -22
  259. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_hsv.glsl +0 -91
  260. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_math.glsl +0 -35
  261. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_noise.glsl +0 -707
  262. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_sampling.glsl +0 -91
  263. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_transform_uv.glsl +0 -5
  264. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/lib/mx_transform_uv_vflip.glsl +0 -5
  265. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_aastep.glsl +0 -5
  266. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_color3.glsl +0 -9
  267. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_color4.glsl +0 -10
  268. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_burn_float.glsl +0 -9
  269. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_cellnoise2d_float.glsl +0 -6
  270. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_cellnoise3d_float.glsl +0 -6
  271. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix33.glsl +0 -6
  272. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix44.glsl +0 -7
  273. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_creatematrix_vector4_matrix44.glsl +0 -7
  274. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_disjointover_color4.glsl +0 -25
  275. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_color3.glsl +0 -9
  276. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_color4.glsl +0 -10
  277. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_dodge_float.glsl +0 -9
  278. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_float.glsl +0 -7
  279. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector2.glsl +0 -7
  280. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector3.glsl +0 -7
  281. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_fractal3d_vector4.glsl +0 -7
  282. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_hsvtorgb_color3.glsl +0 -6
  283. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_hsvtorgb_color4.glsl +0 -6
  284. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_color3.glsl +0 -7
  285. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_color4.glsl +0 -7
  286. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_float.glsl +0 -7
  287. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector2.glsl +0 -7
  288. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector3.glsl +0 -7
  289. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_image_vector4.glsl +0 -7
  290. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_luminance_color3.glsl +0 -4
  291. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_luminance_color4.glsl +0 -4
  292. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_mix_surfaceshader.glsl +0 -5
  293. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_float.glsl +0 -7
  294. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector2.glsl +0 -7
  295. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector3.glsl +0 -7
  296. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise2d_vector4.glsl +0 -8
  297. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_float.glsl +0 -7
  298. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector2.glsl +0 -7
  299. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector3.glsl +0 -7
  300. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_noise3d_vector4.glsl +0 -8
  301. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_normalmap.glsl +0 -13
  302. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_premult_color4.glsl +0 -4
  303. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_float.glsl +0 -4
  304. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector2.glsl +0 -4
  305. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector3.glsl +0 -4
  306. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramplr_vector4.glsl +0 -4
  307. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_float.glsl +0 -4
  308. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector2.glsl +0 -4
  309. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector3.glsl +0 -4
  310. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_ramptb_vector4.glsl +0 -4
  311. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rgbtohsv_color3.glsl +0 -6
  312. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rgbtohsv_color4.glsl +0 -6
  313. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rotate_vector2.glsl +0 -7
  314. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_rotate_vector3.glsl +0 -19
  315. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_smoothstep_float.glsl +0 -9
  316. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_float.glsl +0 -6
  317. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector2.glsl +0 -6
  318. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector3.glsl +0 -6
  319. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splitlr_vector4.glsl +0 -6
  320. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_float.glsl +0 -6
  321. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector2.glsl +0 -6
  322. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector3.glsl +0 -6
  323. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_splittb_vector4.glsl +0 -6
  324. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_transformmatrix_vector2M3.glsl +0 -5
  325. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_transformmatrix_vector3M4.glsl +0 -5
  326. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_unpremult_color4.glsl +0 -4
  327. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_float.glsl +0 -6
  328. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_vector2.glsl +0 -6
  329. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise2d_vector3.glsl +0 -6
  330. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_float.glsl +0 -6
  331. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_vector2.glsl +0 -6
  332. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/mx_worleynoise3d_vector3.glsl +0 -6
  333. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genglsl/stdlib_genglsl_impl.mtlx +0 -756
  334. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmdl/stdlib_genmdl_impl.mtlx +0 -762
  335. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_math.metal +0 -129
  336. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_matscalaroperators.metal +0 -55
  337. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_sampling.metal +0 -91
  338. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/lib/mx_texture.metal +0 -25
  339. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genmsl/stdlib_genmsl_impl.mtlx +0 -160
  340. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/color4.h +0 -332
  341. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/matrix33.h +0 -161
  342. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/mx_funcs.h +0 -673
  343. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/vector2.h +0 -333
  344. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/include/vector4.h +0 -424
  345. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_sampling.osl +0 -150
  346. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_transform_uv.osl +0 -4
  347. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/lib/mx_transform_uv_vflip.osl +0 -4
  348. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_color3.osl +0 -8
  349. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_color4.osl +0 -9
  350. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_burn_float.osl +0 -9
  351. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_cellnoise2d_float.osl +0 -4
  352. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_cellnoise3d_float.osl +0 -4
  353. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_creatematrix.osl +0 -23
  354. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_disjointover_color4.osl +0 -25
  355. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_color3.osl +0 -8
  356. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_color4.osl +0 -9
  357. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_dodge_float.osl +0 -9
  358. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_float.osl +0 -5
  359. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector2.osl +0 -5
  360. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector3.osl +0 -5
  361. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_fractal3d_vector4.osl +0 -5
  362. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_frame_float.osl +0 -4
  363. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_color3.osl +0 -4
  364. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_color4.osl +0 -9
  365. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geomcolor_float.osl +0 -4
  366. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_boolean.osl +0 -5
  367. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_color3.osl +0 -5
  368. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_color4.osl +0 -16
  369. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_float.osl +0 -7
  370. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_integer.osl +0 -5
  371. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_string.osl +0 -5
  372. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector2.osl +0 -13
  373. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector3.osl +0 -5
  374. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_geompropvalue_vector4.osl +0 -15
  375. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_heighttonormal_vector3.osl +0 -8
  376. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_hsvtorgb_color3.osl +0 -4
  377. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_hsvtorgb_color4.osl +0 -4
  378. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_color3.osl +0 -20
  379. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_color4.osl +0 -24
  380. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_float.osl +0 -20
  381. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector2.osl +0 -21
  382. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector3.osl +0 -19
  383. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_image_vector4.osl +0 -23
  384. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_luminance_color3.osl +0 -4
  385. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_luminance_color4.osl +0 -4
  386. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_mix_surfaceshader.osl +0 -6
  387. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_float.osl +0 -5
  388. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector2.osl +0 -5
  389. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector3.osl +0 -5
  390. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise2d_vector4.osl +0 -5
  391. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_float.osl +0 -5
  392. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector2.osl +0 -5
  393. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector3.osl +0 -5
  394. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_noise3d_vector4.osl +0 -5
  395. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_normalmap.osl +0 -24
  396. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_premult_color4.osl +0 -4
  397. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rgbtohsv_color3.osl +0 -4
  398. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rgbtohsv_color4.osl +0 -4
  399. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rotate_vector2.osl +0 -7
  400. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_rotate_vector3.osl +0 -20
  401. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_surface_unlit.osl +0 -7
  402. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_time_float.osl +0 -6
  403. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_transformmatrix_vector2M3.osl +0 -6
  404. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_unpremult_color4.osl +0 -4
  405. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_float.osl +0 -4
  406. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_vector2.osl +0 -4
  407. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise2d_vector3.osl +0 -4
  408. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_float.osl +0 -4
  409. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_vector2.osl +0 -4
  410. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/mx_worleynoise3d_vector3.osl +0 -4
  411. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/genosl/stdlib_genosl_impl.mtlx +0 -752
  412. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/stdlib_defs.mtlx +0 -4942
  413. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/stdlib/stdlib_ng.mtlx +0 -6232
  414. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/essl.mtlx +0 -14
  415. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genglsl.mtlx +0 -14
  416. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genmdl.mtlx +0 -14
  417. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genmsl.mtlx +0 -14
  418. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/libraries/targets/genosl.mtlx +0 -14
  419. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/plugInfo.json +0 -58
  420. package/staging_area/Blender/blender.shared/usd/usdMtlx/resources/usdMtlx/schema.usda +0 -42
  421. package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/generatedSchema.usda +0 -926
  422. package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/plugInfo.json +0 -215
  423. package/staging_area/Blender/blender.shared/usd/usdPhysics/resources/usdPhysics/schema.usda +0 -879
  424. package/staging_area/Blender/blender.shared/usd/usdPhysicsValidators/resources/plugInfo.json +0 -54
  425. package/staging_area/Blender/blender.shared/usd/usdProc/resources/generatedSchema.usda +0 -57
  426. package/staging_area/Blender/blender.shared/usd/usdProc/resources/plugInfo.json +0 -29
  427. package/staging_area/Blender/blender.shared/usd/usdProc/resources/usdProc/schema.usda +0 -45
  428. package/staging_area/Blender/blender.shared/usd/usdProcImaging/resources/plugInfo.json +0 -22
  429. package/staging_area/Blender/blender.shared/usd/usdRender/resources/generatedSchema.usda +0 -335
  430. package/staging_area/Blender/blender.shared/usd/usdRender/resources/plugInfo.json +0 -80
  431. package/staging_area/Blender/blender.shared/usd/usdRender/resources/usdRender/schema.usda +0 -436
  432. package/staging_area/Blender/blender.shared/usd/usdRi/resources/generatedSchema.usda +0 -38
  433. package/staging_area/Blender/blender.shared/usd/usdRi/resources/plugInfo.json +0 -51
  434. package/staging_area/Blender/blender.shared/usd/usdRi/resources/usdRi/schema.usda +0 -157
  435. package/staging_area/Blender/blender.shared/usd/usdRiPxrImaging/resources/plugInfo.json +0 -53
  436. package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/generatedSchema.usda +0 -19
  437. package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/plugInfo.json +0 -29
  438. package/staging_area/Blender/blender.shared/usd/usdSemantics/resources/usdSemantics/schema.usda +0 -36
  439. package/staging_area/Blender/blender.shared/usd/usdShade/resources/generatedSchema.usda +0 -112
  440. package/staging_area/Blender/blender.shared/usd/usdShade/resources/plugInfo.json +0 -145
  441. package/staging_area/Blender/blender.shared/usd/usdShade/resources/usdShade/schema.usda +0 -595
  442. package/staging_area/Blender/blender.shared/usd/usdShadeValidators/resources/plugInfo.json +0 -63
  443. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/plugInfo.json +0 -22
  444. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/previewSurface.glslfx +0 -498
  445. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/primvarReader.glslfx +0 -18
  446. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/shaderDefs.usda +0 -475
  447. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/transform2d.glslfx +0 -18
  448. package/staging_area/Blender/blender.shared/usd/usdShaders/resources/shaders/uvTexture.glslfx +0 -18
  449. package/staging_area/Blender/blender.shared/usd/usdSkel/resources/generatedSchema.usda +0 -249
  450. package/staging_area/Blender/blender.shared/usd/usdSkel/resources/plugInfo.json +0 -86
  451. package/staging_area/Blender/blender.shared/usd/usdSkel/resources/usdSkel/schema.usda +0 -289
  452. package/staging_area/Blender/blender.shared/usd/usdSkelImaging/resources/plugInfo.json +0 -57
  453. package/staging_area/Blender/blender.shared/usd/usdSkelImaging/resources/shaders/skinning.glslfx +0 -265
  454. package/staging_area/Blender/blender.shared/usd/usdSkelValidators/resources/plugInfo.json +0 -27
  455. package/staging_area/Blender/blender.shared/usd/usdUI/resources/generatedSchema.usda +0 -123
  456. package/staging_area/Blender/blender.shared/usd/usdUI/resources/plugInfo.json +0 -62
  457. package/staging_area/Blender/blender.shared/usd/usdUI/resources/usdUI/schema.usda +0 -288
  458. package/staging_area/Blender/blender.shared/usd/usdUtilsValidators/resources/plugInfo.json +0 -45
  459. package/staging_area/Blender/blender.shared/usd/usdValidation/resources/plugInfo.json +0 -24
  460. package/staging_area/Blender/blender.shared/usd/usdVol/resources/generatedSchema.usda +0 -340
  461. package/staging_area/Blender/blender.shared/usd/usdVol/resources/plugInfo.json +0 -73
  462. package/staging_area/Blender/blender.shared/usd/usdVol/resources/usdVol/schema.usda +0 -144
  463. package/staging_area/Blender/blender.shared/usd/usdVolImaging/resources/plugInfo.json +0 -29
@@ -1,4474 +0,0 @@
1
- //
2
- // Copyright Contributors to the MaterialX Project
3
- // SPDX-License-Identifier: Apache-2.0
4
- //
5
- // MDL Implementation of all types and nodes of
6
- // MaterialX Physically-Based Shading Nodes
7
- // Document v1.37 REV2, July 16, 2019 (Revised October 17, 2019)
8
- // see www.materialx.org
9
- // in
10
- // NVIDIA Material Definition Language 1.6
11
- // Language Specification
12
- // Document version 1.6.1, December 16, 2019
13
- // www.nvidia.com/mdl
14
-
15
- mdl 1.6;
16
-
17
- import ::df::*;
18
- import ::anno::*;
19
- import ::math::*;
20
- import ::state::*;
21
- import ::tex::*;
22
-
23
- import .::core::*;
24
- import .::noise::*;
25
- import .::hsv::*;
26
-
27
- // NOTE: To insulate MaterialX names from MDL names, in particular
28
- // conflicts with MDL reserved names, all node names, type names
29
- // and enumeration names are prefixed with 'mx_', while all
30
- // node input parameter names are prefixed with 'mxp_'
31
-
32
- // NOTE: We use the ::anno::unused() annotation to mark unsupported parameters
33
-
34
-
35
- // Shader Nodes
36
-
37
- export material mx_surfacematerial(
38
- material mxp_surfaceshader = material() [[ anno::usage( "materialx:surfaceshader") ]],
39
- material mxp_backsurfaceshader = material() [[ anno::usage( "materialx:surfaceshader") ]],
40
- material mxp_displacementshader = material() [[ anno::usage( "materialx:displacementshader") ]]
41
- )
42
- = material(
43
- thin_walled: mxp_surfaceshader.thin_walled || mxp_backsurfaceshader.thin_walled,
44
- surface: mxp_surfaceshader.surface,
45
- hair: mxp_surfaceshader.hair,
46
- backface: mxp_backsurfaceshader.surface,
47
- geometry: material_geometry(
48
- cutout_opacity: mxp_surfaceshader.geometry.cutout_opacity,
49
- displacement : mxp_displacementshader.geometry.displacement,
50
- normal: mxp_surfaceshader.geometry.normal
51
- ),
52
- ior: mxp_surfaceshader.ior,
53
- volume: mxp_surfaceshader.volume
54
- );
55
-
56
- export material mx_surface_unlit(
57
- float mxp_emission = 0.0,
58
- color mxp_emission_color = color(1.0, 1.0, 1.0),
59
- float mxp_transmission = 0.0,
60
- color mxp_transmission_color = color(1.0, 1.0, 1.0),
61
- float mxp_opacity = 1.0
62
- )
63
- = let {
64
- float trans = math::clamp(mxp_transmission, 0.0, 1.0);
65
- bsdf bsdf_node = df::specular_bsdf(trans * mxp_transmission_color, df::scatter_transmit);
66
- material_emission edf_node = material_emission(df::diffuse_edf(), (1.0 - trans) * mxp_emission * mxp_emission_color * math::PI);
67
- } in material(
68
- thin_walled: true,
69
- surface: material_surface(
70
- scattering: bsdf_node,
71
- emission: edf_node
72
- ),
73
- geometry: material_geometry(
74
- cutout_opacity: mxp_opacity
75
- )
76
- );
77
-
78
- // Texture Nodes
79
-
80
- // Helper function mapping texture node addressmodes to MDL wrap modes
81
- ::tex::wrap_mode map_addressmode( core::mx_addressmode_type value) {
82
- switch (value) {
83
- case core::mx_addressmode_type_clamp:
84
- return ::tex::wrap_clamp;
85
- case core::mx_addressmode_type_mirror:
86
- return ::tex::wrap_mirrored_repeat;
87
- default:
88
- return ::tex::wrap_repeat;
89
- }
90
- }
91
-
92
- // Helper function provides texture lookup coordinate with `closest` lookup type support
93
- float2 tex_lookup_coord(float2 st, int tex_width, int tex_height, core::mx_filterlookup_type lookup_type, bool flip_v)
94
- {
95
- float2 coord = st;
96
-
97
- // `closest` lookup
98
- if (lookup_type == core::mx_filterlookup_type_closest)
99
- {
100
- int2 tex_size(tex_width, tex_height);
101
- coord = (math::floor(coord * tex_size) + float2(0.5)) / tex_size;
102
- }
103
-
104
- // `linear` and `cubic` uses the original coord
105
- coord = flip_v ? float2(coord.x, 1.0 - coord.y) : coord;
106
-
107
- return coord;
108
- }
109
-
110
- // NOTE: need to map MaterialX return type overloads to different function names
111
- // or we require the mx_default to be always set explicitly
112
-
113
- export float mx_image_float(
114
- uniform texture_2d mxp_file = texture_2d()
115
- [[
116
- anno::display_name("Filename")
117
- ]],
118
- uniform string mxp_layer = string("")
119
- [[
120
- anno::display_name("Layer"), anno::unused()
121
- ]],
122
- float mxp_default = float(0.0)
123
- [[
124
- anno::display_name("Default Color")
125
- ]],
126
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
127
- [[
128
- anno::display_name("Texture Coordinates")
129
- ]],
130
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
131
- [[
132
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
133
- anno::display_name("Address Mode U")
134
- ]],
135
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
136
- [[
137
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
138
- anno::display_name("Address Mode V")
139
- ]],
140
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
141
- [[
142
- anno::description("Enumeration {closest,linear,cubic}."),
143
- anno::display_name("Filter Type")
144
- ]],
145
- uniform string mxp_framerange = string("")
146
- [[
147
- anno::display_name("Frame Range"),
148
- anno::unused()
149
- ]],
150
- uniform int mxp_frameoffset = int(0)
151
- [[
152
- anno::display_name("Frame Offset"),
153
- anno::unused()
154
- ]],
155
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
156
- [[
157
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
158
- anno::display_name("Frame End Action"),
159
- anno::unused()
160
- ]],
161
- uniform bool mxp_flip_v = false
162
- [[
163
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
164
- anno::hidden()
165
- ]]
166
- )
167
- [[
168
- anno::description("Node Group: texture2d")
169
- ]]
170
- {
171
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
172
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
173
- return mxp_default;
174
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
175
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
176
- return mxp_default;
177
- if (::tex::texture_isvalid(mxp_file) == false)
178
- return mxp_default;
179
-
180
- float returnValue = ::tex::lookup_float(tex: mxp_file,
181
- coord: tex_lookup_coord(
182
- mxp_texcoord,
183
- tex::width(mxp_file),
184
- tex::height(mxp_file),
185
- mxp_filtertype,
186
- mxp_flip_v),
187
- wrap_u: map_addressmode(mxp_uaddressmode),
188
- wrap_v: map_addressmode(mxp_vaddressmode));
189
- return returnValue;
190
- }
191
-
192
- export color mx_image_color3(
193
- uniform texture_2d mxp_file = texture_2d()
194
- [[
195
- anno::display_name("Filename")
196
- ]],
197
- uniform string mxp_layer = string("")
198
- [[
199
- anno::display_name("Layer"), anno::unused()
200
- ]],
201
- color mxp_default = color(0.0, 0.0, 0.0)
202
- [[
203
- anno::display_name("Default Color")
204
- ]],
205
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
206
- [[
207
- anno::display_name("Texture Coordinates")
208
- ]],
209
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
210
- [[
211
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
212
- anno::display_name("Address Mode U")
213
- ]],
214
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
215
- [[
216
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
217
- anno::display_name("Address Mode V")
218
- ]],
219
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
220
- [[
221
- anno::description("Enumeration {closest,linear,cubic}."),
222
- anno::display_name("Filter Type")
223
- ]],
224
- uniform string mxp_framerange = string("")
225
- [[
226
- anno::display_name("Frame Range"),
227
- anno::unused()
228
- ]],
229
- uniform int mxp_frameoffset = int(0)
230
- [[
231
- anno::display_name("Frame Offset"),
232
- anno::unused()
233
- ]],
234
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
235
- [[
236
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
237
- anno::display_name("Frame End Action"),
238
- anno::unused()
239
- ]],
240
- uniform bool mxp_flip_v = false
241
- [[
242
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
243
- anno::hidden()
244
- ]]
245
- )
246
- [[
247
- anno::description("Node Group: texture2d")
248
- ]]
249
- {
250
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
251
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
252
- return mxp_default;
253
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
254
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
255
- return mxp_default;
256
- if (::tex::texture_isvalid(mxp_file) == false)
257
- return mxp_default;
258
-
259
- color returnValue = ::tex::lookup_color(tex: mxp_file,
260
- coord: tex_lookup_coord(
261
- mxp_texcoord,
262
- tex::width(mxp_file),
263
- tex::height(mxp_file),
264
- mxp_filtertype,
265
- mxp_flip_v),
266
- wrap_u: map_addressmode(mxp_uaddressmode),
267
- wrap_v: map_addressmode(mxp_vaddressmode));
268
- return returnValue;
269
- }
270
-
271
- export core::color4 mx_image_color4(
272
- uniform texture_2d mxp_file = texture_2d()
273
- [[
274
- anno::display_name("Filename")
275
- ]],
276
- uniform string mxp_layer = string("")
277
- [[
278
- anno::display_name("Layer"), anno::unused()
279
- ]],
280
- core::color4 mxp_default = core::mk_color4(0.0, 0.0, 0.0, 0.0)
281
- [[
282
- anno::display_name("Default Color")
283
- ]],
284
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
285
- [[
286
- anno::display_name("Texture Coordinates")
287
- ]],
288
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
289
- [[
290
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
291
- anno::display_name("Address Mode U")
292
- ]],
293
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
294
- [[
295
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
296
- anno::display_name("Address Mode V")
297
- ]],
298
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
299
- [[
300
- anno::description("Enumeration {closest,linear,cubic}."),
301
- anno::display_name("Filter Type")
302
- ]],
303
- uniform string mxp_framerange = string("")
304
- [[
305
- anno::display_name("Frame Range"),
306
- anno::unused()
307
- ]],
308
- uniform int mxp_frameoffset = int(0)
309
- [[
310
- anno::display_name("Frame Offset"),
311
- anno::unused()
312
- ]],
313
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
314
- [[
315
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
316
- anno::display_name("Frame End Action"),
317
- anno::unused()
318
- ]],
319
- uniform bool mxp_flip_v = false
320
- [[
321
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
322
- anno::hidden()
323
- ]]
324
- )
325
- [[
326
- anno::description("Node Group: texture2d")
327
- ]]
328
- {
329
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
330
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
331
- return mxp_default;
332
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
333
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
334
- return mxp_default;
335
- if (::tex::texture_isvalid(mxp_file) == false)
336
- return mxp_default;
337
-
338
- core::color4 returnValue = core::mk_color4(::tex::lookup_float4(tex: mxp_file,
339
- coord: tex_lookup_coord(
340
- mxp_texcoord,
341
- tex::width(mxp_file),
342
- tex::height(mxp_file),
343
- mxp_filtertype,
344
- mxp_flip_v),
345
- wrap_u: map_addressmode(mxp_uaddressmode),
346
- wrap_v: map_addressmode(mxp_vaddressmode)));
347
- return returnValue;
348
- }
349
-
350
- export float2 mx_image_vector2(
351
- uniform texture_2d mxp_file = texture_2d()
352
- [[
353
- anno::display_name("Filename")
354
- ]],
355
- uniform string mxp_layer = string("")
356
- [[
357
- anno::display_name("Layer"), anno::unused()
358
- ]],
359
- float2 mxp_default = float2(0.0, 0.0)
360
- [[
361
- anno::display_name("Default Color")
362
- ]],
363
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
364
- [[
365
- anno::display_name("Texture Coordinates")
366
- ]],
367
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
368
- [[
369
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
370
- anno::display_name("Address Mode U")
371
- ]],
372
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
373
- [[
374
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
375
- anno::display_name("Address Mode V")
376
- ]],
377
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
378
- [[
379
- anno::description("Enumeration {closest,linear,cubic}."),
380
- anno::display_name("Filter Type")
381
- ]],
382
- uniform string mxp_framerange = string("")
383
- [[
384
- anno::display_name("Frame Range"),
385
- anno::unused()
386
- ]],
387
- uniform int mxp_frameoffset = int(0)
388
- [[
389
- anno::display_name("Frame Offset"),
390
- anno::unused()
391
- ]],
392
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
393
- [[
394
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
395
- anno::display_name("Frame End Action"),
396
- anno::unused()
397
- ]],
398
- uniform bool mxp_flip_v = false
399
- [[
400
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
401
- anno::hidden()
402
- ]]
403
- )
404
- [[
405
- anno::description("Node Group: texture2d")
406
- ]]
407
- {
408
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
409
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
410
- return mxp_default;
411
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
412
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
413
- return mxp_default;
414
- if (::tex::texture_isvalid(mxp_file) == false)
415
- return mxp_default;
416
-
417
- float2 returnValue = ::tex::lookup_float2(tex: mxp_file,
418
- coord: tex_lookup_coord(
419
- mxp_texcoord,
420
- tex::width(mxp_file),
421
- tex::height(mxp_file),
422
- mxp_filtertype,
423
- mxp_flip_v),
424
- wrap_u: map_addressmode(mxp_uaddressmode),
425
- wrap_v: map_addressmode(mxp_vaddressmode));
426
- return returnValue;
427
- }
428
-
429
- export float3 mx_image_vector3(
430
- uniform texture_2d mxp_file = texture_2d()
431
- [[
432
- anno::display_name("Filename")
433
- ]],
434
- uniform string mxp_layer = string("")
435
- [[
436
- anno::display_name("Layer"), anno::unused()
437
- ]],
438
- float3 mxp_default = float3(0.0, 0.0, 0.0)
439
- [[
440
- anno::display_name("Default Color")
441
- ]],
442
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
443
- [[
444
- anno::display_name("Texture Coordinates")
445
- ]],
446
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
447
- [[
448
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
449
- anno::display_name("Address Mode U")
450
- ]],
451
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
452
- [[
453
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
454
- anno::display_name("Address Mode V")
455
- ]],
456
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
457
- [[
458
- anno::description("Enumeration {closest,linear,cubic}."),
459
- anno::display_name("Filter Type")
460
- ]],
461
- uniform string mxp_framerange = string("")
462
- [[
463
- anno::display_name("Frame Range"),
464
- anno::unused()
465
- ]],
466
- uniform int mxp_frameoffset = int(0)
467
- [[
468
- anno::display_name("Frame Offset"),
469
- anno::unused()
470
- ]],
471
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
472
- [[
473
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
474
- anno::display_name("Frame End Action"),
475
- anno::unused()
476
- ]],
477
- uniform bool mxp_flip_v = false
478
- [[
479
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
480
- anno::hidden()
481
- ]]
482
- )
483
- [[
484
- anno::description("Node Group: texture2d")
485
- ]]
486
- {
487
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
488
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
489
- return mxp_default;
490
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
491
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
492
- return mxp_default;
493
- if (::tex::texture_isvalid(mxp_file) == false)
494
- return mxp_default;
495
-
496
- float3 returnValue = ::tex::lookup_float3(tex: mxp_file,
497
- coord: tex_lookup_coord(
498
- mxp_texcoord,
499
- tex::width(mxp_file),
500
- tex::height(mxp_file),
501
- mxp_filtertype,
502
- mxp_flip_v),
503
- wrap_u: map_addressmode(mxp_uaddressmode),
504
- wrap_v: map_addressmode(mxp_vaddressmode));
505
- return returnValue;
506
- }
507
-
508
- export float4 mx_image_vector4(
509
- uniform texture_2d mxp_file = texture_2d()
510
- [[
511
- anno::display_name("Filename")
512
- ]],
513
- uniform string mxp_layer = string("")
514
- [[
515
- anno::display_name("Layer"), anno::unused()
516
- ]],
517
- float4 mxp_default = float4(0.0, 0.0, 0.0, 0.0)
518
- [[
519
- anno::display_name("Default Color")
520
- ]],
521
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
522
- [[
523
- anno::display_name("Texture Coordinates")
524
- ]],
525
- uniform core::mx_addressmode_type mxp_uaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
526
- [[
527
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
528
- anno::display_name("Address Mode U")
529
- ]],
530
- uniform core::mx_addressmode_type mxp_vaddressmode = core::mx_addressmode_type(core::mx_addressmode_type_periodic)
531
- [[
532
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
533
- anno::display_name("Address Mode V")
534
- ]],
535
- uniform core::mx_filterlookup_type mxp_filtertype = core::mx_filterlookup_type(core::mx_filterlookup_type_linear)
536
- [[
537
- anno::description("Enumeration {closest,linear,cubic}."),
538
- anno::display_name("Filter Type")
539
- ]],
540
- uniform string mxp_framerange = string("")
541
- [[
542
- anno::display_name("Frame Range"),
543
- anno::unused()
544
- ]],
545
- uniform int mxp_frameoffset = int(0)
546
- [[
547
- anno::display_name("Frame Offset"),
548
- anno::unused()
549
- ]],
550
- uniform core::mx_addressmode_type mxp_frameendaction = core::mx_addressmode_type(core::mx_addressmode_type_constant)
551
- [[
552
- anno::description("Enumeration {constant,clamp,periodic,mirror}."),
553
- anno::display_name("Frame End Action"),
554
- anno::unused()
555
- ]],
556
- uniform bool mxp_flip_v = false
557
- [[
558
- anno::usage("for applying the 'fileTextureVerticalFlip' shader generator option."),
559
- anno::hidden()
560
- ]]
561
- )
562
- [[
563
- anno::description("Node Group: texture2d")
564
- ]]
565
- {
566
- if ( mxp_uaddressmode == core::mx_addressmode_type_constant
567
- && ( mxp_texcoord.x < 0.0 || mxp_texcoord.x > 1.0))
568
- return mxp_default;
569
- if ( mxp_vaddressmode == core::mx_addressmode_type_constant
570
- && ( mxp_texcoord.y < 0.0 || mxp_texcoord.y > 1.0))
571
- return mxp_default;
572
- if (::tex::texture_isvalid(mxp_file) == false)
573
- return mxp_default;
574
-
575
- float4 returnValue = ::tex::lookup_float4(tex: mxp_file,
576
- coord: tex_lookup_coord(
577
- mxp_texcoord,
578
- tex::width(mxp_file),
579
- tex::height(mxp_file),
580
- mxp_filtertype,
581
- mxp_flip_v),
582
- wrap_u: map_addressmode(mxp_uaddressmode),
583
- wrap_v: map_addressmode(mxp_vaddressmode));
584
- return returnValue;
585
- }
586
-
587
- // Nodedef: ND_tiledimage_float is represented by a nodegraph: NG_tiledimage_float
588
- // Nodedef: ND_tiledimage_color3 is represented by a nodegraph: NG_tiledimage_color3
589
- // Nodedef: ND_tiledimage_color4 is represented by a nodegraph: NG_tiledimage_color4
590
- // Nodedef: ND_tiledimage_vector2 is represented by a nodegraph: NG_tiledimage_vector2
591
- // Nodedef: ND_tiledimage_vector3 is represented by a nodegraph: NG_tiledimage_vector3
592
- // Nodedef: ND_tiledimage_vector4 is represented by a nodegraph: NG_tiledimage_vector4
593
- // Nodedef: ND_triplanarprojection_float is represented by a nodegraph: NG_triplanarprojection_float
594
- // Nodedef: ND_triplanarprojection_color3 is represented by a nodegraph: NG_triplanarprojection_color3
595
- // Nodedef: ND_triplanarprojection_color4 is represented by a nodegraph: NG_triplanarprojection_color4
596
- // Nodedef: ND_triplanarprojection_vector2 is represented by a nodegraph: NG_triplanarprojection_vector2
597
- // Nodedef: ND_triplanarprojection_vector3 is represented by a nodegraph: NG_triplanarprojection_vector3
598
- // Nodedef: ND_triplanarprojection_vector4 is represented by a nodegraph: NG_triplanarprojection_vector4
599
-
600
- export float mx_constant_float(
601
- float mxp_value = float(0.0)
602
- )
603
- [[
604
- anno::description("Node Group: procedural")
605
- ]]
606
- {
607
- return mxp_value;
608
- }
609
-
610
- export color mx_constant_color3(
611
- color mxp_value = color(0.0, 0.0, 0.0)
612
- )
613
- [[
614
- anno::description("Node Group: procedural")
615
- ]]
616
- {
617
- return mxp_value;
618
- }
619
-
620
- export core::color4 mx_constant_color4(
621
- core::color4 mxp_value = core::mk_color4(0.0, 0.0, 0.0, 0.0)
622
- )
623
- [[
624
- anno::description("Node Group: procedural")
625
- ]]
626
- {
627
- return mxp_value;
628
- }
629
-
630
- export float2 mx_constant_vector2(
631
- float2 mxp_value = float2(0.0, 0.0)
632
- )
633
- [[
634
- anno::description("Node Group: procedural")
635
- ]]
636
- {
637
- return mxp_value;
638
- }
639
-
640
- export float3 mx_constant_vector3(
641
- float3 mxp_value = float3(0.0, 0.0, 0.0)
642
- )
643
- [[
644
- anno::description("Node Group: procedural")
645
- ]]
646
- {
647
- return mxp_value;
648
- }
649
-
650
- export float4 mx_constant_vector4(
651
- float4 mxp_value = float4(0.0, 0.0, 0.0, 0.0)
652
- )
653
- [[
654
- anno::description("Node Group: procedural")
655
- ]]
656
- {
657
- return mxp_value;
658
- }
659
-
660
- export bool mx_constant_boolean(
661
- bool mxp_value = bool(false)
662
- )
663
- [[
664
- anno::description("Node Group: procedural")
665
- ]]
666
- {
667
- return mxp_value;
668
- }
669
-
670
- export int mx_constant_integer(
671
- int mxp_value = int(0)
672
- )
673
- [[
674
- anno::description("Node Group: procedural")
675
- ]]
676
- {
677
- return mxp_value;
678
- }
679
-
680
- export float3x3 mx_constant_matrix33(
681
- float3x3 mxp_value = float3x3(1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0)
682
- )
683
- [[
684
- anno::description("Node Group: procedural")
685
- ]]
686
- {
687
- return mxp_value;
688
- }
689
-
690
- export float4x4 mx_constant_matrix44(
691
- float4x4 mxp_value = float4x4(1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0)
692
- )
693
- [[
694
- anno::description("Node Group: procedural")
695
- ]]
696
- {
697
- return mxp_value;
698
- }
699
-
700
- export string mx_constant_string(
701
- uniform string mxp_value = string("")
702
- )
703
- [[
704
- anno::description("Node Group: procedural")
705
- ]]
706
- {
707
- return mxp_value;
708
- }
709
-
710
- export string mx_constant_filename(
711
- uniform string mxp_value = string("")
712
- )
713
- [[
714
- anno::description("Node Group: procedural")
715
- ]]
716
- {
717
- return mxp_value;
718
- }
719
-
720
- export float mx_ramplr_float(
721
- float mxp_valuel = float(0.0),
722
- float mxp_valuer = float(0.0),
723
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
724
- )
725
- [[
726
- anno::description("Node Group: procedural2d")
727
- ]]
728
- {
729
- return math::lerp(mxp_valuel, mxp_valuer, math::clamp(mxp_texcoord.x, 0.0, 1.0));
730
- }
731
-
732
- export color mx_ramplr_color3(
733
- color mxp_valuel = color(0.0, 0.0, 0.0),
734
- color mxp_valuer = color(0.0, 0.0, 0.0),
735
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
736
- )
737
- [[
738
- anno::description("Node Group: procedural2d")
739
- ]]
740
- {
741
- return math::lerp(mxp_valuel, mxp_valuer, math::clamp(mxp_texcoord.x, 0.0, 1.0));
742
- }
743
-
744
- export core::color4 mx_ramplr_color4(
745
- core::color4 mxp_valuel = core::mk_color4(0.0, 0.0, 0.0, 0.0),
746
- core::color4 mxp_valuer = core::mk_color4(0.0, 0.0, 0.0, 0.0),
747
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
748
- )
749
- [[
750
- anno::description("Node Group: procedural2d")
751
- ]]
752
- {
753
- color rgb = math::lerp(mxp_valuel.rgb, mxp_valuer.rgb, math::clamp(mxp_texcoord.x, 0.0, 1.0));
754
- float a = math::lerp(mxp_valuel.a, mxp_valuer.a, math::clamp(mxp_texcoord.x, 0.0, 1.0));
755
- return core::color4(rgb, a);}
756
-
757
- export float2 mx_ramplr_vector2(
758
- float2 mxp_valuel = float2(0.0, 0.0),
759
- float2 mxp_valuer = float2(0.0, 0.0),
760
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
761
- )
762
- [[
763
- anno::description("Node Group: procedural2d")
764
- ]]
765
- {
766
- return math::lerp(mxp_valuel, mxp_valuer, math::clamp(mxp_texcoord.x, 0.0, 1.0));
767
- }
768
-
769
- export float3 mx_ramplr_vector3(
770
- float3 mxp_valuel = float3(0.0, 0.0, 0.0),
771
- float3 mxp_valuer = float3(0.0, 0.0, 0.0),
772
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
773
- )
774
- [[
775
- anno::description("Node Group: procedural2d")
776
- ]]
777
- {
778
- return math::lerp(mxp_valuel, mxp_valuer, math::clamp(mxp_texcoord.x, 0.0, 1.0));
779
- }
780
-
781
- export float4 mx_ramplr_vector4(
782
- float4 mxp_valuel = float4(0.0, 0.0, 0.0, 0.0),
783
- float4 mxp_valuer = float4(0.0, 0.0, 0.0, 0.0),
784
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
785
- )
786
- [[
787
- anno::description("Node Group: procedural2d")
788
- ]]
789
- {
790
- return math::lerp(mxp_valuel, mxp_valuer, math::clamp(mxp_texcoord.x, 0.0, 1.0));
791
- }
792
-
793
- export float mx_ramptb_float(
794
- float mxp_valuet = float(0.0),
795
- float mxp_valueb = float(0.0),
796
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
797
- )
798
- [[
799
- anno::description("Node Group: procedural2d")
800
- ]]
801
- {
802
- return math::lerp(mxp_valuet, mxp_valueb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
803
- }
804
-
805
- export color mx_ramptb_color3(
806
- color mxp_valuet = color(0.0, 0.0, 0.0),
807
- color mxp_valueb = color(0.0, 0.0, 0.0),
808
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
809
- )
810
- [[
811
- anno::description("Node Group: procedural2d")
812
- ]]
813
- {
814
- return math::lerp(mxp_valuet, mxp_valueb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
815
- }
816
-
817
- export core::color4 mx_ramptb_color4(
818
- core::color4 mxp_valuet = core::mk_color4(0.0, 0.0, 0.0, 0.0),
819
- core::color4 mxp_valueb = core::mk_color4(0.0, 0.0, 0.0, 0.0),
820
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
821
- )
822
- [[
823
- anno::description("Node Group: procedural2d")
824
- ]]
825
- {
826
- color rgb = math::lerp(mxp_valuet.rgb, mxp_valueb.rgb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
827
- float a = math::lerp(mxp_valuet.a, mxp_valueb.a, math::clamp(mxp_texcoord.y, 0.0, 1.0));
828
- return core::color4(rgb, a);}
829
-
830
- export float2 mx_ramptb_vector2(
831
- float2 mxp_valuet = float2(0.0, 0.0),
832
- float2 mxp_valueb = float2(0.0, 0.0),
833
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
834
- )
835
- [[
836
- anno::description("Node Group: procedural2d")
837
- ]]
838
- {
839
- return math::lerp(mxp_valuet, mxp_valueb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
840
- }
841
-
842
- export float3 mx_ramptb_vector3(
843
- float3 mxp_valuet = float3(0.0, 0.0, 0.0),
844
- float3 mxp_valueb = float3(0.0, 0.0, 0.0),
845
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
846
- )
847
- [[
848
- anno::description("Node Group: procedural2d")
849
- ]]
850
- {
851
- return math::lerp(mxp_valuet, mxp_valueb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
852
- }
853
-
854
- export float4 mx_ramptb_vector4(
855
- float4 mxp_valuet = float4(0.0, 0.0, 0.0, 0.0),
856
- float4 mxp_valueb = float4(0.0, 0.0, 0.0, 0.0),
857
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
858
- )
859
- [[
860
- anno::description("Node Group: procedural2d")
861
- ]]
862
- {
863
- return math::lerp(mxp_valuet, mxp_valueb, math::clamp(mxp_texcoord.y, 0.0, 1.0));
864
- }
865
-
866
- // Nodedef: ND_ramp4_float is represented by a nodegraph: NG_ramp4_float
867
- // Nodedef: ND_ramp4_color3 is represented by a nodegraph: NG_ramp4_color3
868
- // Nodedef: ND_ramp4_color4 is represented by a nodegraph: NG_ramp4_color4
869
- // Nodedef: ND_ramp4_vector2 is represented by a nodegraph: NG_ramp4_vector2
870
- // Nodedef: ND_ramp4_vector3 is represented by a nodegraph: NG_ramp4_vector3
871
- // Nodedef: ND_ramp4_vector4 is represented by a nodegraph: NG_ramp4_vector4
872
-
873
- export float mx_splitlr_float(
874
- float mxp_valuel = float(0.0)
875
- [[
876
- anno::display_name("Left")
877
- ]],
878
- float mxp_valuer = float(0.0)
879
- [[
880
- anno::display_name("Right")
881
- ]],
882
- float mxp_center = float(0.5)
883
- [[
884
- anno::display_name("Center")
885
- ]],
886
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
887
- )
888
- [[
889
- anno::description("Node Group: procedural2d")
890
- ]]
891
- {
892
- return math::lerp(mxp_valuel, mxp_valuer, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
893
- }
894
-
895
- export color mx_splitlr_color3(
896
- color mxp_valuel = color(0.0, 0.0, 0.0)
897
- [[
898
- anno::display_name("Left")
899
- ]],
900
- color mxp_valuer = color(0.0, 0.0, 0.0)
901
- [[
902
- anno::display_name("Right")
903
- ]],
904
- float mxp_center = float(0.5)
905
- [[
906
- anno::display_name("Center")
907
- ]],
908
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
909
- )
910
- [[
911
- anno::description("Node Group: procedural2d")
912
- ]]
913
- {
914
- return math::lerp(mxp_valuel, mxp_valuer, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
915
- }
916
-
917
- export core::color4 mx_splitlr_color4(
918
- core::color4 mxp_valuel = core::mk_color4(0.0, 0.0, 0.0, 0.0)
919
- [[
920
- anno::display_name("Left")
921
- ]],
922
- core::color4 mxp_valuer = core::mk_color4(0.0, 0.0, 0.0, 0.0)
923
- [[
924
- anno::display_name("Right")
925
- ]],
926
- float mxp_center = float(0.5)
927
- [[
928
- anno::display_name("Center")
929
- ]],
930
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
931
- )
932
- [[
933
- anno::description("Node Group: procedural2d")
934
- ]]
935
- {
936
- color rgb = math::lerp(mxp_valuel.rgb, mxp_valuer.rgb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
937
- float a = math::lerp(mxp_valuel.a, mxp_valuer.a, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
938
- return core::color4(rgb, a);
939
- }
940
-
941
- export float2 mx_splitlr_vector2(
942
- float2 mxp_valuel = float2(0.0, 0.0)
943
- [[
944
- anno::display_name("Left")
945
- ]],
946
- float2 mxp_valuer = float2(0.0, 0.0)
947
- [[
948
- anno::display_name("Right")
949
- ]],
950
- float mxp_center = float(0.5)
951
- [[
952
- anno::display_name("Center")
953
- ]],
954
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
955
- )
956
- [[
957
- anno::description("Node Group: procedural2d")
958
- ]]
959
- {
960
- return math::lerp(mxp_valuel, mxp_valuer, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
961
- }
962
-
963
- export float3 mx_splitlr_vector3(
964
- float3 mxp_valuel = float3(0.0, 0.0, 0.0)
965
- [[
966
- anno::display_name("Left")
967
- ]],
968
- float3 mxp_valuer = float3(0.0, 0.0, 0.0)
969
- [[
970
- anno::display_name("Right")
971
- ]],
972
- float mxp_center = float(0.5)
973
- [[
974
- anno::display_name("Center")
975
- ]],
976
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
977
- )
978
- [[
979
- anno::description("Node Group: procedural2d")
980
- ]]
981
- {
982
- return math::lerp(mxp_valuel, mxp_valuer, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
983
- }
984
-
985
- export float4 mx_splitlr_vector4(
986
- float4 mxp_valuel = float4(0.0, 0.0, 0.0, 0.0)
987
- [[
988
- anno::display_name("Left")
989
- ]],
990
- float4 mxp_valuer = float4(0.0, 0.0, 0.0, 0.0)
991
- [[
992
- anno::display_name("Right")
993
- ]],
994
- float mxp_center = float(0.5)
995
- [[
996
- anno::display_name("Center")
997
- ]],
998
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
999
- )
1000
- [[
1001
- anno::description("Node Group: procedural2d")
1002
- ]]
1003
- {
1004
- return math::lerp(mxp_valuel, mxp_valuer, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1005
- }
1006
-
1007
- export float mx_splittb_float(
1008
- float mxp_valuet = float(0.0)
1009
- [[
1010
- anno::display_name("Top")
1011
- ]],
1012
- float mxp_valueb = float(0.0)
1013
- [[
1014
- anno::display_name("Bottom")
1015
- ]],
1016
- float mxp_center = float(0.5)
1017
- [[
1018
- anno::display_name("Center")
1019
- ]],
1020
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1021
- )
1022
- [[
1023
- anno::description("Node Group: procedural2d")
1024
- ]]
1025
- {
1026
- return math::lerp(mxp_valuet, mxp_valueb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1027
- }
1028
-
1029
- export color mx_splittb_color3(
1030
- color mxp_valuet = color(0.0, 0.0, 0.0)
1031
- [[
1032
- anno::display_name("Top")
1033
- ]],
1034
- color mxp_valueb = color(0.0, 0.0, 0.0)
1035
- [[
1036
- anno::display_name("Bottom")
1037
- ]],
1038
- float mxp_center = float(0.5)
1039
- [[
1040
- anno::display_name("Center")
1041
- ]],
1042
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1043
- )
1044
- [[
1045
- anno::description("Node Group: procedural2d")
1046
- ]]
1047
- {
1048
- return math::lerp(mxp_valuet, mxp_valueb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1049
- }
1050
-
1051
- export core::color4 mx_splittb_color4(
1052
- core::color4 mxp_valuet = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1053
- [[
1054
- anno::display_name("Top")
1055
- ]],
1056
- core::color4 mxp_valueb = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1057
- [[
1058
- anno::display_name("Bottom")
1059
- ]],
1060
- float mxp_center = float(0.5)
1061
- [[
1062
- anno::display_name("Center")
1063
- ]],
1064
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1065
- )
1066
- [[
1067
- anno::description("Node Group: procedural2d")
1068
- ]]
1069
- {
1070
- color rgb = math::lerp(mxp_valuet.rgb, mxp_valueb.rgb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1))); float a = math::lerp(mxp_valuet.a, mxp_valueb.a, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1))); return core::color4(rgb, a);
1071
- }
1072
-
1073
- export float2 mx_splittb_vector2(
1074
- float2 mxp_valuet = float2(0.0, 0.0)
1075
- [[
1076
- anno::display_name("Top")
1077
- ]],
1078
- float2 mxp_valueb = float2(0.0, 0.0)
1079
- [[
1080
- anno::display_name("Bottom")
1081
- ]],
1082
- float mxp_center = float(0.5)
1083
- [[
1084
- anno::display_name("Center")
1085
- ]],
1086
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1087
- )
1088
- [[
1089
- anno::description("Node Group: procedural2d")
1090
- ]]
1091
- {
1092
- return math::lerp(mxp_valuet, mxp_valueb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1093
- }
1094
-
1095
- export float3 mx_splittb_vector3(
1096
- float3 mxp_valuet = float3(0.0, 0.0, 0.0)
1097
- [[
1098
- anno::display_name("Top")
1099
- ]],
1100
- float3 mxp_valueb = float3(0.0, 0.0, 0.0)
1101
- [[
1102
- anno::display_name("Bottom")
1103
- ]],
1104
- float mxp_center = float(0.5)
1105
- [[
1106
- anno::display_name("Center")
1107
- ]],
1108
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1109
- )
1110
- [[
1111
- anno::description("Node Group: procedural2d")
1112
- ]]
1113
- {
1114
- return math::lerp(mxp_valuet, mxp_valueb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1115
- }
1116
-
1117
- export float4 mx_splittb_vector4(
1118
- float4 mxp_valuet = float4(0.0, 0.0, 0.0, 0.0)
1119
- [[
1120
- anno::display_name("Top")
1121
- ]],
1122
- float4 mxp_valueb = float4(0.0, 0.0, 0.0, 0.0)
1123
- [[
1124
- anno::display_name("Bottom")
1125
- ]],
1126
- float mxp_center = float(0.5)
1127
- [[
1128
- anno::display_name("Center")
1129
- ]],
1130
- float2 mxp_texcoord = float2(core::mx_swizzle_xy(::state::texture_coordinate(0)))
1131
- )
1132
- [[
1133
- anno::description("Node Group: procedural2d")
1134
- ]]
1135
- {
1136
- return math::lerp(mxp_valuet, mxp_valueb, math::step(mxp_center, math::clamp(mxp_texcoord.x,0,1)));
1137
- }
1138
-
1139
- export float3 mx_position_vector3(
1140
- uniform core::mx_coordinatespace_type mxp_space = core::mx_coordinatespace_type(core::mx_coordinatespace_type_object)
1141
- [[
1142
- anno::description("Enumeration {model,object,world}.")
1143
- ]]
1144
- )
1145
- [[
1146
- anno::description("Node Group: geometric")
1147
- ]]
1148
- {
1149
- state::coordinate_space fromSpace = ::core::mx_map_space(core::mx_coordinatespace_type_model);
1150
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_space);
1151
- return state::transform_point(fromSpace, toSpace, state::position());
1152
- }
1153
-
1154
- export float3 mx_normal_vector3(
1155
- uniform core::mx_coordinatespace_type mxp_space = core::mx_coordinatespace_type(core::mx_coordinatespace_type_object)
1156
- [[
1157
- anno::description("Enumeration {model,object,world}.")
1158
- ]]
1159
- )
1160
- [[
1161
- anno::description("Node Group: geometric")
1162
- ]]
1163
- {
1164
- state::coordinate_space fromSpace = ::core::mx_map_space(core::mx_coordinatespace_type_model);
1165
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_space);
1166
- return state::transform_normal(fromSpace, toSpace, state::normal());
1167
- }
1168
-
1169
- export float3 mx_tangent_vector3(
1170
- uniform core::mx_coordinatespace_type mxp_space = core::mx_coordinatespace_type(core::mx_coordinatespace_type_object)
1171
- [[
1172
- anno::description("Enumeration {model,object,world}.")
1173
- ]],
1174
- uniform int mxp_index = int(0)
1175
- )
1176
- [[
1177
- anno::description("Node Group: geometric")
1178
- ]]
1179
- {
1180
- state::coordinate_space fromSpace = ::core::mx_map_space(core::mx_coordinatespace_type_model);
1181
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_space);
1182
- return ::math::normalize(state::transform_vector(fromSpace, toSpace, state::texture_tangent_u(mxp_index)));
1183
- }
1184
-
1185
- export float3 mx_bitangent_vector3(
1186
- uniform core::mx_coordinatespace_type mxp_space = core::mx_coordinatespace_type(core::mx_coordinatespace_type_object)
1187
- [[
1188
- anno::description("Enumeration {model,object,world}.")
1189
- ]],
1190
- uniform int mxp_index = int(0)
1191
- )
1192
- [[
1193
- anno::description("Node Group: geometric")
1194
- ]]
1195
- {
1196
- state::coordinate_space fromSpace = ::core::mx_map_space(core::mx_coordinatespace_type_model);
1197
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_space);
1198
- return ::math::normalize(state::transform_vector(fromSpace, toSpace, state::texture_tangent_v(mxp_index)));
1199
- }
1200
-
1201
- export float2 mx_texcoord_vector2(
1202
- uniform int mxp_index = int(0)
1203
- )
1204
- [[
1205
- anno::description("Node Group: geometric")
1206
- ]]
1207
- {
1208
- return core::mx_swizzle_xy((state::texture_coordinate(mxp_index)));
1209
- }
1210
-
1211
- export float3 mx_texcoord_vector3(
1212
- uniform int mxp_index = int(0)
1213
- )
1214
- [[
1215
- anno::description("Node Group: geometric")
1216
- ]]
1217
- {
1218
- return state::texture_coordinate(mxp_index);
1219
- }
1220
-
1221
- export float mx_geomcolor_float(
1222
- uniform int mxp_index = int(0) [[ anno::unused() ]]
1223
- )
1224
- [[
1225
- anno::description("Node Group: geometric")
1226
- ]]
1227
- {
1228
- // Not implemented: mx_geomcolor_float
1229
- float defaultValue = float(0.0);
1230
- return defaultValue;
1231
- }
1232
-
1233
- export color mx_geomcolor_color3(
1234
- uniform int mxp_index = int(0) [[ anno::unused() ]]
1235
- )
1236
- [[
1237
- anno::description("Node Group: geometric")
1238
- ]]
1239
- {
1240
- // Not implemented: mx_geomcolor_color3
1241
- color defaultValue = color(0.0, 0.0, 0.0);
1242
- return defaultValue;
1243
- }
1244
-
1245
- export core::color4 mx_geomcolor_color4(
1246
- uniform int mxp_index = int(0) [[ anno::unused() ]]
1247
- )
1248
- [[
1249
- anno::description("Node Group: geometric")
1250
- ]]
1251
- {
1252
- // Not implemented: mx_geomcolor_color4
1253
- core::color4 defaultValue = core::mk_color4(0.0, 0.0, 0.0, 0.0);
1254
- return defaultValue;
1255
- }
1256
-
1257
- export int mx_geompropvalue_integer(
1258
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1259
- int mxp_default = int(0) [[ anno::unused() ]]
1260
- )
1261
- [[
1262
- anno::description("Node Group: geometric")
1263
- ]]
1264
- {
1265
- // Not implemented: mx_geompropvalue_integer
1266
- int defaultValue = int(0);
1267
- return defaultValue;
1268
- }
1269
-
1270
- export bool mx_geompropvalue_boolean(
1271
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1272
- bool mxp_default = bool(false) [[ anno::unused() ]]
1273
- )
1274
- [[
1275
- anno::description("Node Group: geometric")
1276
- ]]
1277
- {
1278
- // Not implemented: mx_geompropvalue_boolean
1279
- bool defaultValue = bool(false);
1280
- return defaultValue;
1281
- }
1282
-
1283
- export string mx_geompropvalue_string(
1284
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1285
- string mxp_default = string("") [[ anno::unused() ]]
1286
- )
1287
- [[
1288
- anno::description("Node Group: geometric")
1289
- ]]
1290
- {
1291
- // Not implemented: mx_geompropvalue_string
1292
- string defaultValue;
1293
- return defaultValue;
1294
- }
1295
-
1296
- export float mx_geompropvalue_float(
1297
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1298
- float mxp_default = float(0.0) [[ anno::unused() ]]
1299
- )
1300
- [[
1301
- anno::description("Node Group: geometric")
1302
- ]]
1303
- {
1304
- // Not implemented: mx_geompropvalue_float
1305
- float defaultValue = float(0.0);
1306
- return defaultValue;
1307
- }
1308
-
1309
- export color mx_geompropvalue_color3(
1310
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1311
- color mxp_default = color(0.0, 0.0, 0.0) [[ anno::unused() ]]
1312
- )
1313
- [[
1314
- anno::description("Node Group: geometric")
1315
- ]]
1316
- {
1317
- // Not implemented: mx_geompropvalue_color3
1318
- color defaultValue = color(0.0, 0.0, 0.0);
1319
- return defaultValue;
1320
- }
1321
-
1322
- export core::color4 mx_geompropvalue_color4(
1323
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1324
- core::color4 mxp_default = core::mk_color4(0.0, 0.0, 0.0, 0.0) [[ anno::unused() ]]
1325
- )
1326
- [[
1327
- anno::description("Node Group: geometric")
1328
- ]]
1329
- {
1330
- // Not implemented: mx_geompropvalue_color4
1331
- core::color4 defaultValue = core::mk_color4(0.0, 0.0, 0.0, 0.0);
1332
- return defaultValue;
1333
- }
1334
-
1335
- export float2 mx_geompropvalue_vector2(
1336
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1337
- float2 mxp_default = float2(0.0, 0.0) [[ anno::unused() ]]
1338
- )
1339
- [[
1340
- anno::description("Node Group: geometric")
1341
- ]]
1342
- {
1343
- // Not implemented: mx_geompropvalue_vector2
1344
- float2 defaultValue = float2(0.0, 0.0);
1345
- return defaultValue;
1346
- }
1347
-
1348
- export float3 mx_geompropvalue_vector3(
1349
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1350
- float3 mxp_default = float3(0.0, 0.0, 0.0) [[ anno::unused() ]]
1351
- )
1352
- [[
1353
- anno::description("Node Group: geometric")
1354
- ]]
1355
- {
1356
- // Not implemented: mx_geompropvalue_vector3
1357
- float3 defaultValue = float3(0.0, 0.0, 0.0);
1358
- return defaultValue;
1359
- }
1360
-
1361
- export float4 mx_geompropvalue_vector4(
1362
- uniform string mxp_geomprop = string("") [[ anno::unused() ]],
1363
- float4 mxp_default = float4(0.0, 0.0, 0.0, 0.0) [[ anno::unused() ]]
1364
- )
1365
- [[
1366
- anno::description("Node Group: geometric")
1367
- ]]
1368
- {
1369
- // Not implemented: mx_geompropvalue_vector4
1370
- float4 defaultValue = float4(0.0, 0.0, 0.0, 0.0);
1371
- return defaultValue;
1372
- }
1373
-
1374
- export float mx_frame_float(
1375
- )
1376
- [[
1377
- anno::description("Node Group: application")
1378
- ]]
1379
- {
1380
- // Not implemented: mx_frame_float
1381
- float defaultValue = float(1.0);
1382
- return defaultValue;
1383
- }
1384
-
1385
- export float mx_time_float(
1386
- uniform float mxp_fps = float(24.0) [[ anno::unused() ]]
1387
- )
1388
- [[
1389
- anno::description("Node Group: application")
1390
- ]]
1391
- {
1392
- return ::state::animation_time();
1393
- }
1394
-
1395
- export float3 mx_viewdirection_vector3(
1396
- uniform core::mx_coordinatespace_type mxp_space = core::mx_coordinatespace_type_world
1397
- [[
1398
- anno::description("Enumeration {model,object,world}."),
1399
- anno::unused()
1400
- ]]
1401
- )
1402
- [[
1403
- anno::description("Node Group: nprlib")
1404
- ]]
1405
- {
1406
- // Not implemented: mx_viewdirection_vector3
1407
- float3 defaultValue = float3(0.0, 0.0, 1.0);
1408
- return defaultValue;
1409
- }
1410
-
1411
- export color mx_modulo_color3(
1412
- color mxp_in1 = color(0.0, 0.0, 0.0),
1413
- color mxp_in2 = color(1.0, 1.0, 1.0)
1414
- )
1415
- [[
1416
- anno::description("Node Group: math")
1417
- ]]
1418
- {
1419
- return color(core::mx_mod(float3(mxp_in1), float3(mxp_in2)));
1420
- }
1421
-
1422
- export core::color4 mx_modulo_color4(
1423
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1424
- core::color4 mxp_in2 = core::mk_color4(1.0, 1.0, 1.0, 1.0)
1425
- )
1426
- [[
1427
- anno::description("Node Group: math")
1428
- ]]
1429
- {
1430
- return core::mk_color4(core::mx_mod(core::mk_float4(mxp_in1), core::mk_float4(mxp_in2)));
1431
- }
1432
-
1433
- export color mx_modulo_color3FA(
1434
- color mxp_in1 = color(0.0, 0.0, 0.0),
1435
- float mxp_in2 = float(1.0)
1436
- )
1437
- [[
1438
- anno::description("Node Group: math")
1439
- ]]
1440
- {
1441
- return color(core::mx_mod(float3(mxp_in1), float3(mxp_in2)));
1442
- }
1443
-
1444
- export core::color4 mx_modulo_color4FA(
1445
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1446
- float mxp_in2 = float(1.0)
1447
- )
1448
- [[
1449
- anno::description("Node Group: math")
1450
- ]]
1451
- {
1452
- return core::mk_color4(core::mx_mod(core::mk_float4(mxp_in1), float4(mxp_in2)));
1453
- }
1454
-
1455
- export color mx_fract_color3(
1456
- color mxp_in = color(0.0, 0.0, 0.0)
1457
- )
1458
- [[
1459
- anno::description("Node Group: math")
1460
- ]]
1461
- {
1462
- return color(math::frac(float3(mxp_in)));
1463
- }
1464
-
1465
- export core::color4 mx_fract_color4(
1466
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1467
- )
1468
- [[
1469
- anno::description("Node Group: math")
1470
- ]]
1471
- {
1472
- return core::mk_color4(math::frac(core::mk_float4(mxp_in)));
1473
- }
1474
-
1475
- export core::color4 mx_invert_color4(
1476
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1477
- core::color4 mxp_amount = core::mk_color4(1.0, 1.0, 1.0, 1.0)
1478
- )
1479
- [[
1480
- anno::description("Node Group: math")
1481
- ]]
1482
- {
1483
- return core::mk_color4(core::mk_float4(mxp_amount) - core::mk_float4(mxp_in));
1484
- }
1485
-
1486
- export core::color4 mx_invert_color4FA(
1487
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1488
- float mxp_amount = float(1.0)
1489
- )
1490
- [[
1491
- anno::description("Node Group: math")
1492
- ]]
1493
- {
1494
- return core::mk_color4(float4(mxp_amount) - core::mk_float4(mxp_in));
1495
- }
1496
-
1497
- export core::color4 mx_absval_color4(
1498
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1499
- )
1500
- [[
1501
- anno::description("Node Group: math")
1502
- ]]
1503
- {
1504
- return core::mk_color4(::math::abs(core::mk_float4(mxp_in)));
1505
- }
1506
-
1507
- export color mx_floor_color3(
1508
- color mxp_in = color(0.0, 0.0, 0.0)
1509
- )
1510
- [[
1511
- anno::description("Node Group: math")
1512
- ]]
1513
- {
1514
- return color(::math::floor(float3(mxp_in)));
1515
- }
1516
-
1517
- export core::color4 mx_floor_color4(
1518
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1519
- )
1520
- [[
1521
- anno::description("Node Group: math")
1522
- ]]
1523
- {
1524
- return core::mk_color4(::math::floor(core::mk_float4(mxp_in)));
1525
- }
1526
-
1527
- export color mx_ceil_color3(
1528
- color mxp_in = color(0.0, 0.0, 0.0)
1529
- )
1530
- [[
1531
- anno::description("Node Group: math")
1532
- ]]
1533
- {
1534
- return color(::math::ceil(float3(mxp_in)));
1535
- }
1536
-
1537
- export core::color4 mx_ceil_color4(
1538
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1539
- )
1540
- [[
1541
- anno::description("Node Group: math")
1542
- ]]
1543
- {
1544
- return core::mk_color4(::math::ceil(core::mk_float4(mxp_in)));
1545
- }
1546
-
1547
- export color mx_round_color3(
1548
- color mxp_in = color(0.0, 0.0, 0.0)
1549
- )
1550
- [[
1551
- anno::description("Node Group: math")
1552
- ]]
1553
- {
1554
- return color(::math::round(float3(mxp_in)));
1555
- }
1556
-
1557
- export core::color4 mx_round_color4(
1558
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1559
- )
1560
- [[
1561
- anno::description("Node Group: math")
1562
- ]]
1563
- {
1564
- return core::mk_color4(::math::round(core::mk_float4(mxp_in)));
1565
- }
1566
-
1567
- export core::color4 mx_power_color4(
1568
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1569
- core::color4 mxp_in2 = core::mk_color4(1.0, 1.0, 1.0, 1.0)
1570
- )
1571
- [[
1572
- anno::description("Node Group: math")
1573
- ]]
1574
- {
1575
- return core::mk_color4(::math::pow(core::mk_float4(mxp_in1), core::mk_float4(mxp_in2)));
1576
- }
1577
-
1578
- export core::color4 mx_power_color4FA(
1579
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1580
- float mxp_in2 = float(1.0)
1581
- )
1582
- [[
1583
- anno::description("Node Group: math")
1584
- ]]
1585
- {
1586
- return core::mk_color4(::math::pow(core::mk_float4(mxp_in1), float4(mxp_in2)));
1587
- }
1588
-
1589
- export float mx_sin_float(
1590
- float mxp_in = float(0.0)
1591
- )
1592
- [[
1593
- anno::description("Node Group: math")
1594
- ]]
1595
- {
1596
- return ::math::sin(mxp_in);
1597
- }
1598
-
1599
- export float mx_cos_float(
1600
- float mxp_in = float(0.0)
1601
- )
1602
- [[
1603
- anno::description("Node Group: math")
1604
- ]]
1605
- {
1606
- return ::math::cos(mxp_in);
1607
- }
1608
-
1609
- export float mx_tan_float(
1610
- float mxp_in = float(0.0)
1611
- )
1612
- [[
1613
- anno::description("Node Group: math")
1614
- ]]
1615
- {
1616
- return ::math::tan(mxp_in);
1617
- }
1618
-
1619
- export float mx_asin_float(
1620
- float mxp_in = float(0.0)
1621
- )
1622
- [[
1623
- anno::description("Node Group: math")
1624
- ]]
1625
- {
1626
- return ::math::asin(mxp_in);
1627
- }
1628
-
1629
- export float mx_acos_float(
1630
- float mxp_in = float(0.0)
1631
- )
1632
- [[
1633
- anno::description("Node Group: math")
1634
- ]]
1635
- {
1636
- return ::math::acos(mxp_in);
1637
- }
1638
-
1639
- export float mx_atan2_float(
1640
- float mxp_in1 = float(1.0),
1641
- float mxp_in2 = float(0.0)
1642
- )
1643
- [[
1644
- anno::description("Node Group: math")
1645
- ]]
1646
- {
1647
- return ::math::atan2(mxp_in1, mxp_in2);
1648
- }
1649
-
1650
- export float2 mx_sin_vector2(
1651
- float2 mxp_in = float2(0.0, 0.0)
1652
- )
1653
- [[
1654
- anno::description("Node Group: math")
1655
- ]]
1656
- {
1657
- return ::math::sin(mxp_in);
1658
- }
1659
-
1660
- export float2 mx_cos_vector2(
1661
- float2 mxp_in = float2(0.0, 0.0)
1662
- )
1663
- [[
1664
- anno::description("Node Group: math")
1665
- ]]
1666
- {
1667
- return ::math::cos(mxp_in);
1668
- }
1669
-
1670
- export float2 mx_tan_vector2(
1671
- float2 mxp_in = float2(0.0, 0.0)
1672
- )
1673
- [[
1674
- anno::description("Node Group: math")
1675
- ]]
1676
- {
1677
- return ::math::tan(mxp_in);
1678
- }
1679
-
1680
- export float2 mx_asin_vector2(
1681
- float2 mxp_in = float2(0.0, 0.0)
1682
- )
1683
- [[
1684
- anno::description("Node Group: math")
1685
- ]]
1686
- {
1687
- return ::math::asin(mxp_in);
1688
- }
1689
-
1690
- export float2 mx_acos_vector2(
1691
- float2 mxp_in = float2(0.0, 0.0)
1692
- )
1693
- [[
1694
- anno::description("Node Group: math")
1695
- ]]
1696
- {
1697
- return ::math::acos(mxp_in);
1698
- }
1699
-
1700
- export float2 mx_atan2_vector2(
1701
- float2 mxp_in1 = float2(1.0, 1.0),
1702
- float2 mxp_in2 = float2(0.0, 0.0)
1703
- )
1704
- [[
1705
- anno::description("Node Group: math")
1706
- ]]
1707
- {
1708
- return ::math::atan2(mxp_in1, mxp_in2);
1709
- }
1710
-
1711
- export float3 mx_sin_vector3(
1712
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1713
- )
1714
- [[
1715
- anno::description("Node Group: math")
1716
- ]]
1717
- {
1718
- return ::math::sin(mxp_in);
1719
- }
1720
-
1721
- export float3 mx_cos_vector3(
1722
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1723
- )
1724
- [[
1725
- anno::description("Node Group: math")
1726
- ]]
1727
- {
1728
- return ::math::cos(mxp_in);
1729
- }
1730
-
1731
- export float3 mx_tan_vector3(
1732
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1733
- )
1734
- [[
1735
- anno::description("Node Group: math")
1736
- ]]
1737
- {
1738
- return ::math::tan(mxp_in);
1739
- }
1740
-
1741
- export float3 mx_asin_vector3(
1742
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1743
- )
1744
- [[
1745
- anno::description("Node Group: math")
1746
- ]]
1747
- {
1748
- return ::math::asin(mxp_in);
1749
- }
1750
-
1751
- export float3 mx_acos_vector3(
1752
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1753
- )
1754
- [[
1755
- anno::description("Node Group: math")
1756
- ]]
1757
- {
1758
- return ::math::acos(mxp_in);
1759
- }
1760
-
1761
- export float3 mx_atan2_vector3(
1762
- float3 mxp_in1 = float3(1.0, 1.0, 1.0),
1763
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
1764
- )
1765
- [[
1766
- anno::description("Node Group: math")
1767
- ]]
1768
- {
1769
- return ::math::atan2(mxp_in1, mxp_in2);
1770
- }
1771
-
1772
- export float4 mx_sin_vector4(
1773
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1774
- )
1775
- [[
1776
- anno::description("Node Group: math")
1777
- ]]
1778
- {
1779
- return ::math::sin(mxp_in);
1780
- }
1781
-
1782
- export float4 mx_cos_vector4(
1783
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1784
- )
1785
- [[
1786
- anno::description("Node Group: math")
1787
- ]]
1788
- {
1789
- return ::math::cos(mxp_in);
1790
- }
1791
-
1792
- export float4 mx_tan_vector4(
1793
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1794
- )
1795
- [[
1796
- anno::description("Node Group: math")
1797
- ]]
1798
- {
1799
- return ::math::tan(mxp_in);
1800
- }
1801
-
1802
- export float4 mx_asin_vector4(
1803
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1804
- )
1805
- [[
1806
- anno::description("Node Group: math")
1807
- ]]
1808
- {
1809
- return ::math::asin(mxp_in);
1810
- }
1811
-
1812
- export float4 mx_acos_vector4(
1813
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1814
- )
1815
- [[
1816
- anno::description("Node Group: math")
1817
- ]]
1818
- {
1819
- return ::math::acos(mxp_in);
1820
- }
1821
-
1822
- export float4 mx_atan2_vector4(
1823
- float4 mxp_in1 = float4(1.0, 1.0, 1.0, 1.0),
1824
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
1825
- )
1826
- [[
1827
- anno::description("Node Group: math")
1828
- ]]
1829
- {
1830
- return ::math::atan2(mxp_in1, mxp_in2);
1831
- }
1832
-
1833
- export float mx_sqrt_float(
1834
- float mxp_in = float(0.0)
1835
- )
1836
- [[
1837
- anno::description("Node Group: math")
1838
- ]]
1839
- {
1840
- return ::math::sqrt(mxp_in);
1841
- }
1842
-
1843
- export float mx_ln_float(
1844
- float mxp_in = float(1.0)
1845
- )
1846
- [[
1847
- anno::description("Node Group: math")
1848
- ]]
1849
- {
1850
- return ::math::log(mxp_in);
1851
- }
1852
-
1853
- export float mx_exp_float(
1854
- float mxp_in = float(0.0)
1855
- )
1856
- [[
1857
- anno::description("Node Group: math")
1858
- ]]
1859
- {
1860
- return ::math::exp(mxp_in);
1861
- }
1862
-
1863
- export float2 mx_sqrt_vector2(
1864
- float2 mxp_in = float2(0.0, 0.0)
1865
- )
1866
- [[
1867
- anno::description("Node Group: math")
1868
- ]]
1869
- {
1870
- return ::math::sqrt(mxp_in);
1871
- }
1872
-
1873
- export float2 mx_ln_vector2(
1874
- float2 mxp_in = float2(1.0, 1.0)
1875
- )
1876
- [[
1877
- anno::description("Node Group: math")
1878
- ]]
1879
- {
1880
- return ::math::log(mxp_in);
1881
- }
1882
-
1883
- export float2 mx_exp_vector2(
1884
- float2 mxp_in = float2(0.0, 0.0)
1885
- )
1886
- [[
1887
- anno::description("Node Group: math")
1888
- ]]
1889
- {
1890
- return ::math::exp(mxp_in);
1891
- }
1892
-
1893
- export float3 mx_sqrt_vector3(
1894
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1895
- )
1896
- [[
1897
- anno::description("Node Group: math")
1898
- ]]
1899
- {
1900
- return ::math::sqrt(mxp_in);
1901
- }
1902
-
1903
- export float3 mx_ln_vector3(
1904
- float3 mxp_in = float3(1.0, 1.0, 1.0)
1905
- )
1906
- [[
1907
- anno::description("Node Group: math")
1908
- ]]
1909
- {
1910
- return ::math::log(mxp_in);
1911
- }
1912
-
1913
- export float3 mx_exp_vector3(
1914
- float3 mxp_in = float3(0.0, 0.0, 0.0)
1915
- )
1916
- [[
1917
- anno::description("Node Group: math")
1918
- ]]
1919
- {
1920
- return ::math::exp(mxp_in);
1921
- }
1922
-
1923
- export float4 mx_sqrt_vector4(
1924
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1925
- )
1926
- [[
1927
- anno::description("Node Group: math")
1928
- ]]
1929
- {
1930
- return ::math::sqrt(mxp_in);
1931
- }
1932
-
1933
- export float4 mx_ln_vector4(
1934
- float4 mxp_in = float4(1.0, 1.0, 1.0, 1.0)
1935
- )
1936
- [[
1937
- anno::description("Node Group: math")
1938
- ]]
1939
- {
1940
- return ::math::log(mxp_in);
1941
- }
1942
-
1943
- export float4 mx_exp_vector4(
1944
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0)
1945
- )
1946
- [[
1947
- anno::description("Node Group: math")
1948
- ]]
1949
- {
1950
- return ::math::exp(mxp_in);
1951
- }
1952
-
1953
- export color mx_sign_color3(
1954
- color mxp_in = color(0.0, 0.0, 0.0)
1955
- )
1956
- [[
1957
- anno::description("Node Group: math")
1958
- ]]
1959
- {
1960
- return color(::math::sign(float3(mxp_in)));
1961
- }
1962
-
1963
- export core::color4 mx_sign_color4(
1964
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
1965
- )
1966
- [[
1967
- anno::description("Node Group: math")
1968
- ]]
1969
- {
1970
- return core::mk_color4(::math::sign(core::mk_float4(mxp_in)));
1971
- }
1972
-
1973
- export core::color4 mx_clamp_color4(
1974
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1975
- core::color4 mxp_low = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1976
- core::color4 mxp_high = core::mk_color4(1.0, 1.0, 1.0, 1.0)
1977
- )
1978
- [[
1979
- anno::description("Node Group: math")
1980
- ]]
1981
- {
1982
- return core::mk_color4(::math::clamp(core::mk_float4(mxp_in), core::mk_float4(mxp_low), core::mk_float4(mxp_high)));
1983
- }
1984
-
1985
- export core::color4 mx_clamp_color4FA(
1986
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1987
- float mxp_low = float(0.0),
1988
- float mxp_high = float(1.0)
1989
- )
1990
- [[
1991
- anno::description("Node Group: math")
1992
- ]]
1993
- {
1994
- return core::mk_color4(::math::clamp(core::mk_float4(mxp_in), float4(mxp_low), float4(mxp_high)));
1995
- }
1996
-
1997
- export core::color4 mx_min_color4(
1998
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
1999
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
2000
- )
2001
- [[
2002
- anno::description("Node Group: math")
2003
- ]]
2004
- {
2005
- return core::mk_color4(::math::min(core::mk_float4(mxp_in1), core::mk_float4(mxp_in2)));
2006
- }
2007
-
2008
- export core::color4 mx_min_color4(
2009
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2010
- float mxp_in2 = float(0.0)
2011
- )
2012
- [[
2013
- anno::description("Node Group: math")
2014
- ]]
2015
- {
2016
- return core::mk_color4(::math::min(core::mk_float4(mxp_in1), float4(mxp_in2)));
2017
- }
2018
-
2019
- export core::color4 mx_max_color4(
2020
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2021
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
2022
- )
2023
- [[
2024
- anno::description("Node Group: math")
2025
- ]]
2026
- {
2027
- return core::mk_color4(::math::max(core::mk_float4(mxp_in1), core::mk_float4(mxp_in2)));
2028
- }
2029
-
2030
- export core::color4 mx_max_color4(
2031
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2032
- float mxp_in2 = float(0.0)
2033
- )
2034
- [[
2035
- anno::description("Node Group: math")
2036
- ]]
2037
- {
2038
- return core::mk_color4(::math::max(core::mk_float4(mxp_in1), float4(mxp_in2)));
2039
- }
2040
-
2041
- export float3 mx_transformpoint_vector3(
2042
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2043
- uniform string mxp_fromspace = "object",
2044
- uniform string mxp_tospace = "world"
2045
- )
2046
- [[
2047
- anno::description("Node Group: math")
2048
- ]]
2049
- {
2050
- state::coordinate_space fromSpace = ::core::mx_map_space(mxp_fromspace);
2051
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_tospace);
2052
- return state::transform_point(fromSpace, toSpace, mxp_in);
2053
- }
2054
-
2055
- export float3 mx_transformvector_vector3(
2056
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2057
- uniform string mxp_fromspace = "object",
2058
- uniform string mxp_tospace = "world"
2059
- )
2060
- [[
2061
- anno::description("Node Group: math")
2062
- ]]
2063
- {
2064
- state::coordinate_space fromSpace = ::core::mx_map_space(mxp_fromspace);
2065
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_tospace);
2066
- return state::transform_vector(fromSpace, toSpace, mxp_in);
2067
- }
2068
-
2069
- export float3 mx_transformnormal_vector3(
2070
- float3 mxp_in = float3(0.0, 0.0, 1.0),
2071
- uniform string mxp_fromspace = "object",
2072
- uniform string mxp_tospace = "world"
2073
- )
2074
- [[
2075
- anno::description("Node Group: math")
2076
- ]]
2077
- {
2078
- state::coordinate_space fromSpace = ::core::mx_map_space(mxp_fromspace);
2079
- state::coordinate_space toSpace = ::core::mx_map_space(mxp_tospace);
2080
- return state::transform_normal(fromSpace, toSpace, mxp_in);
2081
- }
2082
-
2083
- export float2 mx_transformmatrix_vector2M3(
2084
- float2 mxp_in = float2(0.0, 0.0),
2085
- float3x3 mxp_mat = float3x3(1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0)
2086
- )
2087
- [[
2088
- anno::description("Node Group: math")
2089
- ]]
2090
- {
2091
- float3 returnValue = mxp_mat * float3(mxp_in.x, mxp_in.y, 1.0);
2092
- return float2(returnValue.x, returnValue.y);
2093
- }
2094
-
2095
- export float3 mx_transformmatrix_vector3(
2096
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2097
- float3x3 mxp_mat = float3x3(1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0)
2098
- )
2099
- [[
2100
- anno::description("Node Group: math")
2101
- ]]
2102
- {
2103
- return mxp_mat * mxp_in;
2104
- }
2105
-
2106
- export float3 mx_transformmatrix_vector3M4(
2107
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2108
- float4x4 mxp_mat = float4x4(1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0)
2109
- )
2110
- [[
2111
- anno::description("Node Group: math")
2112
- ]]
2113
- {
2114
- float4 returnValue = mxp_mat * float4(mxp_in.x, mxp_in.y, mxp_in.z, 1.0);
2115
- return float3(returnValue.x, returnValue.y, returnValue.z);
2116
- }
2117
-
2118
- export float4 mx_transformmatrix_vector4(
2119
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2120
- float4x4 mxp_mat = float4x4(1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0)
2121
- )
2122
- [[
2123
- anno::description("Node Group: math")
2124
- ]]
2125
- {
2126
- return mxp_mat * mxp_in;
2127
- }
2128
-
2129
- export float3 mx_normalmap_vector2(
2130
- float3 mxp_in = float3(0.5, 0.5, 1.0),
2131
- float2 mxp_scale = float2(1.0, 1.0),
2132
- float3 mxp_normal = float3(::state::transform_normal(::state::coordinate_internal,::state::coordinate_world,::state::normal())),
2133
- float3 mxp_tangent = float3(state::transform_vector(::state::coordinate_internal,::state::coordinate_world,::state::texture_tangent_u(0))),
2134
- float3 mxp_bitangent = float3(state::transform_vector(::state::coordinate_internal,::state::coordinate_world,::state::texture_tangent_v(0)))
2135
- )
2136
- [[
2137
- anno::description("Node Group: math")
2138
- ]]
2139
- {
2140
- float3 v = (mxp_in == float3(0.0)) ? float3(0.0, 0.0, 1.0) : mxp_in * 2.0 - 1.0;
2141
-
2142
- return ::math::normalize(mxp_tangent * v.x * mxp_scale.x + mxp_bitangent * v.y * mxp_scale.y + mxp_normal * v.z);
2143
- }
2144
-
2145
- export float3 mx_normalmap_float(
2146
- float3 mxp_in = float3(0.5, 0.5, 1.0),
2147
- float mxp_scale = float(1.0),
2148
- float3 mxp_normal = float3(::state::transform_normal(::state::coordinate_internal,::state::coordinate_world,::state::normal())),
2149
- float3 mxp_tangent = float3(state::transform_vector(::state::coordinate_internal,::state::coordinate_world,::state::texture_tangent_u(0))),
2150
- float3 mxp_bitangent = float3(state::transform_vector(::state::coordinate_internal,::state::coordinate_world,::state::texture_tangent_v(0)))
2151
- )
2152
- [[
2153
- anno::description("Node Group: math")
2154
- ]]
2155
- {
2156
- return mx_normalmap_vector2(mxp_in, float2(mxp_scale, mxp_scale), mxp_normal, mxp_tangent, mxp_bitangent);
2157
- }
2158
-
2159
- export float3x3 mx_transpose_matrix33(
2160
- float3x3 mxp_in = float3x3(1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0)
2161
- )
2162
- [[
2163
- anno::description("Node Group: math")
2164
- ]]
2165
- {
2166
- return ::math::transpose(mxp_in);
2167
- }
2168
-
2169
- export float4x4 mx_transpose_matrix44(
2170
- float4x4 mxp_in = float4x4(1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0)
2171
- )
2172
- [[
2173
- anno::description("Node Group: math")
2174
- ]]
2175
- {
2176
- return ::math::transpose(mxp_in);
2177
- }
2178
-
2179
- export float mx_determinant_matrix33(float3x3 mxp_in)
2180
- [[
2181
- anno::description("Node Group: math")
2182
- ]]
2183
- {
2184
- return mxp_in[0][0] * (mxp_in[2][2]*mxp_in[1][1] - mxp_in[1][2]*mxp_in[2][1])
2185
- + mxp_in[0][1] * (mxp_in[1][2]*mxp_in[2][0] - mxp_in[2][2]*mxp_in[1][0])
2186
- + mxp_in[0][2] * (mxp_in[2][1]*mxp_in[1][0] - mxp_in[1][1]*mxp_in[2][0]);
2187
- }
2188
-
2189
- export float mx_determinant_matrix44(float4x4 mxp_in)
2190
- [[
2191
- anno::description("Node Group: math")
2192
- ]]
2193
- {
2194
- float
2195
- b00 = mxp_in[0][0] * mxp_in[1][1] - mxp_in[0][1] * mxp_in[1][0],
2196
- b01 = mxp_in[0][0] * mxp_in[1][2] - mxp_in[0][2] * mxp_in[1][0],
2197
- b02 = mxp_in[0][0] * mxp_in[1][3] - mxp_in[0][3] * mxp_in[1][0],
2198
- b03 = mxp_in[0][1] * mxp_in[1][2] - mxp_in[0][2] * mxp_in[1][1],
2199
- b04 = mxp_in[0][1] * mxp_in[1][3] - mxp_in[0][3] * mxp_in[1][1],
2200
- b05 = mxp_in[0][2] * mxp_in[1][3] - mxp_in[0][3] * mxp_in[1][2],
2201
- b06 = mxp_in[2][0] * mxp_in[3][1] - mxp_in[2][1] * mxp_in[3][0],
2202
- b07 = mxp_in[2][0] * mxp_in[3][2] - mxp_in[2][2] * mxp_in[3][0],
2203
- b08 = mxp_in[2][0] * mxp_in[3][3] - mxp_in[2][3] * mxp_in[3][0],
2204
- b09 = mxp_in[2][1] * mxp_in[3][2] - mxp_in[2][2] * mxp_in[3][1],
2205
- b10 = mxp_in[2][1] * mxp_in[3][3] - mxp_in[2][3] * mxp_in[3][1],
2206
- b11 = mxp_in[2][2] * mxp_in[3][3] - mxp_in[2][3] * mxp_in[3][2];
2207
- return b00 * b11 - b01 * b10 + b02 * b09 + b03 * b08 - b04 * b07 + b05 * b06;
2208
- }
2209
-
2210
- export float3x3 mx_invertmatrix_matrix33(
2211
- float3x3 mxp_in = float3x3(1.0,0.0,0.0, 0.0,1.0,0.0, 0.0,0.0,1.0)
2212
- )
2213
- [[
2214
- anno::description("Node Group: math")
2215
- ]]
2216
- {
2217
- // Not implemented: mx_invertmatrix_matrix33
2218
- float3x3 defaultValue = mxp_in;
2219
- return defaultValue;
2220
- }
2221
-
2222
- export float4x4 mx_invertmatrix_matrix44(
2223
- float4x4 mxp_in = float4x4(1.0,0.0,0.0,0.0, 0.0,1.0,0.0,0.0, 0.0,0.0,1.0,0.0, 0.0,0.0,0.0,1.0)
2224
- )
2225
- [[
2226
- anno::description("Node Group: math")
2227
- ]]
2228
- {
2229
- // Not implemented: mx_invertmatrix_matrix44
2230
- float4x4 defaultValue = mxp_in;
2231
- return defaultValue;
2232
- }
2233
-
2234
- export float2 mx_rotate2d_vector2(
2235
- float2 mxp_in = float2(0.0, 0.0),
2236
- float mxp_amount = float(0.0)
2237
- [[
2238
- anno::description("Unit Type:angle. Unit:degrees.")
2239
- ]]
2240
- )
2241
- [[
2242
- anno::description("Node Group: math")
2243
- ]]
2244
- {
2245
- float angleRadians = math::radians(mxp_amount);
2246
- float sinAngle = math::sin(angleRadians);
2247
- float cosAngle = math::cos(angleRadians);
2248
- return float2(cosAngle*mxp_in.x + sinAngle*mxp_in.y, -sinAngle*mxp_in.x + cosAngle*mxp_in.y);
2249
- }
2250
-
2251
- float4x4 mx_rotationMatrix(float3 mxp_axis, float mxp_amount)
2252
- {
2253
- float sinAngle = math::sin(mxp_amount);
2254
- float cosAngle = math::cos(mxp_amount);
2255
- float oc = 1.0 - cosAngle;
2256
-
2257
- return float4x4(
2258
- oc * mxp_axis.x * mxp_axis.x + cosAngle, oc * mxp_axis.x * mxp_axis.y - mxp_axis.z * sinAngle, oc * mxp_axis.z * mxp_axis.x + mxp_axis.y * sinAngle, 0.0,
2259
- oc * mxp_axis.x * mxp_axis.y + mxp_axis.z * sinAngle, oc * mxp_axis.y * mxp_axis.y + cosAngle, oc * mxp_axis.y * mxp_axis.z - mxp_axis.x * sinAngle, 0.0,
2260
- oc * mxp_axis.z * mxp_axis.x - mxp_axis.y * sinAngle, oc * mxp_axis.y * mxp_axis.z + mxp_axis.x * sinAngle, oc * mxp_axis.z * mxp_axis.z + cosAngle, 0.0,
2261
- 0.0, 0.0, 0.0, 1.0);
2262
- }
2263
-
2264
- export float3 mx_rotate3d_vector3(
2265
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2266
- float mxp_amount = float(0.0)
2267
- [[
2268
- anno::description("Unit Type:angle. Unit:degrees.")
2269
- ]],
2270
- float3 mxp_axis = float3(0.0, 1.0, 0.0)
2271
- )
2272
- [[
2273
- anno::description("Node Group: math")
2274
- ]]
2275
- {
2276
- float angleRadians = math::radians(mxp_amount);
2277
- float4x4 m = mx_rotationMatrix(mxp_axis, angleRadians);
2278
- float4 v = m * float4(mxp_in.x, mxp_in.y, mxp_in.z, 1.0);
2279
- return float3(v.x, v.y, v.z);
2280
- }
2281
-
2282
- // Nodedef: ND_place2d_vector2 is represented by a nodegraph: NG_place2d_vector2
2283
-
2284
- export float mx_remap_float(
2285
- float mxp_in = float(0.0),
2286
- float mxp_inlow = float(0.0),
2287
- float mxp_inhigh = float(1.0),
2288
- float mxp_outlow = float(0.0),
2289
- float mxp_outhigh = float(1.0)
2290
- )
2291
- [[
2292
- anno::description("Node Group: adjustment")
2293
- ]]
2294
- {
2295
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2296
- }
2297
-
2298
- export color mx_remap_color3(
2299
- color mxp_in = color(0.0, 0.0, 0.0),
2300
- color mxp_inlow = color(0.0, 0.0, 0.0),
2301
- color mxp_inhigh = color(1.0, 1.0, 1.0),
2302
- color mxp_outlow = color(0.0, 0.0, 0.0),
2303
- color mxp_outhigh = color(1.0, 1.0, 1.0)
2304
- )
2305
- [[
2306
- anno::description("Node Group: adjustment")
2307
- ]]
2308
- {
2309
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2310
- }
2311
-
2312
- export core::color4 mx_remap_color4(
2313
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2314
- core::color4 mxp_inlow = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2315
- core::color4 mxp_inhigh = core::mk_color4(1.0, 1.0, 1.0, 1.0),
2316
- core::color4 mxp_outlow = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2317
- core::color4 mxp_outhigh = core::mk_color4(1.0, 1.0, 1.0, 1.0)
2318
- )
2319
- [[
2320
- anno::description("Node Group: adjustment")
2321
- ]]
2322
- {
2323
- core::color4 val = mxp_outlow;
2324
- core::color4 val2 = core::mx_add(val, core::mx_subtract(mxp_in, mxp_inlow));
2325
- core::color4 val3 = core::mx_multiply(val2, core::mx_subtract(mxp_outhigh, mxp_outlow));
2326
- return core::mx_divide(val3, core::mx_subtract(mxp_inhigh, mxp_inlow));
2327
- }
2328
-
2329
- export float2 mx_remap_vector2(
2330
- float2 mxp_in = float2(0.0, 0.0),
2331
- float2 mxp_inlow = float2(0.0, 0.0),
2332
- float2 mxp_inhigh = float2(1.0, 1.0),
2333
- float2 mxp_outlow = float2(0.0, 0.0),
2334
- float2 mxp_outhigh = float2(1.0, 1.0)
2335
- )
2336
- [[
2337
- anno::description("Node Group: adjustment")
2338
- ]]
2339
- {
2340
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2341
- }
2342
-
2343
- export float3 mx_remap_vector3(
2344
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2345
- float3 mxp_inlow = float3(0.0, 0.0, 0.0),
2346
- float3 mxp_inhigh = float3(1.0, 1.0, 1.0),
2347
- float3 mxp_outlow = float3(0.0, 0.0, 0.0),
2348
- float3 mxp_outhigh = float3(1.0, 1.0, 1.0)
2349
- )
2350
- [[
2351
- anno::description("Node Group: adjustment")
2352
- ]]
2353
- {
2354
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2355
- }
2356
-
2357
- export float4 mx_remap_vector4(
2358
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2359
- float4 mxp_inlow = float4(0.0, 0.0, 0.0, 0.0),
2360
- float4 mxp_inhigh = float4(1.0, 1.0, 1.0, 1.0),
2361
- float4 mxp_outlow = float4(0.0, 0.0, 0.0, 0.0),
2362
- float4 mxp_outhigh = float4(1.0, 1.0, 1.0, 1.0)
2363
- )
2364
- [[
2365
- anno::description("Node Group: adjustment")
2366
- ]]
2367
- {
2368
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2369
- }
2370
-
2371
- export color mx_remap_color3FA(
2372
- color mxp_in = color(0.0, 0.0, 0.0),
2373
- float mxp_inlow = float(0.0),
2374
- float mxp_inhigh = float(1.0),
2375
- float mxp_outlow = float(0.0),
2376
- float mxp_outhigh = float(1.0)
2377
- )
2378
- [[
2379
- anno::description("Node Group: adjustment")
2380
- ]]
2381
- {
2382
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2383
- }
2384
-
2385
- export core::color4 mx_remap_color4FA(
2386
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2387
- float mxp_inlow = float(0.0),
2388
- float mxp_inhigh = float(1.0),
2389
- float mxp_outlow = float(0.0),
2390
- float mxp_outhigh = float(1.0)
2391
- )
2392
- [[
2393
- anno::description("Node Group: adjustment")
2394
- ]]
2395
- {
2396
- core::color4 val = core::mk_color4(mxp_outlow);
2397
- core::color4 val2 = core::mx_add(val, core::mx_subtract(mxp_in, core::mk_color4(mxp_inlow)));
2398
- core::color4 val3 = core::mx_multiply(val2, core::mx_subtract(core::mk_color4(mxp_outhigh), core::mk_color4(mxp_outlow)));
2399
- return core::mx_divide(val3, core::mx_subtract(core::mk_color4(mxp_inhigh), core::mk_color4(mxp_inlow)));
2400
- }
2401
-
2402
- export float2 mx_remap_vector2FA(
2403
- float2 mxp_in = float2(0.0, 0.0),
2404
- float mxp_inlow = float(0.0),
2405
- float mxp_inhigh = float(1.0),
2406
- float mxp_outlow = float(0.0),
2407
- float mxp_outhigh = float(1.0)
2408
- )
2409
- [[
2410
- anno::description("Node Group: adjustment")
2411
- ]]
2412
- {
2413
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2414
- }
2415
-
2416
- export float3 mx_remap_vector3FA(
2417
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2418
- float mxp_inlow = float(0.0),
2419
- float mxp_inhigh = float(1.0),
2420
- float mxp_outlow = float(0.0),
2421
- float mxp_outhigh = float(1.0)
2422
- )
2423
- [[
2424
- anno::description("Node Group: adjustment")
2425
- ]]
2426
- {
2427
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2428
- }
2429
-
2430
- export float4 mx_remap_vector4FA(
2431
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2432
- float mxp_inlow = float(0.0),
2433
- float mxp_inhigh = float(1.0),
2434
- float mxp_outlow = float(0.0),
2435
- float mxp_outhigh = float(1.0)
2436
- )
2437
- [[
2438
- anno::description("Node Group: adjustment")
2439
- ]]
2440
- {
2441
- return mxp_outlow + (mxp_in - mxp_inlow) * (mxp_outhigh - mxp_outlow) / (mxp_inhigh - mxp_inlow);
2442
- }
2443
-
2444
- export float mx_smoothstep_float(
2445
- float mxp_in = float(0.0),
2446
- float mxp_low = float(0.0),
2447
- float mxp_high = float(1.0)
2448
- )
2449
- [[
2450
- anno::description("Node Group: adjustment")
2451
- ]]
2452
- {
2453
- return ::math::smoothstep(float(mxp_low), float(mxp_high), float(mxp_in));
2454
- }
2455
-
2456
- export color mx_smoothstep_color3(
2457
- color mxp_in = color(0.0, 0.0, 0.0),
2458
- color mxp_low = color(0.0, 0.0, 0.0),
2459
- color mxp_high = color(1.0, 1.0, 1.0)
2460
- )
2461
- [[
2462
- anno::description("Node Group: adjustment")
2463
- ]]
2464
- {
2465
- return color(::math::smoothstep(float3(mxp_low), float3(mxp_high), float3(mxp_in)));
2466
- }
2467
-
2468
- export core::color4 mx_smoothstep_color4(
2469
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2470
- core::color4 mxp_low = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2471
- core::color4 mxp_high = core::mk_color4(1.0, 1.0, 1.0, 1.0)
2472
- )
2473
- [[
2474
- anno::description("Node Group: adjustment")
2475
- ]]
2476
- {
2477
- return core::mk_color4(::math::smoothstep(core::mk_float4(mxp_low), core::mk_float4(mxp_high), core::mk_float4(mxp_in)));
2478
- }
2479
-
2480
- export float2 mx_smoothstep_vector2(
2481
- float2 mxp_in = float2(0.0, 0.0),
2482
- float2 mxp_low = float2(0.0, 0.0),
2483
- float2 mxp_high = float2(1.0, 1.0)
2484
- )
2485
- [[
2486
- anno::description("Node Group: adjustment")
2487
- ]]
2488
- {
2489
- return ::math::smoothstep(float2(mxp_low), float2(mxp_high), float2(mxp_in));
2490
- }
2491
-
2492
- export float3 mx_smoothstep_vector3(
2493
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2494
- float3 mxp_low = float3(0.0, 0.0, 0.0),
2495
- float3 mxp_high = float3(1.0, 1.0, 1.0)
2496
- )
2497
- [[
2498
- anno::description("Node Group: adjustment")
2499
- ]]
2500
- {
2501
- return ::math::smoothstep(float3(mxp_low), float3(mxp_high), float3(mxp_in));
2502
- }
2503
-
2504
- export float4 mx_smoothstep_vector4(
2505
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2506
- float4 mxp_low = float4(0.0, 0.0, 0.0, 0.0),
2507
- float4 mxp_high = float4(1.0, 1.0, 1.0, 1.0)
2508
- )
2509
- [[
2510
- anno::description("Node Group: adjustment")
2511
- ]]
2512
- {
2513
- return ::math::smoothstep(float4(mxp_low), float4(mxp_high), float4(mxp_in));
2514
- }
2515
-
2516
- export color mx_smoothstep_color3FA(
2517
- color mxp_in = color(0.0, 0.0, 0.0),
2518
- float mxp_low = float(0.0),
2519
- float mxp_high = float(1.0)
2520
- )
2521
- [[
2522
- anno::description("Node Group: adjustment")
2523
- ]]
2524
- {
2525
- return color(::math::smoothstep(float3(mxp_in), float3(mxp_low), float3(mxp_high)));
2526
- }
2527
-
2528
- export core::color4 mx_smoothstep_color4FA(
2529
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2530
- float mxp_low = float(0.0),
2531
- float mxp_high = float(1.0)
2532
- )
2533
- [[
2534
- anno::description("Node Group: adjustment")
2535
- ]]
2536
- {
2537
- return core::mk_color4(::math::smoothstep(core::mk_float4(mxp_in), float4(mxp_low), float4(mxp_high)));
2538
- }
2539
-
2540
- export float2 mx_smoothstep_vector2FA(
2541
- float2 mxp_in = float2(0.0, 0.0),
2542
- float mxp_low = float(0.0),
2543
- float mxp_high = float(1.0)
2544
- )
2545
- [[
2546
- anno::description("Node Group: adjustment")
2547
- ]]
2548
- {
2549
- return ::math::smoothstep(float2(mxp_low), float2(mxp_high), float2(mxp_in));
2550
- }
2551
-
2552
- export float3 mx_smoothstep_vector3FA(
2553
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2554
- float mxp_low = float(0.0),
2555
- float mxp_high = float(1.0)
2556
- )
2557
- [[
2558
- anno::description("Node Group: adjustment")
2559
- ]]
2560
- {
2561
- return ::math::smoothstep(float3(mxp_low), float3(mxp_high), float3(mxp_in));
2562
- }
2563
-
2564
- export float4 mx_smoothstep_vector4FA(
2565
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2566
- float mxp_low = float(0.0),
2567
- float mxp_high = float(1.0)
2568
- )
2569
- [[
2570
- anno::description("Node Group: adjustment")
2571
- ]]
2572
- {
2573
- return ::math::smoothstep(float4(mxp_low), float4(mxp_high), float4(mxp_in));
2574
- }
2575
-
2576
- export float mx_curveadjust_float(
2577
- float mxp_in = float(0.0),
2578
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2579
- )
2580
- [[
2581
- anno::description("Node Group: adjustment")
2582
- ]]
2583
- {
2584
- // Not implemented: mx_curveadjust_float
2585
- float defaultValue = mxp_in;
2586
- return defaultValue;
2587
- }
2588
-
2589
- export color mx_curveadjust_color3(
2590
- color mxp_in = color(0.0, 0.0, 0.0),
2591
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2592
- )
2593
- [[
2594
- anno::description("Node Group: adjustment")
2595
- ]]
2596
- {
2597
- // Not implemented: mx_curveadjust_color3
2598
- color defaultValue = mxp_in;
2599
- return defaultValue;
2600
- }
2601
-
2602
- export core::color4 mx_curveadjust_color4(
2603
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2604
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2605
- )
2606
- [[
2607
- anno::description("Node Group: adjustment")
2608
- ]]
2609
- {
2610
- // Not implemented: mx_curveadjust_color4
2611
- core::color4 defaultValue = mxp_in;
2612
- return defaultValue;
2613
- }
2614
-
2615
- export float2 mx_curveadjust_vector2(
2616
- float2 mxp_in = float2(0.0, 0.0),
2617
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2618
- )
2619
- [[
2620
- anno::description("Node Group: adjustment")
2621
- ]]
2622
- {
2623
- // Not implemented: mx_curveadjust_vector2
2624
- float2 defaultValue = mxp_in;
2625
- return defaultValue;
2626
- }
2627
-
2628
- export float3 mx_curveadjust_vector3(
2629
- float3 mxp_in = float3(0.0, 0.0, 0.0),
2630
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2631
- )
2632
- [[
2633
- anno::description("Node Group: adjustment")
2634
- ]]
2635
- {
2636
- // Not implemented: mx_curveadjust_vector3
2637
- float3 defaultValue = mxp_in;
2638
- return defaultValue;
2639
- }
2640
-
2641
- export float4 mx_curveadjust_vector4(
2642
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
2643
- float2[<N>] mxp_knots = float2[]() [[ anno::unused() ]]
2644
- )
2645
- [[
2646
- anno::description("Node Group: adjustment")
2647
- ]]
2648
- {
2649
- // Not implemented: mx_curveadjust_vector4
2650
- float4 defaultValue = mxp_in;
2651
- return defaultValue;
2652
- }
2653
-
2654
- export color mx_luminance_color3(
2655
- color mxp_in = color(0.0, 0.0, 0.0),
2656
- color mxp_lumacoeffs = color(0.2722287, 0.6740818, 0.0536895)
2657
- [[
2658
- anno::description("Enumeration {acescg, rec709, rec2020, rec2100}.")
2659
- ]]
2660
- )
2661
- [[
2662
- anno::description("Node Group: adjustment")
2663
- ]]
2664
- {
2665
- return color(::math::dot(float3(mxp_in), float3(mxp_lumacoeffs)));
2666
- }
2667
-
2668
- export core::color4 mx_luminance_color4(
2669
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2670
- color mxp_lumacoeffs = color(0.2722287, 0.6740818, 0.0536895)
2671
- [[
2672
- anno::description("Enumeration {acescg, rec709, rec2020, rec2100}.")
2673
- ]]
2674
- )
2675
- [[
2676
- anno::description("Node Group: adjustment")
2677
- ]]
2678
- {
2679
- return core::mk_color4(color(::math::dot(float3(mxp_in.rgb), float3(mxp_lumacoeffs))), mxp_in.a);
2680
- }
2681
-
2682
- export color mx_rgbtohsv_color3(
2683
- color mxp_in = color(0.0, 0.0, 0.0)
2684
- )
2685
- [[
2686
- anno::description("Node Group: adjustment")
2687
- ]]
2688
- {
2689
- return color(::hsv::mx_rgbtohsv(float3(mxp_in)));
2690
- }
2691
-
2692
- export core::color4 mx_rgbtohsv_color4(
2693
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
2694
- )
2695
- [[
2696
- anno::description("Node Group: adjustment")
2697
- ]]
2698
- {
2699
- float3 rgb = hsv::mx_rgbtohsv(float3(mxp_in.rgb));
2700
- return core::color4(color(rgb), mxp_in.a);
2701
- }
2702
-
2703
- export color mx_hsvtorgb_color3(
2704
- color mxp_in = color(0.0, 0.0, 0.0)
2705
- )
2706
- [[
2707
- anno::description("Node Group: adjustment")
2708
- ]]
2709
- {
2710
- return color(hsv::mx_hsvtorgb(float3(mxp_in)));
2711
- }
2712
-
2713
- export core::color4 mx_hsvtorgb_color4(
2714
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0)
2715
- )
2716
- [[
2717
- anno::description("Node Group: adjustment")
2718
- ]]
2719
- {
2720
- float3 rgb = hsv::mx_hsvtorgb(float3(mxp_in.rgb));
2721
- return core::color4(color(rgb), mxp_in.a);
2722
- }
2723
-
2724
- export core::color4 mx_premult_color4(
2725
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 1.0)
2726
- )
2727
- [[
2728
- anno::description("Node Group: compositing")
2729
- ]]
2730
- {
2731
- // Not implemented: mx_premult_color4
2732
- core::color4 defaultValue = mxp_in;
2733
- return defaultValue;
2734
- }
2735
-
2736
- export core::color4 mx_unpremult_color4(
2737
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 1.0)
2738
- )
2739
- [[
2740
- anno::description("Node Group: compositing")
2741
- ]]
2742
- {
2743
- // Not implemented: mx_unpremult_color4
2744
- core::color4 defaultValue = mxp_in;
2745
- return defaultValue;
2746
- }
2747
-
2748
- export core::color4 mx_plus_color4(
2749
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2750
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2751
- float mxp_mix = float(1.0)
2752
- )
2753
- [[
2754
- anno::description("Node Group: compositing")
2755
- ]]
2756
- {
2757
- color rgb = (mxp_mix*(mxp_bg.rgb + mxp_fg.rgb)) + ((1.0-mxp_mix)*mxp_bg.rgb);
2758
- float a = (mxp_mix*(mxp_bg.a + mxp_fg.a )) + ((1.0-mxp_mix)*mxp_bg.a );
2759
- return core::color4(rgb,a);
2760
- }
2761
-
2762
- export core::color4 mx_minus_color4(
2763
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2764
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2765
- float mxp_mix = float(1.0)
2766
- )
2767
- [[
2768
- anno::description("Node Group: compositing")
2769
- ]]
2770
- {
2771
- color rgb = (mxp_mix*(mxp_bg.rgb - mxp_fg.rgb)) + ((1.0-mxp_mix)*mxp_bg.rgb);
2772
- float a = (mxp_mix*(mxp_bg.a - mxp_fg.a )) + ((1.0-mxp_mix)*mxp_bg.a );
2773
- return core::color4(rgb,a);
2774
- }
2775
-
2776
- export core::color4 mx_difference_color4(
2777
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2778
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2779
- float mxp_mix = float(1.0)
2780
- )
2781
- [[
2782
- anno::description("Node Group: compositing")
2783
- ]]
2784
- {
2785
- color rgb = (mxp_mix*math::abs(mxp_bg.rgb - mxp_fg.rgb)) + ((1.0-mxp_mix)*mxp_bg.rgb);
2786
- float a = (mxp_mix*math::abs(mxp_bg.a - mxp_fg.a )) + ((1.0-mxp_mix)*mxp_bg.a );
2787
- return core::color4(rgb,a);
2788
- }
2789
-
2790
- export float mx_burn_float(
2791
- float mxp_fg = 0.0,
2792
- float mxp_bg = 0.0,
2793
- float mxp_mix = 1.0
2794
- )
2795
- [[
2796
- anno::description("Node Group: compositing")
2797
- ]]
2798
- {
2799
- if (math::abs(mxp_fg) < core::FLOAT_EPS)
2800
- {
2801
- return 0.0;
2802
- }
2803
- return mxp_mix*(1.0 - ((1.0 - mxp_bg) / mxp_fg)) + ((1.0 - mxp_mix)*mxp_bg);
2804
- }
2805
-
2806
- export color mx_burn_color3(
2807
- color mxp_fg = color(0.0),
2808
- color mxp_bg = color(0.0),
2809
- float mxp_mix = 1.0
2810
- )
2811
- [[
2812
- anno::description("Node Group: compositing")
2813
- ]]
2814
- {
2815
- float3 fg(mxp_fg);
2816
- float3 bg(mxp_bg);
2817
- return color(
2818
- mx_burn_float(fg.x, bg.x, mxp_mix),
2819
- mx_burn_float(fg.y, bg.y, mxp_mix),
2820
- mx_burn_float(fg.z, bg.z, mxp_mix)
2821
- );
2822
- }
2823
-
2824
- export core::color4 mx_burn_color4(
2825
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2826
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2827
- float mxp_mix = 1.0
2828
- )
2829
- [[
2830
- anno::description("Node Group: compositing")
2831
- ]]
2832
- {
2833
- return core::color4(
2834
- mx_burn_color3(mxp_fg.rgb, mxp_bg.rgb, mxp_mix),
2835
- mx_burn_float(mxp_fg.a, mxp_bg.a, mxp_mix)
2836
- );
2837
- }
2838
-
2839
- export float mx_dodge_float(
2840
- float mxp_fg = float(0.0),
2841
- float mxp_bg = float(0.0),
2842
- float mxp_mix = 1.0
2843
- )
2844
- [[
2845
- anno::description("Node Group: compositing")
2846
- ]]
2847
- {
2848
- if (math::abs(1.0 - mxp_fg) < core::FLOAT_EPS)
2849
- {
2850
- return 0.0;
2851
- }
2852
- return mxp_mix*(mxp_bg / (1.0 - mxp_fg)) + ((1.0-mxp_mix)*mxp_bg);
2853
- }
2854
-
2855
- export color mx_dodge_color3(
2856
- color mxp_fg = color(0.0),
2857
- color mxp_bg = color(0.0),
2858
- float mxp_mix = 1.0
2859
- )
2860
- [[
2861
- anno::description("Node Group: compositing")
2862
- ]]
2863
- {
2864
- float3 fg(mxp_fg);
2865
- float3 bg(mxp_bg);
2866
- return color(
2867
- mx_dodge_float(fg.x, bg.x, mxp_mix),
2868
- mx_dodge_float(fg.y, bg.y, mxp_mix),
2869
- mx_dodge_float(fg.z, bg.z, mxp_mix)
2870
- );
2871
- }
2872
-
2873
- export core::color4 mx_dodge_color4(
2874
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2875
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2876
- float mxp_mix = float(1.0)
2877
- )
2878
- [[
2879
- anno::description("Node Group: compositing")
2880
- ]]
2881
- {
2882
- return core::color4(
2883
- mx_dodge_color3(mxp_fg.rgb, mxp_bg.rgb, mxp_mix),
2884
- mx_dodge_float(mxp_fg.a, mxp_bg.a, mxp_mix)
2885
- );
2886
- }
2887
-
2888
- export core::color4 mx_screen_color4(
2889
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2890
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2891
- float mxp_mix = float(1.0)
2892
- )
2893
- [[
2894
- anno::description("Node Group: compositing")
2895
- ]]
2896
- {
2897
- color rgb = (mxp_mix*((1.0 - (1.0 - mxp_fg.rgb) * (1 - mxp_bg.rgb)))) + ((1.0-mxp_mix)*mxp_bg.rgb);
2898
- float a = (mxp_mix*((1.0 - (1.0 - mxp_fg.a ) * (1 - mxp_bg.a )))) + ((1.0-mxp_mix)*mxp_bg.a );
2899
- return core::color4(rgb,a);
2900
- }
2901
-
2902
- export core::color4 mx_disjointover_color4(
2903
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2904
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2905
- float mxp_mix = float(1.0)
2906
- )
2907
- [[
2908
- anno::description("Node Group: compositing")
2909
- ]]
2910
- {
2911
- core::color4 result;
2912
- float summedAlpha = mxp_fg.a + mxp_bg.a;
2913
- if (summedAlpha <= 1)
2914
- {
2915
- result.rgb = mxp_fg.rgb + mxp_bg.rgb;
2916
- }
2917
- else
2918
- {
2919
- if (math::abs(mxp_bg.a) < core::FLOAT_EPS)
2920
- {
2921
- result.rgb = color(0.0);
2922
- }
2923
- else
2924
- {
2925
- float x = (1 - mxp_fg.a) / mxp_bg.a;
2926
- result.rgb = mxp_fg.rgb + mxp_bg.rgb * x;
2927
- }
2928
- }
2929
- result.a = math::min(summedAlpha, 1.0);
2930
- result.rgb = result.rgb * mxp_mix + (1.0 - mxp_mix) * mxp_bg.rgb;
2931
- result.a = result.a * mxp_mix + (1.0 - mxp_mix) * mxp_bg.a;
2932
- return result;
2933
- }
2934
-
2935
- export core::color4 mx_in_color4(
2936
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2937
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2938
- float mxp_mix = float(1.0)
2939
- )
2940
- [[
2941
- anno::description("Node Group: compositing")
2942
- ]]
2943
- {
2944
- color rgb = mxp_fg.rgb*mxp_bg.a * mxp_mix + mxp_bg.rgb * (1.0-mxp_mix);
2945
- float a = mxp_fg.a *mxp_bg.a * mxp_mix + mxp_bg.a * (1.0-mxp_mix);
2946
- return core::color4(rgb,a);
2947
- }
2948
-
2949
- export core::color4 mx_mask_color4(
2950
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2951
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2952
- float mxp_mix = float(1.0)
2953
- )
2954
- [[
2955
- anno::description("Node Group: compositing")
2956
- ]]
2957
- {
2958
- color rgb = mxp_bg.rgb*mxp_fg.a * mxp_mix + mxp_bg.rgb * (1.0-mxp_mix);
2959
- float a = mxp_bg.a *mxp_fg.a * mxp_mix + mxp_bg.a * (1.0-mxp_mix);
2960
- return core::color4(rgb,a);
2961
- }
2962
-
2963
- export core::color4 mx_matte_color4(
2964
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2965
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2966
- float mxp_mix = 1.0
2967
- )
2968
- [[
2969
- anno::description("Node Group: compositing")
2970
- ]]
2971
- {
2972
- color rgb = (mxp_fg.rgb*mxp_fg.a + mxp_bg.rgb*(1.0-mxp_fg.a)) * mxp_mix + mxp_bg.rgb * (1.0-mxp_mix);
2973
- float a = (mxp_fg.a + mxp_bg.a*(1.0-mxp_fg.a)) * mxp_mix + mxp_bg.a * (1.0-mxp_mix);
2974
- return core::color4(rgb, a);
2975
- }
2976
-
2977
- export core::color4 mx_out_color4(
2978
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2979
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2980
- float mxp_mix = float(1.0)
2981
- )
2982
- [[
2983
- anno::description("Node Group: compositing")
2984
- ]]
2985
- {
2986
- color rgb = (mxp_fg.rgb*(1.0 - mxp_bg.a) * mxp_mix) + (mxp_bg.rgb * (1.0-mxp_mix));
2987
- float a = (mxp_fg.a *(1.0 - mxp_bg.a) * mxp_mix) + (mxp_bg.a * (1.0-mxp_mix));
2988
- return core::color4(rgb,a);
2989
- }
2990
-
2991
- export core::color4 mx_over_color4(
2992
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2993
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
2994
- float mxp_mix = float(1.0)
2995
- )
2996
- [[
2997
- anno::description("Node Group: compositing")
2998
- ]]
2999
- {
3000
- color rgb = (mxp_fg.rgb + (mxp_bg.rgb*(1.0-mxp_fg.a))) * mxp_mix + mxp_bg.rgb * (1.0-mxp_mix);
3001
- float a = (mxp_fg.a + (mxp_bg.a *(1.0-mxp_fg.a))) * mxp_mix + mxp_bg.a * (1.0-mxp_mix);
3002
- return core::color4(rgb,a);
3003
- }
3004
-
3005
- export core::color4 mx_mix_color4(
3006
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3007
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3008
- float mxp_mix = float(0.0)
3009
- )
3010
- [[
3011
- anno::description("Node Group: compositing")
3012
- ]]
3013
- {
3014
- return core::mk_color4(::math::lerp(core::mk_float4(mxp_bg), core::mk_float4(mxp_fg), float4(mxp_mix)));
3015
- }
3016
-
3017
- export core::color4 mx_mix_color4_color4(
3018
- core::color4 mxp_fg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3019
- core::color4 mxp_bg = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3020
- core::color4 mxp_mix = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3021
- )
3022
- [[
3023
- anno::description("Node Group: compositing")
3024
- ]]
3025
- {
3026
- return core::mk_color4(::math::lerp(core::mk_float4(mxp_bg), core::mk_float4(mxp_fg), core::mk_float4(mxp_mix)));
3027
- }
3028
-
3029
- // mix all parts of the material, bsdf, edf, and vdf, geometry
3030
- export material mx_mix_surfaceshader(
3031
- material mxp_fg = material() [[ anno::usage( "materialx:surfaceshader") ]],
3032
- material mxp_bg = material() [[ anno::usage( "materialx:surfaceshader") ]],
3033
- float mxp_mix = 0.0
3034
- ) [[
3035
- anno::description("Node Group: compositing"),
3036
- anno::usage( "materialx:surfaceshader")
3037
- ]]
3038
- = material(
3039
- surface: material_surface(
3040
- scattering: df::weighted_layer(
3041
- weight: mxp_mix,
3042
- layer: mxp_fg.surface.scattering,
3043
- base: mxp_bg.surface.scattering
3044
- ),
3045
- emission: material_emission(
3046
- emission: df::clamped_mix(
3047
- df::edf_component[](
3048
- df::edf_component( mxp_mix, mxp_fg.surface.emission.emission),
3049
- df::edf_component( 1.0 - mxp_mix, mxp_bg.surface.emission.emission))
3050
- ),
3051
- intensity: mxp_mix * mxp_fg.surface.emission.intensity +
3052
- (1.0 - mxp_mix) * mxp_bg.surface.emission.intensity
3053
- )
3054
- ),
3055
-
3056
- // we need to carry volume properties along for SSS
3057
- ior: mxp_fg.ior, // NOTE: IOR is uniform, cannot mix here
3058
- volume: material_volume(
3059
- scattering: df::clamped_mix(
3060
- df::vdf_component[](
3061
- df::vdf_component( mxp_mix, mxp_fg.volume.scattering),
3062
- df::vdf_component( 1.0 - mxp_mix, mxp_bg.volume.scattering))
3063
- ),
3064
- absorption_coefficient: mxp_mix * mxp_fg.volume.absorption_coefficient +
3065
- (1.0 - mxp_mix) * mxp_bg.volume.absorption_coefficient,
3066
- scattering_coefficient: mxp_mix * mxp_fg.volume.scattering_coefficient +
3067
- (1.0 - mxp_mix) * mxp_bg.volume.scattering_coefficient
3068
- ),
3069
- geometry: material_geometry(
3070
- displacement: mxp_mix * mxp_fg.geometry.displacement +
3071
- (1.0 - mxp_mix) * mxp_bg.geometry.displacement,
3072
- cutout_opacity: mxp_mix * mxp_fg.geometry.cutout_opacity +
3073
- (1.0 - mxp_mix) * mxp_bg.geometry.cutout_opacity,
3074
- normal: mxp_mix * mxp_fg.geometry.normal +
3075
- (1.0 - mxp_mix) * mxp_bg.geometry.normal
3076
- )
3077
- );
3078
-
3079
- export material mx_mix_volumeshader(
3080
- material mxp_fg = material() [[ anno::usage( "materialx:volumeshader") ]],
3081
- material mxp_bg = material() [[ anno::usage( "materialx:volumeshader") ]],
3082
- float mxp_mix = 0.0
3083
- ) [[
3084
- anno::description("Node Group: compositing"),
3085
- anno::usage( "materialx:volumeshader")
3086
- ]]
3087
- = mx_mix_surfaceshader(
3088
- mxp_fg: mxp_fg,
3089
- mxp_bg: mxp_bg,
3090
- mxp_mix: mxp_mix);
3091
-
3092
- export material mx_mix_displacementshader(
3093
- material mxp_fg = material() [[ anno::usage( "materialx:displacementshader") ]],
3094
- material mxp_bg = material() [[ anno::usage( "materialx:displacementshader") ]],
3095
- float mxp_mix = 0.0
3096
- ) [[
3097
- anno::description("Node Group: compositing"),
3098
- anno::usage( "materialx:displacementshader")
3099
- ]]
3100
- = mx_mix_surfaceshader(
3101
- mxp_fg: mxp_fg,
3102
- mxp_bg: mxp_bg,
3103
- mxp_mix: mxp_mix);
3104
-
3105
- export float mx_ifgreater_float(
3106
- float mxp_value1 = float(1.0),
3107
- float mxp_value2 = float(0.0),
3108
- float mxp_in1 = float(0.0),
3109
- float mxp_in2 = float(0.0)
3110
- )
3111
- [[
3112
- anno::description("Node Group: conditional")
3113
- ]]
3114
- {
3115
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3116
- }
3117
-
3118
- export int mx_ifgreater_integer(
3119
- float mxp_value1 = float(1.0),
3120
- float mxp_value2 = float(0.0),
3121
- int mxp_in1 = int(0),
3122
- int mxp_in2 = int(0)
3123
- )
3124
- [[
3125
- anno::description("Node Group: conditional")
3126
- ]]
3127
- {
3128
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3129
- }
3130
-
3131
- export color mx_ifgreater_color3(
3132
- float mxp_value1 = float(1.0),
3133
- float mxp_value2 = float(0.0),
3134
- color mxp_in1 = color(0.0, 0.0, 0.0),
3135
- color mxp_in2 = color(0.0, 0.0, 0.0)
3136
- )
3137
- [[
3138
- anno::description("Node Group: conditional")
3139
- ]]
3140
- {
3141
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3142
- }
3143
-
3144
- export core::color4 mx_ifgreater_color4(
3145
- float mxp_value1 = float(1.0),
3146
- float mxp_value2 = float(0.0),
3147
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3148
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3149
- )
3150
- [[
3151
- anno::description("Node Group: conditional")
3152
- ]]
3153
- {
3154
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3155
- }
3156
-
3157
- export float2 mx_ifgreater_vector2(
3158
- float mxp_value1 = float(1.0),
3159
- float mxp_value2 = float(0.0),
3160
- float2 mxp_in1 = float2(0.0, 0.0),
3161
- float2 mxp_in2 = float2(0.0, 0.0)
3162
- )
3163
- [[
3164
- anno::description("Node Group: conditional")
3165
- ]]
3166
- {
3167
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3168
- }
3169
-
3170
- export float3 mx_ifgreater_vector3(
3171
- float mxp_value1 = float(1.0),
3172
- float mxp_value2 = float(0.0),
3173
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3174
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3175
- )
3176
- [[
3177
- anno::description("Node Group: conditional")
3178
- ]]
3179
- {
3180
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3181
- }
3182
-
3183
- export float4 mx_ifgreater_vector4(
3184
- float mxp_value1 = float(1.0),
3185
- float mxp_value2 = float(0.0),
3186
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3187
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3188
- )
3189
- [[
3190
- anno::description("Node Group: conditional")
3191
- ]]
3192
- {
3193
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3194
- }
3195
-
3196
- export float3x3 mx_ifgreater_matrix33(
3197
- float mxp_value1 = float(1.0),
3198
- float mxp_value2 = float(0.0),
3199
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3200
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3201
- )
3202
- [[
3203
- anno::description("Node Group: conditional")
3204
- ]]
3205
- {
3206
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3207
- }
3208
-
3209
- export float4x4 mx_ifgreater_matrix44(
3210
- float mxp_value1 = float(1.0),
3211
- float mxp_value2 = float(0.0),
3212
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3213
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3214
- )
3215
- [[
3216
- anno::description("Node Group: conditional")
3217
- ]]
3218
- {
3219
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3220
- }
3221
-
3222
- export bool mx_ifgreater_boolean(
3223
- float mxp_value1 = float(1.0),
3224
- float mxp_value2 = float(0.0)
3225
- )
3226
- [[
3227
- anno::description("Node Group: conditional")
3228
- ]]
3229
- {
3230
- if (mxp_value1 > mxp_value2) { return true; } return false;
3231
- }
3232
-
3233
- export float mx_ifgreater_floatI(
3234
- int mxp_value1 = int(1),
3235
- int mxp_value2 = int(0),
3236
- float mxp_in1 = float(0.0),
3237
- float mxp_in2 = float(0.0)
3238
- )
3239
- [[
3240
- anno::description("Node Group: conditional")
3241
- ]]
3242
- {
3243
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3244
- }
3245
-
3246
- export int mx_ifgreater_integerI(
3247
- int mxp_value1 = int(1),
3248
- int mxp_value2 = int(0),
3249
- int mxp_in1 = int(0),
3250
- int mxp_in2 = int(0)
3251
- )
3252
- [[
3253
- anno::description("Node Group: conditional")
3254
- ]]
3255
- {
3256
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3257
- }
3258
-
3259
- export color mx_ifgreater_color3I(
3260
- int mxp_value1 = int(1),
3261
- int mxp_value2 = int(0),
3262
- color mxp_in1 = color(0.0, 0.0, 0.0),
3263
- color mxp_in2 = color(0.0, 0.0, 0.0)
3264
- )
3265
- [[
3266
- anno::description("Node Group: conditional")
3267
- ]]
3268
- {
3269
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3270
- }
3271
-
3272
- export core::color4 mx_ifgreater_color4I(
3273
- int mxp_value1 = int(1),
3274
- int mxp_value2 = int(0),
3275
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3276
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3277
- )
3278
- [[
3279
- anno::description("Node Group: conditional")
3280
- ]]
3281
- {
3282
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3283
- }
3284
-
3285
- export float2 mx_ifgreater_vector2I(
3286
- int mxp_value1 = int(1),
3287
- int mxp_value2 = int(0),
3288
- float2 mxp_in1 = float2(0.0, 0.0),
3289
- float2 mxp_in2 = float2(0.0, 0.0)
3290
- )
3291
- [[
3292
- anno::description("Node Group: conditional")
3293
- ]]
3294
- {
3295
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3296
- }
3297
-
3298
- export float3 mx_ifgreater_vector3I(
3299
- int mxp_value1 = int(1),
3300
- int mxp_value2 = int(0),
3301
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3302
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3303
- )
3304
- [[
3305
- anno::description("Node Group: conditional")
3306
- ]]
3307
- {
3308
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3309
- }
3310
-
3311
- export float4 mx_ifgreater_vector4I(
3312
- int mxp_value1 = int(1),
3313
- int mxp_value2 = int(0),
3314
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3315
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3316
- )
3317
- [[
3318
- anno::description("Node Group: conditional")
3319
- ]]
3320
- {
3321
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3322
- }
3323
-
3324
- export float3x3 mx_ifgreater_matrix33I(
3325
- int mxp_value1 = int(1),
3326
- int mxp_value2 = int(0),
3327
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3328
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3329
- )
3330
- [[
3331
- anno::description("Node Group: conditional")
3332
- ]]
3333
- {
3334
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3335
- }
3336
-
3337
- export float4x4 mx_ifgreater_matrix44I(
3338
- int mxp_value1 = int(1),
3339
- int mxp_value2 = int(0),
3340
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3341
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3342
- )
3343
- [[
3344
- anno::description("Node Group: conditional")
3345
- ]]
3346
- {
3347
- if (mxp_value1 > mxp_value2) { return mxp_in1; } return mxp_in2;
3348
- }
3349
-
3350
- export bool mx_ifgreater_booleanI(
3351
- int mxp_value1 = int(1),
3352
- int mxp_value2 = int(0)
3353
- )
3354
- [[
3355
- anno::description("Node Group: conditional")
3356
- ]]
3357
- {
3358
- if (mxp_value1 > mxp_value2) { return true; } return false;
3359
- }
3360
-
3361
- export float mx_ifgreatereq_float(
3362
- float mxp_value1 = float(1.0),
3363
- float mxp_value2 = float(0.0),
3364
- float mxp_in1 = float(0.0),
3365
- float mxp_in2 = float(0.0)
3366
- )
3367
- [[
3368
- anno::description("Node Group: conditional")
3369
- ]]
3370
- {
3371
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3372
- }
3373
-
3374
- export int mx_ifgreatereq_integer(
3375
- float mxp_value1 = float(1.0),
3376
- float mxp_value2 = float(0.0),
3377
- int mxp_in1 = int(0),
3378
- int mxp_in2 = int(0)
3379
- )
3380
- [[
3381
- anno::description("Node Group: conditional")
3382
- ]]
3383
- {
3384
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3385
- }
3386
-
3387
- export color mx_ifgreatereq_color3(
3388
- float mxp_value1 = float(1.0),
3389
- float mxp_value2 = float(0.0),
3390
- color mxp_in1 = color(0.0, 0.0, 0.0),
3391
- color mxp_in2 = color(0.0, 0.0, 0.0)
3392
- )
3393
- [[
3394
- anno::description("Node Group: conditional")
3395
- ]]
3396
- {
3397
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3398
- }
3399
-
3400
- export core::color4 mx_ifgreatereq_color4(
3401
- float mxp_value1 = float(1.0),
3402
- float mxp_value2 = float(0.0),
3403
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3404
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3405
- )
3406
- [[
3407
- anno::description("Node Group: conditional")
3408
- ]]
3409
- {
3410
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3411
- }
3412
-
3413
- export float2 mx_ifgreatereq_vector2(
3414
- float mxp_value1 = float(1.0),
3415
- float mxp_value2 = float(0.0),
3416
- float2 mxp_in1 = float2(0.0, 0.0),
3417
- float2 mxp_in2 = float2(0.0, 0.0)
3418
- )
3419
- [[
3420
- anno::description("Node Group: conditional")
3421
- ]]
3422
- {
3423
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3424
- }
3425
-
3426
- export float3 mx_ifgreatereq_vector3(
3427
- float mxp_value1 = float(1.0),
3428
- float mxp_value2 = float(0.0),
3429
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3430
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3431
- )
3432
- [[
3433
- anno::description("Node Group: conditional")
3434
- ]]
3435
- {
3436
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3437
- }
3438
-
3439
- export float4 mx_ifgreatereq_vector4(
3440
- float mxp_value1 = float(1.0),
3441
- float mxp_value2 = float(0.0),
3442
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3443
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3444
- )
3445
- [[
3446
- anno::description("Node Group: conditional")
3447
- ]]
3448
- {
3449
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3450
- }
3451
-
3452
- export float3x3 mx_ifgreatereq_matrix33(
3453
- float mxp_value1 = float(1.0),
3454
- float mxp_value2 = float(0.0),
3455
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3456
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3457
- )
3458
- [[
3459
- anno::description("Node Group: conditional")
3460
- ]]
3461
- {
3462
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3463
- }
3464
-
3465
- export float4x4 mx_ifgreatereq_matrix44(
3466
- float mxp_value1 = float(1.0),
3467
- float mxp_value2 = float(0.0),
3468
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3469
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3470
- )
3471
- [[
3472
- anno::description("Node Group: conditional")
3473
- ]]
3474
- {
3475
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3476
- }
3477
-
3478
- export bool mx_ifgreatereq_boolean(
3479
- float mxp_value1 = float(1.0),
3480
- float mxp_value2 = float(0.0)
3481
- )
3482
- [[
3483
- anno::description("Node Group: conditional")
3484
- ]]
3485
- {
3486
- if (mxp_value1 >= mxp_value2) { return true; } return false;
3487
- }
3488
-
3489
- export float mx_ifgreatereq_floatI(
3490
- int mxp_value1 = int(1),
3491
- int mxp_value2 = int(0),
3492
- float mxp_in1 = float(0.0),
3493
- float mxp_in2 = float(0.0)
3494
- )
3495
- [[
3496
- anno::description("Node Group: conditional")
3497
- ]]
3498
- {
3499
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3500
- }
3501
-
3502
- export int mx_ifgreatereq_integerI(
3503
- int mxp_value1 = int(1),
3504
- int mxp_value2 = int(0),
3505
- int mxp_in1 = int(0),
3506
- int mxp_in2 = int(0)
3507
- )
3508
- [[
3509
- anno::description("Node Group: conditional")
3510
- ]]
3511
- {
3512
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3513
- }
3514
-
3515
- export color mx_ifgreatereq_color3I(
3516
- int mxp_value1 = int(1),
3517
- int mxp_value2 = int(0),
3518
- color mxp_in1 = color(0.0, 0.0, 0.0),
3519
- color mxp_in2 = color(0.0, 0.0, 0.0)
3520
- )
3521
- [[
3522
- anno::description("Node Group: conditional")
3523
- ]]
3524
- {
3525
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3526
- }
3527
-
3528
- export core::color4 mx_ifgreatereq_color4I(
3529
- int mxp_value1 = int(1),
3530
- int mxp_value2 = int(0),
3531
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3532
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3533
- )
3534
- [[
3535
- anno::description("Node Group: conditional")
3536
- ]]
3537
- {
3538
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3539
- }
3540
-
3541
- export float2 mx_ifgreatereq_vector2I(
3542
- int mxp_value1 = int(1),
3543
- int mxp_value2 = int(0),
3544
- float2 mxp_in1 = float2(0.0, 0.0),
3545
- float2 mxp_in2 = float2(0.0, 0.0)
3546
- )
3547
- [[
3548
- anno::description("Node Group: conditional")
3549
- ]]
3550
- {
3551
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3552
- }
3553
-
3554
- export float3 mx_ifgreatereq_vector3I(
3555
- int mxp_value1 = int(1),
3556
- int mxp_value2 = int(0),
3557
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3558
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3559
- )
3560
- [[
3561
- anno::description("Node Group: conditional")
3562
- ]]
3563
- {
3564
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3565
- }
3566
-
3567
- export float4 mx_ifgreatereq_vector4I(
3568
- int mxp_value1 = int(1),
3569
- int mxp_value2 = int(0),
3570
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3571
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3572
- )
3573
- [[
3574
- anno::description("Node Group: conditional")
3575
- ]]
3576
- {
3577
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3578
- }
3579
-
3580
- export float3x3 mx_ifgreatereq_matrix33I(
3581
- int mxp_value1 = int(1),
3582
- int mxp_value2 = int(0),
3583
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3584
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3585
- )
3586
- [[
3587
- anno::description("Node Group: conditional")
3588
- ]]
3589
- {
3590
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3591
- }
3592
-
3593
- export float4x4 mx_ifgreatereq_matrix44I(
3594
- int mxp_value1 = int(1),
3595
- int mxp_value2 = int(0),
3596
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3597
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3598
- )
3599
- [[
3600
- anno::description("Node Group: conditional")
3601
- ]]
3602
- {
3603
- if (mxp_value1 >= mxp_value2) { return mxp_in1; } return mxp_in2;
3604
- }
3605
-
3606
- export bool mx_ifgreatereq_booleanI(
3607
- int mxp_value1 = int(1),
3608
- int mxp_value2 = int(0)
3609
- )
3610
- [[
3611
- anno::description("Node Group: conditional")
3612
- ]]
3613
- {
3614
- if (mxp_value1 >= mxp_value2) { return true; } return false;
3615
- }
3616
-
3617
- export float mx_ifequal_float(
3618
- float mxp_value1 = float(0.0),
3619
- float mxp_value2 = float(0.0),
3620
- float mxp_in1 = float(0.0),
3621
- float mxp_in2 = float(0.0)
3622
- )
3623
- [[
3624
- anno::description("Node Group: conditional")
3625
- ]]
3626
- {
3627
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3628
- }
3629
-
3630
- export int mx_ifequal_integer(
3631
- float mxp_value1 = float(0.0),
3632
- float mxp_value2 = float(0.0),
3633
- int mxp_in1 = int(0),
3634
- int mxp_in2 = int(0)
3635
- )
3636
- [[
3637
- anno::description("Node Group: conditional")
3638
- ]]
3639
- {
3640
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3641
- }
3642
-
3643
- export color mx_ifequal_color3(
3644
- float mxp_value1 = float(0.0),
3645
- float mxp_value2 = float(0.0),
3646
- color mxp_in1 = color(0.0, 0.0, 0.0),
3647
- color mxp_in2 = color(0.0, 0.0, 0.0)
3648
- )
3649
- [[
3650
- anno::description("Node Group: conditional")
3651
- ]]
3652
- {
3653
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3654
- }
3655
-
3656
- export core::color4 mx_ifequal_color4(
3657
- float mxp_value1 = float(0.0),
3658
- float mxp_value2 = float(0.0),
3659
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3660
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3661
- )
3662
- [[
3663
- anno::description("Node Group: conditional")
3664
- ]]
3665
- {
3666
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3667
- }
3668
-
3669
- export float2 mx_ifequal_vector2(
3670
- float mxp_value1 = float(0.0),
3671
- float mxp_value2 = float(0.0),
3672
- float2 mxp_in1 = float2(0.0, 0.0),
3673
- float2 mxp_in2 = float2(0.0, 0.0)
3674
- )
3675
- [[
3676
- anno::description("Node Group: conditional")
3677
- ]]
3678
- {
3679
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3680
- }
3681
-
3682
- export float3 mx_ifequal_vector3(
3683
- float mxp_value1 = float(0.0),
3684
- float mxp_value2 = float(0.0),
3685
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3686
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3687
- )
3688
- [[
3689
- anno::description("Node Group: conditional")
3690
- ]]
3691
- {
3692
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3693
- }
3694
-
3695
- export float4 mx_ifequal_vector4(
3696
- float mxp_value1 = float(0.0),
3697
- float mxp_value2 = float(0.0),
3698
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3699
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3700
- )
3701
- [[
3702
- anno::description("Node Group: conditional")
3703
- ]]
3704
- {
3705
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3706
- }
3707
-
3708
- export float3x3 mx_ifequal_matrix33(
3709
- float mxp_value1 = float(0.0),
3710
- float mxp_value2 = float(0.0),
3711
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3712
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3713
- )
3714
- [[
3715
- anno::description("Node Group: conditional")
3716
- ]]
3717
- {
3718
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3719
- }
3720
-
3721
- export float4x4 mx_ifequal_matrix44(
3722
- float mxp_value1 = float(0.0),
3723
- float mxp_value2 = float(0.0),
3724
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3725
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3726
- )
3727
- [[
3728
- anno::description("Node Group: conditional")
3729
- ]]
3730
- {
3731
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3732
- }
3733
-
3734
- export bool mx_ifequal_boolean(
3735
- float mxp_value1 = float(0.0),
3736
- float mxp_value2 = float(0.0)
3737
- )
3738
- [[
3739
- anno::description("Node Group: conditional")
3740
- ]]
3741
- {
3742
- if (mxp_value1 == mxp_value2) { return true; } return false;
3743
- }
3744
-
3745
- export float mx_ifequal_floatI(
3746
- int mxp_value1 = int(0),
3747
- int mxp_value2 = int(0),
3748
- float mxp_in1 = float(0.0),
3749
- float mxp_in2 = float(0.0)
3750
- )
3751
- [[
3752
- anno::description("Node Group: conditional")
3753
- ]]
3754
- {
3755
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3756
- }
3757
-
3758
- export int mx_ifequal_integerI(
3759
- int mxp_value1 = int(0),
3760
- int mxp_value2 = int(0),
3761
- int mxp_in1 = int(0),
3762
- int mxp_in2 = int(0)
3763
- )
3764
- [[
3765
- anno::description("Node Group: conditional")
3766
- ]]
3767
- {
3768
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3769
- }
3770
-
3771
- export color mx_ifequal_color3I(
3772
- int mxp_value1 = int(0),
3773
- int mxp_value2 = int(0),
3774
- color mxp_in1 = color(0.0, 0.0, 0.0),
3775
- color mxp_in2 = color(0.0, 0.0, 0.0)
3776
- )
3777
- [[
3778
- anno::description("Node Group: conditional")
3779
- ]]
3780
- {
3781
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3782
- }
3783
-
3784
- export core::color4 mx_ifequal_color4I(
3785
- int mxp_value1 = int(0),
3786
- int mxp_value2 = int(0),
3787
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3788
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3789
- )
3790
- [[
3791
- anno::description("Node Group: conditional")
3792
- ]]
3793
- {
3794
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3795
- }
3796
-
3797
- export float2 mx_ifequal_vector2I(
3798
- int mxp_value1 = int(0),
3799
- int mxp_value2 = int(0),
3800
- float2 mxp_in1 = float2(0.0, 0.0),
3801
- float2 mxp_in2 = float2(0.0, 0.0)
3802
- )
3803
- [[
3804
- anno::description("Node Group: conditional")
3805
- ]]
3806
- {
3807
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3808
- }
3809
-
3810
- export float3 mx_ifequal_vector3I(
3811
- int mxp_value1 = int(0),
3812
- int mxp_value2 = int(0),
3813
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3814
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3815
- )
3816
- [[
3817
- anno::description("Node Group: conditional")
3818
- ]]
3819
- {
3820
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3821
- }
3822
-
3823
- export float4 mx_ifequal_vector4I(
3824
- int mxp_value1 = int(0),
3825
- int mxp_value2 = int(0),
3826
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3827
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3828
- )
3829
- [[
3830
- anno::description("Node Group: conditional")
3831
- ]]
3832
- {
3833
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3834
- }
3835
-
3836
- export float3x3 mx_ifequal_matrix33I(
3837
- int mxp_value1 = int(0),
3838
- int mxp_value2 = int(0),
3839
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3840
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3841
- )
3842
- [[
3843
- anno::description("Node Group: conditional")
3844
- ]]
3845
- {
3846
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3847
- }
3848
-
3849
- export float4x4 mx_ifequal_matrix44I(
3850
- int mxp_value1 = int(0),
3851
- int mxp_value2 = int(0),
3852
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3853
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3854
- )
3855
- [[
3856
- anno::description("Node Group: conditional")
3857
- ]]
3858
- {
3859
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3860
- }
3861
-
3862
- export bool mx_ifequal_booleanI(
3863
- int mxp_value1 = int(0),
3864
- int mxp_value2 = int(0)
3865
- )
3866
- [[
3867
- anno::description("Node Group: conditional")
3868
- ]]
3869
- {
3870
- if (mxp_value1 == mxp_value2) { return true; } return false;
3871
- }
3872
-
3873
- export float mx_ifequal_floatB(
3874
- bool mxp_value1 = bool(false),
3875
- bool mxp_value2 = bool(false),
3876
- float mxp_in1 = float(0.0),
3877
- float mxp_in2 = float(0.0)
3878
- )
3879
- [[
3880
- anno::description("Node Group: conditional")
3881
- ]]
3882
- {
3883
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3884
- }
3885
-
3886
- export int mx_ifequal_integerB(
3887
- bool mxp_value1 = bool(false),
3888
- bool mxp_value2 = bool(false),
3889
- int mxp_in1 = int(0),
3890
- int mxp_in2 = int(0)
3891
- )
3892
- [[
3893
- anno::description("Node Group: conditional")
3894
- ]]
3895
- {
3896
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3897
- }
3898
-
3899
- export color mx_ifequal_color3B(
3900
- bool mxp_value1 = bool(false),
3901
- bool mxp_value2 = bool(false),
3902
- color mxp_in1 = color(0.0, 0.0, 0.0),
3903
- color mxp_in2 = color(0.0, 0.0, 0.0)
3904
- )
3905
- [[
3906
- anno::description("Node Group: conditional")
3907
- ]]
3908
- {
3909
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3910
- }
3911
-
3912
- export core::color4 mx_ifequal_color4B(
3913
- bool mxp_value1 = bool(false),
3914
- bool mxp_value2 = bool(false),
3915
- core::color4 mxp_in1 = core::mk_color4(0.0, 0.0, 0.0, 0.0),
3916
- core::color4 mxp_in2 = core::mk_color4(0.0, 0.0, 0.0, 0.0)
3917
- )
3918
- [[
3919
- anno::description("Node Group: conditional")
3920
- ]]
3921
- {
3922
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3923
- }
3924
-
3925
- export float2 mx_ifequal_vector2B(
3926
- bool mxp_value1 = bool(false),
3927
- bool mxp_value2 = bool(false),
3928
- float2 mxp_in1 = float2(0.0, 0.0),
3929
- float2 mxp_in2 = float2(0.0, 0.0)
3930
- )
3931
- [[
3932
- anno::description("Node Group: conditional")
3933
- ]]
3934
- {
3935
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3936
- }
3937
-
3938
- export float3 mx_ifequal_vector3B(
3939
- bool mxp_value1 = bool(false),
3940
- bool mxp_value2 = bool(false),
3941
- float3 mxp_in1 = float3(0.0, 0.0, 0.0),
3942
- float3 mxp_in2 = float3(0.0, 0.0, 0.0)
3943
- )
3944
- [[
3945
- anno::description("Node Group: conditional")
3946
- ]]
3947
- {
3948
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3949
- }
3950
-
3951
- export float4 mx_ifequal_vector4B(
3952
- bool mxp_value1 = bool(false),
3953
- bool mxp_value2 = bool(false),
3954
- float4 mxp_in1 = float4(0.0, 0.0, 0.0, 0.0),
3955
- float4 mxp_in2 = float4(0.0, 0.0, 0.0, 0.0)
3956
- )
3957
- [[
3958
- anno::description("Node Group: conditional")
3959
- ]]
3960
- {
3961
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3962
- }
3963
-
3964
- export float3x3 mx_ifequal_matrix33B(
3965
- bool mxp_value1 = bool(false),
3966
- bool mxp_value2 = bool(false),
3967
- float3x3 mxp_in1 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3968
- float3x3 mxp_in2 = float3x3(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3969
- )
3970
- [[
3971
- anno::description("Node Group: conditional")
3972
- ]]
3973
- {
3974
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3975
- }
3976
-
3977
- export float4x4 mx_ifequal_matrix44B(
3978
- bool mxp_value1 = bool(false),
3979
- bool mxp_value2 = bool(false),
3980
- float4x4 mxp_in1 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0),
3981
- float4x4 mxp_in2 = float4x4(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0)
3982
- )
3983
- [[
3984
- anno::description("Node Group: conditional")
3985
- ]]
3986
- {
3987
- if (mxp_value1 == mxp_value2) { return mxp_in1; } return mxp_in2;
3988
- }
3989
-
3990
- export bool mx_ifequal_booleanB(
3991
- bool mxp_value1 = bool(false),
3992
- bool mxp_value2 = bool(false)
3993
- )
3994
- [[
3995
- anno::description("Node Group: conditional")
3996
- ]]
3997
- {
3998
- if (mxp_value1 == mxp_value2) { return true; } return false;
3999
- }
4000
-
4001
- export float3x3 mx_creatematrix_vector3_matrix33(
4002
- float3 mxp_in1 = float3(1.0, 0.0, 0.0),
4003
- float3 mxp_in2 = float3(0.0, 1.0, 0.0),
4004
- float3 mxp_in3 = float3(0.0, 0.0, 1.0)
4005
- )
4006
- [[
4007
- anno::description("Node Group: math")
4008
- ]]
4009
- {
4010
- return float3x3(
4011
- mxp_in1[0], mxp_in1[1], mxp_in1[2],
4012
- mxp_in2[0], mxp_in2[1], mxp_in2[2],
4013
- mxp_in3[0], mxp_in3[1], mxp_in3[2]);
4014
- }
4015
-
4016
-
4017
- export float4x4 mx_creatematrix_vector3_matrix44(
4018
- float3 mxp_in1 = float3(1.0, 0.0, 0.0),
4019
- float3 mxp_in2 = float3(0.0, 1.0, 0.0),
4020
- float3 mxp_in3 = float3(0.0, 0.0, 1.0),
4021
- float3 mxp_in4 = float3(0.0, 0.0, 0.0)
4022
- )
4023
- [[
4024
- anno::description("Node Group: math")
4025
- ]]
4026
- {
4027
- return float4x4(
4028
- mxp_in1[0], mxp_in1[1], mxp_in1[2], 0.0,
4029
- mxp_in2[0], mxp_in2[1], mxp_in2[2], 0.0,
4030
- mxp_in3[0], mxp_in3[1], mxp_in3[2], 0.0,
4031
- mxp_in4[0], mxp_in4[1], mxp_in4[2], 1.0);
4032
- }
4033
-
4034
-
4035
- export float4x4 mx_creatematrix_vector4_matrix44(
4036
- float4 mxp_in1 = float4(1.0, 0.0, 0.0, 0.0),
4037
- float4 mxp_in2 = float4(0.0, 1.0, 0.0, 0.0),
4038
- float4 mxp_in3 = float4(0.0, 0.0, 1.0, 0.0),
4039
- float4 mxp_in4 = float4(0.0, 0.0, 0.0, 1.0)
4040
- )
4041
- [[
4042
- anno::description("Node Group: math")
4043
- ]]
4044
- {
4045
- return float4x4(
4046
- mxp_in1[0], mxp_in1[1], mxp_in1[2], mxp_in1[3],
4047
- mxp_in2[0], mxp_in2[1], mxp_in2[2], mxp_in2[3],
4048
- mxp_in3[0], mxp_in3[1], mxp_in3[2], mxp_in3[3],
4049
- mxp_in4[0], mxp_in4[1], mxp_in4[2], mxp_in4[3]);
4050
- }
4051
-
4052
- export float mx_extract_color3(
4053
- color mxp_in = color(0.0, 0.0, 0.0),
4054
- int mxp_index = int(0)
4055
- )
4056
- [[
4057
- anno::description("Node Group: channel")
4058
- ]]
4059
- {
4060
- switch (mxp_index)
4061
- {
4062
- case 0: return float3(mxp_in).x;
4063
- case 1: return float3(mxp_in).y;
4064
- default: return float3(mxp_in).z;
4065
- }
4066
- }
4067
-
4068
- export float mx_extract_color4(
4069
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
4070
- int mxp_index = int(0)
4071
- )
4072
- [[
4073
- anno::description("Node Group: channel")
4074
- ]]
4075
- {
4076
- switch (mxp_index)
4077
- {
4078
- case 0: return float3(mxp_in.rgb).x;
4079
- case 1: return float3(mxp_in.rgb).y;
4080
- case 2: return float3(mxp_in.rgb).z;
4081
- default: return mxp_in.a;
4082
- }
4083
- }
4084
-
4085
- export float mx_extract_vector2(
4086
- float2 mxp_in = float2(0.0, 0.0),
4087
- int mxp_index = int(0)
4088
- )
4089
- [[
4090
- anno::description("Node Group: channel")
4091
- ]]
4092
- {
4093
- switch (mxp_index)
4094
- {
4095
- case 0: return mxp_in.x;
4096
- default: return mxp_in.y;
4097
- }
4098
- }
4099
-
4100
- export float mx_extract_vector3(
4101
- float3 mxp_in = float3(0.0, 0.0, 0.0),
4102
- int mxp_index = int(0)
4103
- )
4104
- [[
4105
- anno::description("Node Group: channel")
4106
- ]]
4107
- {
4108
- switch (mxp_index)
4109
- {
4110
- case 0: return mxp_in.x;
4111
- case 1: return mxp_in.y;
4112
- default: return mxp_in.z;
4113
- }
4114
- }
4115
-
4116
- export float mx_extract_vector4(
4117
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
4118
- int mxp_index = int(0)
4119
- )
4120
- [[
4121
- anno::description("Node Group: channel")
4122
- ]]
4123
- {
4124
- switch (mxp_index)
4125
- {
4126
- case 0: return mxp_in.x;
4127
- case 1: return mxp_in.y;
4128
- case 2: return mxp_in.z;
4129
- default: return mxp_in.w;
4130
- }
4131
- }
4132
-
4133
- // Nodedef: ND_separate2_vector2 is represented by a nodegraph: NG_separate2_vector2
4134
- // Nodedef: ND_separate3_color3 is represented by a nodegraph: NG_separate3_color3
4135
- // Nodedef: ND_separate3_vector3 is represented by a nodegraph: NG_separate3_vector3
4136
- // Nodedef: ND_separate4_color4 is represented by a nodegraph: NG_separate4_color4
4137
- // Nodedef: ND_separate4_vector4 is represented by a nodegraph: NG_separate4_vector4
4138
-
4139
- export float mx_blur_float(
4140
- float mxp_in = float(0.0),
4141
- float mxp_size = float(0.0)
4142
- [[
4143
- anno::unused()
4144
- ]],
4145
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4146
- [[
4147
- anno::description("Enumeration {box,gaussian}."),
4148
- anno::unused()
4149
- ]]
4150
- )
4151
- [[
4152
- anno::description("Node Group: convolution2d")
4153
- ]]
4154
- {
4155
- // Not implemented: mx_blur_float
4156
- float defaultValue = mxp_in;
4157
- return defaultValue;
4158
- }
4159
-
4160
- export color mx_blur_color3(
4161
- color mxp_in = color(0.0, 0.0, 0.0),
4162
- float mxp_size = float(0.0)
4163
- [[
4164
- anno::unused()
4165
- ]],
4166
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4167
- [[
4168
- anno::description("Enumeration {box,gaussian}."),
4169
- anno::unused()
4170
- ]]
4171
- )
4172
- [[
4173
- anno::description("Node Group: convolution2d")
4174
- ]]
4175
- {
4176
- // Not implemented: mx_blur_color3
4177
- color defaultValue = mxp_in;
4178
- return defaultValue;
4179
- }
4180
-
4181
- export core::color4 mx_blur_color4(
4182
- core::color4 mxp_in = core::mk_color4(0.0, 0.0, 0.0, 0.0),
4183
- float mxp_size = float(0.0)
4184
- [[
4185
- anno::unused()
4186
- ]],
4187
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4188
- [[
4189
- anno::description("Enumeration {box,gaussian}."),
4190
- anno::unused()
4191
- ]]
4192
- )
4193
- [[
4194
- anno::description("Node Group: convolution2d")
4195
- ]]
4196
- {
4197
- // Not implemented: mx_blur_color4
4198
- core::color4 defaultValue = mxp_in;
4199
- return defaultValue;
4200
- }
4201
-
4202
- export float2 mx_blur_vector2(
4203
- float2 mxp_in = float2(0.0, 0.0),
4204
- float mxp_size = float(0.0)
4205
- [[
4206
- anno::unused()
4207
- ]],
4208
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4209
- [[
4210
- anno::description("Enumeration {box,gaussian}."),
4211
- anno::unused()
4212
- ]]
4213
- )
4214
- [[
4215
- anno::description("Node Group: convolution2d")
4216
- ]]
4217
- {
4218
- // Not implemented: mx_blur_vector2
4219
- float2 defaultValue = mxp_in;
4220
- return defaultValue;
4221
- }
4222
-
4223
- export float3 mx_blur_vector3(
4224
- float3 mxp_in = float3(0.0, 0.0, 0.0),
4225
- float mxp_size = float(0.0)
4226
- [[
4227
- anno::unused()
4228
- ]],
4229
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4230
- [[
4231
- anno::description("Enumeration {box,gaussian}."),
4232
- anno::unused()
4233
- ]]
4234
- )
4235
- [[
4236
- anno::description("Node Group: convolution2d")
4237
- ]]
4238
- {
4239
- // Not implemented: mx_blur_vector3
4240
- float3 defaultValue = mxp_in;
4241
- return defaultValue;
4242
- }
4243
-
4244
- export float4 mx_blur_vector4(
4245
- float4 mxp_in = float4(0.0, 0.0, 0.0, 0.0),
4246
- float mxp_size = float(0.0)
4247
- [[
4248
- anno::unused()
4249
- ]],
4250
- uniform core::mx_filter_type mxp_filtertype = core::mx_filter_type(core::mx_filter_type_box)
4251
- [[
4252
- anno::description("Enumeration {box,gaussian}."),
4253
- anno::unused()
4254
- ]]
4255
- )
4256
- [[
4257
- anno::description("Node Group: convolution2d")
4258
- ]]
4259
- {
4260
- // Not implemented: mx_blur_vector4
4261
- float4 defaultValue = mxp_in;
4262
- return defaultValue;
4263
- }
4264
-
4265
- export float3 mx_heighttonormal_vector3(
4266
- float mxp_in = float(0.0) [[ anno::unused() ]],
4267
- float mxp_scale = float(1.0) [[ anno::unused() ]]
4268
- )
4269
- [[
4270
- anno::description("Node Group: convolution2d")
4271
- ]]
4272
- {
4273
- // Not implemented: mx_heighttonormal_vector3
4274
- float3 defaultValue = float3(0.0, 1.0, 0.0);
4275
- return defaultValue;
4276
- }
4277
-
4278
- export float mx_noise2d_float(
4279
- float mxp_amplitude = 1.0,
4280
- float mxp_pivot = 0.0,
4281
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0))
4282
- )
4283
- {
4284
- float value = noise::mx_perlin_noise_float(mxp_texcoord);
4285
- return value * mxp_amplitude + mxp_pivot;
4286
- }
4287
-
4288
- export float2 mx_noise2d_float2(
4289
- float2 mxp_amplitude = float2(1.0),
4290
- float mxp_pivot = 0.0,
4291
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0))
4292
- )
4293
- {
4294
- float3 value = noise::mx_perlin_noise_float3(mxp_texcoord);
4295
- return core::mx_swizzle_xy(value) * mxp_amplitude + mxp_pivot;
4296
- }
4297
-
4298
- export float3 mx_noise2d_float3(
4299
- float3 mxp_amplitude = float3(1.0),
4300
- float mxp_pivot = 0.0,
4301
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0))
4302
- )
4303
- {
4304
- float3 value = noise::mx_perlin_noise_float3(mxp_texcoord);
4305
- return value * mxp_amplitude + mxp_pivot;
4306
- }
4307
-
4308
- export float4 mx_noise2d_float4(
4309
- float4 mxp_amplitude = float4(1.0),
4310
- float mxp_pivot = 0.0,
4311
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0))
4312
- )
4313
- {
4314
- float3 v = noise::mx_perlin_noise_float3(mxp_texcoord);
4315
- float w = noise::mx_perlin_noise_float(mxp_texcoord + float2(19, 73));
4316
- return float4(v.x, v.y, v.z, w) * mxp_amplitude + mxp_pivot;
4317
- }
4318
-
4319
- export float mx_noise3d_float(
4320
- float mxp_amplitude = 1.0,
4321
- float mxp_pivot = 0.0,
4322
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4323
- )
4324
- {
4325
- float value = noise::mx_perlin_noise_float(mxp_position);
4326
- return value * mxp_amplitude + mxp_pivot;
4327
- }
4328
-
4329
- export float2 mx_noise3d_float2(
4330
- float2 mxp_amplitude = float2(1.0),
4331
- float mxp_pivot = 0.0,
4332
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4333
- )
4334
- {
4335
- float3 value = noise::mx_perlin_noise_float3(mxp_position);
4336
- return core::mx_swizzle_xy(value) * mxp_amplitude + mxp_pivot;
4337
- }
4338
-
4339
- export float3 mx_noise3d_float3(
4340
- float3 mxp_amplitude = float3(1.0),
4341
- float mxp_pivot = 0.0,
4342
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4343
- )
4344
- {
4345
- float3 value = noise::mx_perlin_noise_float3(mxp_position);
4346
- return value * mxp_amplitude + mxp_pivot;
4347
- }
4348
-
4349
- export float4 mx_noise3d_float4(
4350
- float4 mxp_amplitude = float4(1.0),
4351
- float mxp_pivot = 0.0,
4352
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4353
- )
4354
- {
4355
- float3 v = noise::mx_perlin_noise_float3(mxp_position);
4356
- float w = noise::mx_perlin_noise_float(mxp_position + float3(19, 73, 29));
4357
- return float4(v.x, v.y, v.z, w) * mxp_amplitude + mxp_pivot;
4358
- }
4359
-
4360
- export float mx_fractal3d_float(
4361
- float mxp_amplitude = 1.0,
4362
- int mxp_octaves = 3,
4363
- float mxp_lacunarity = 2.0,
4364
- float mxp_diminish= 0.5,
4365
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4366
- )
4367
- {
4368
- float v = noise::mx_fractal_noise_float(mxp_position, mxp_octaves, mxp_lacunarity, mxp_diminish);
4369
- return v * mxp_amplitude;
4370
- }
4371
-
4372
- export float2 mx_fractal3d_float2(
4373
- float2 mxp_amplitude = float2(1.0),
4374
- int mxp_octaves = 3,
4375
- float mxp_lacunarity = 2.0,
4376
- float mxp_diminish= 0.5,
4377
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4378
- )
4379
- {
4380
- float2 v = noise::mx_fractal_noise_float2(mxp_position, mxp_octaves, mxp_lacunarity, mxp_diminish);
4381
- return v * mxp_amplitude;
4382
- }
4383
-
4384
- export float3 mx_fractal3d_float3(
4385
- float3 mxp_amplitude = float3(1.0),
4386
- int mxp_octaves = 3,
4387
- float mxp_lacunarity = 2.0,
4388
- float mxp_diminish= 0.5,
4389
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4390
- )
4391
- {
4392
- float3 v = noise::mx_fractal_noise_float3(mxp_position, mxp_octaves, mxp_lacunarity, mxp_diminish);
4393
- return v * mxp_amplitude;
4394
- }
4395
-
4396
- export float4 mx_fractal3d_float4(
4397
- float4 mxp_amplitude = float4(1.0),
4398
- int mxp_octaves = 3,
4399
- float mxp_lacunarity = 2.0,
4400
- float mxp_diminish= 0.5,
4401
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4402
- )
4403
- {
4404
- float4 v = noise::mx_fractal_noise_float4(mxp_position, mxp_octaves, mxp_lacunarity, mxp_diminish);
4405
- return v * mxp_amplitude;
4406
- }
4407
-
4408
- export float mx_cellnoise2d_float(
4409
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0))
4410
- )
4411
- {
4412
- return noise::mx_cell_noise_float(mxp_texcoord);
4413
- }
4414
-
4415
- export float mx_cellnoise3d_float(
4416
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position())
4417
- )
4418
- {
4419
- return noise::mx_cell_noise_float(mxp_position);
4420
- }
4421
-
4422
- export float mx_worleynoise2d_float(
4423
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0)),
4424
- float mxp_jitter = 1.0
4425
- )
4426
- {
4427
- return noise::mx_worley_noise_float(mxp_texcoord, mxp_jitter, 0);
4428
- }
4429
-
4430
- export float2 mx_worleynoise2d_float2(
4431
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0)),
4432
- float mxp_jitter = 1.0
4433
- )
4434
- {
4435
- return noise::mx_worley_noise_float2(mxp_texcoord, mxp_jitter, 0);
4436
- }
4437
-
4438
- export float3 mx_worleynoise2d_float3(
4439
- float2 mxp_texcoord = core::mx_swizzle_xy( ::state::texture_coordinate(0)),
4440
- float mxp_jitter = 1.0
4441
- )
4442
- {
4443
- return noise::mx_worley_noise_float3(mxp_texcoord, mxp_jitter, 0);
4444
- }
4445
-
4446
- export float mx_worleynoise3d_float(
4447
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position()),
4448
- float mxp_jitter = 1.0
4449
- )
4450
- {
4451
- return noise::mx_worley_noise_float(mxp_position, mxp_jitter, 0);
4452
- }
4453
-
4454
- export float2 mx_worleynoise3d_float2(
4455
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position()),
4456
- float mxp_jitter = 1.0
4457
- )
4458
- {
4459
- return noise::mx_worley_noise_float2(mxp_position, mxp_jitter, 0);
4460
- }
4461
-
4462
- export float3 mx_worleynoise3d_float3(
4463
- float3 mxp_position = state::transform_point(state::coordinate_internal, state::coordinate_object, state::position()),
4464
- float mxp_jitter = 1.0
4465
- )
4466
- {
4467
- return noise::mx_worley_noise_float3(mxp_position, mxp_jitter, 0);
4468
- }
4469
-
4470
- export core::color4 mx_combine2_color4CF(color in1, float in2)
4471
- {
4472
- float3 in1_as_float3 = float3(in1);
4473
- return core::mk_color4(in1_as_float3.x, in1_as_float3.y, in1_as_float3.z, in2);
4474
- }