babylon.customMaterial.d.ts 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. declare module BABYLON {
  2. class CustomShaderStructure {
  3. FragmentStore: string;
  4. VertexStore: string;
  5. constructor();
  6. }
  7. class ShaderSpecialParts {
  8. constructor();
  9. Fragment_Begin: string;
  10. Fragment_Definitions: string;
  11. Fragment_MainBegin: string;
  12. Fragment_Custom_Diffuse: string;
  13. Fragment_Custom_Alpha: string;
  14. Fragment_Before_FragColor: string;
  15. Vertex_Begin: string;
  16. Vertex_Definitions: string;
  17. Vertex_MainBegin: string;
  18. Vertex_Before_PositionUpdated: string;
  19. Vertex_Before_NormalUpdated: string;
  20. }
  21. class ShaderForVer3_0 extends CustomShaderStructure {
  22. constructor();
  23. }
  24. class StandardShaderVersions {
  25. static Ver3_0: any;
  26. }
  27. class CustomMaterial extends StandardMaterial {
  28. static ShaderIndexer: number;
  29. CustomParts: ShaderSpecialParts;
  30. ShaderVersion: CustomShaderStructure;
  31. _isCreatedShader: boolean;
  32. _createdShaderName: string;
  33. _customUniform: string[];
  34. _newUniforms: string[];
  35. _newUniformInstances: any[];
  36. _newSamplerInstances: Texture[];
  37. AttachAfterBind(mesh: Mesh, effect: Effect): void;
  38. ReviewUniform(name: string, arr: string[]): string[];
  39. Builder(shaderName: string, uniforms: string[], uniformBuffers: string[], samplers: string[], defines: StandardMaterialDefines): string;
  40. SelectVersion(ver: string): void;
  41. constructor(name: string, scene: Scene);
  42. AddUniform(name: string, kind: string, param: any): CustomMaterial;
  43. Fragment_Begin(shaderPart: string): CustomMaterial;
  44. Fragment_Definitions(shaderPart: string): CustomMaterial;
  45. Fragment_MainBegin(shaderPart: string): CustomMaterial;
  46. Fragment_Custom_Diffuse(shaderPart: string): CustomMaterial;
  47. Fragment_Custom_Alpha(shaderPart: string): CustomMaterial;
  48. Fragment_Before_FragColor(shaderPart: string): CustomMaterial;
  49. Vertex_Begin(shaderPart: string): CustomMaterial;
  50. Vertex_Definitions(shaderPart: string): CustomMaterial;
  51. Vertex_MainBegin(shaderPart: string): CustomMaterial;
  52. Vertex_Before_PositionUpdated(shaderPart: string): CustomMaterial;
  53. Vertex_Before_NormalUpdated(shaderPart: string): CustomMaterial;
  54. }
  55. }