sevan 8 лет назад
Родитель
Сommit
6aeb3de726
100 измененных файлов с 405 добавлено и 1275 удалено
  1. 3 1
      .gitignore
  2. 9 0
      .vscode/launch.json
  3. 6 2
      .vscode/settings.json
  4. 99 0
      Tools/Gulp/config.json
  5. 3 3
      materialsLibrary/gulp-srcToVariable.js
  6. 57 5
      Tools/Gulp/gulpfile.js
  7. 1 1
      Tools/Gulp/package.json
  8. 0 0
      assets/meshes/Rabbit.babylon
  9. 0 0
      assets/refs/dat.gui.min.js
  10. 0 0
      assets/textures/ColorGrading.3DL
  11. 0 0
      assets/textures/amiga.jpg
  12. 0 0
      assets/textures/fire/diffuse.png
  13. 0 0
      assets/textures/fire/distortion.png
  14. 0 0
      assets/textures/fire/opacity.png
  15. 0 0
      assets/textures/floor.png
  16. 0 0
      assets/textures/floor_bump.PNG
  17. 0 0
      assets/textures/grass.png
  18. 0 0
      assets/textures/grassn.png
  19. 0 0
      assets/textures/hdr/environment.hdr
  20. 0 0
      assets/textures/heightMap.png
  21. 0 0
      assets/textures/lava/cloud.png
  22. 0 0
      assets/textures/lava/lavatile.jpg
  23. 0 0
      assets/textures/leopard_fur.JPG
  24. 0 0
      assets/textures/mixMap.png
  25. 0 0
      assets/textures/rock.png
  26. 0 0
      assets/textures/rockn.png
  27. 0 0
      assets/textures/skybox/TropicalSunnyDay_nx.jpg
  28. 0 0
      assets/textures/skybox/TropicalSunnyDay_ny.jpg
  29. 0 0
      assets/textures/skybox/TropicalSunnyDay_nz.jpg
  30. 0 0
      assets/textures/skybox/TropicalSunnyDay_px.jpg
  31. 0 0
      assets/textures/skybox/TropicalSunnyDay_py.jpg
  32. 0 0
      assets/textures/skybox/TropicalSunnyDay_pz.jpg
  33. 0 0
      assets/textures/speckles.jpg
  34. 0 0
      assets/textures/waterbump.png
  35. 13 13
      materialsLibrary/dist/babylon.fireMaterial.js
  36. 25 26
      materialsLibrary/dist/babylon.furMaterial.js
  37. 15 15
      materialsLibrary/dist/babylon.gradientMaterial.js
  38. 14 14
      materialsLibrary/dist/babylon.gridMaterial.js
  39. 18 18
      materialsLibrary/dist/babylon.lavaMaterial.js
  40. 11 11
      materialsLibrary/dist/babylon.normalMaterial.js
  41. 12 12
      materialsLibrary/dist/babylon.simpleMaterial.js
  42. 18 18
      materialsLibrary/dist/babylon.skyMaterial.js
  43. 20 20
      materialsLibrary/dist/babylon.terrainMaterial.js
  44. 21 21
      materialsLibrary/dist/babylon.triPlanarMaterial.js
  45. 30 31
      materialsLibrary/dist/babylon.waterMaterial.js
  46. 0 100
      materialsLibrary/config.json
  47. 0 1
      materialsLibrary/dist/babylon.fireMaterial.min.js
  48. 0 1
      materialsLibrary/dist/babylon.furMaterial.min.js
  49. 0 1
      materialsLibrary/dist/babylon.gradientMaterial.min.js
  50. 0 1
      materialsLibrary/dist/babylon.gridMaterial.min.js
  51. 0 1
      materialsLibrary/dist/babylon.lavaMaterial.min.js
  52. 0 1
      materialsLibrary/dist/babylon.normalMaterial.min.js
  53. 0 1
      materialsLibrary/dist/babylon.simpleMaterial.min.js
  54. 0 1
      materialsLibrary/dist/babylon.skyMaterial.min.js
  55. 0 1
      materialsLibrary/dist/babylon.terrainMaterial.min.js
  56. 0 1
      materialsLibrary/dist/babylon.triPlanarMaterial.min.js
  57. 0 1
      materialsLibrary/dist/babylon.waterMaterial.min.js
  58. 0 28
      materialsLibrary/dist/dts/babylon.fireMaterial.d.ts
  59. 0 43
      materialsLibrary/dist/dts/babylon.furMaterial.d.ts
  60. 0 30
      materialsLibrary/dist/dts/babylon.gradientMaterial.d.ts
  61. 0 55
      materialsLibrary/dist/dts/babylon.gridMaterial.d.ts
  62. 0 34
      materialsLibrary/dist/dts/babylon.lavaMaterial.d.ts
  63. 0 26
      materialsLibrary/dist/dts/babylon.normalMaterial.d.ts
  64. 0 262
      materialsLibrary/dist/dts/babylon.pbrMaterial.d.ts
  65. 0 27
      materialsLibrary/dist/dts/babylon.simpleMaterial.d.ts
  66. 0 32
      materialsLibrary/dist/dts/babylon.skyMaterial.d.ts
  67. 0 34
      materialsLibrary/dist/dts/babylon.terrainMaterial.d.ts
  68. 0 35
      materialsLibrary/dist/dts/babylon.triPlanarMaterial.d.ts
  69. 0 100
      materialsLibrary/dist/dts/babylon.waterMaterial.d.ts
  70. 0 97
      materialsLibrary/gulp-removeShaderComments.js
  71. 0 97
      materialsLibrary/gulpfile.js
  72. 30 30
      materialsLibrary/test/index.html
  73. 0 23
      materialsLibrary/package.json
  74. 0 0
      materialsLibrary/src/fire/babylon.fireMaterial.ts
  75. 0 0
      materialsLibrary/src/fire/fire.fragment.fx
  76. 0 0
      materialsLibrary/src/fire/fire.vertex.fx
  77. 0 0
      materialsLibrary/src/fur/babylon.furMaterial.ts
  78. 0 0
      materialsLibrary/src/fur/fur.fragment.fx
  79. 0 0
      materialsLibrary/src/fur/fur.vertex.fx
  80. 0 0
      materialsLibrary/src/fur/readme.md
  81. 0 0
      materialsLibrary/src/gradient/babylon.gradientMaterial.ts
  82. 0 0
      materialsLibrary/src/gradient/gradient.fragment.fx
  83. 0 0
      materialsLibrary/src/gradient/gradient.vertex.fx
  84. 0 0
      materialsLibrary/src/grid/babylon.gridmaterial.ts
  85. 0 0
      materialsLibrary/src/grid/grid.fragment.fx
  86. 0 0
      materialsLibrary/src/grid/grid.vertex.fx
  87. 0 0
      materialsLibrary/src/grid/legacygrid.fragment.fx
  88. 0 0
      materialsLibrary/src/grid/legacygrid.vertex.fx
  89. 0 0
      materialsLibrary/src/lava/babylon.lavaMaterial.ts
  90. 0 0
      materialsLibrary/src/lava/lava.fragment.fx
  91. 0 0
      materialsLibrary/src/lava/lava.vertex.fx
  92. 0 0
      materialsLibrary/src/normal/babylon.normalMaterial.ts
  93. 0 0
      materialsLibrary/src/normal/normal.fragment.fx
  94. 0 0
      materialsLibrary/src/normal/normal.vertex.fx
  95. 0 0
      materialsLibrary/src/simple/babylon.simpleMaterial.ts
  96. 0 0
      materialsLibrary/src/simple/simple.fragment.fx
  97. 0 0
      materialsLibrary/src/simple/simple.vertex.fx
  98. 0 0
      materialsLibrary/src/sky/babylon.skyMaterial.ts
  99. 0 0
      materialsLibrary/src/sky/sky.fragment.fx
  100. 0 0
      materialsLibrary/materials/sky/sky.vertex.fx

+ 3 - 1
.gitignore

@@ -132,4 +132,6 @@ node_modules
 # for VSCode
 /.vs
 /Playground/project.lock.json
-.tempChromeProfileForDebug
+.tempChromeProfileForDebug
+.temp
+*.js.map

+ 9 - 0
.vscode/launch.json

@@ -9,6 +9,15 @@
             "webRoot": "${workspaceRoot}/",
             "sourceMaps": true,
             "userDataDir": "${workspaceRoot}/.tempChromeProfileForDebug"
+        },
+        {
+            "name": "Launch Materials Library (Chrome)",
+            "type": "chrome",
+            "request": "launch",
+            "url": "http://localhost:1338/materialsLibrary/index.html",
+            "webRoot": "${workspaceRoot}/",
+            "sourceMaps": true,
+            "userDataDir": "${workspaceRoot}/.tempChromeProfileForDebug"
         }
     ]
 }

+ 6 - 2
.vscode/settings.json

@@ -7,8 +7,11 @@
         "**/.hg": true,
         "**/.DS_Store": true,
         "**/.vs": true,
+        "**/.temp": true,        
         "**/.tempChromeProfileForDebug": true,
-        "**/node_modules": true
+        "**/node_modules": true,
+        "**/*.js.map": true,
+        "**/*.js": {"when": "$(basename).ts"}
     },
     "files.associations": {
         "*.fx": "glsl"
@@ -17,6 +20,7 @@
         "**/node_modules": true,
         "**/bower_components": true,
         "**/.vs": true,
-        "**/.tempChromeProfileForDebug": true
+        "**/.tempChromeProfileForDebug": true,
+        "**/.temp": true
     }
 }

+ 99 - 0
Tools/Gulp/config.json

@@ -226,5 +226,104 @@
       "../../src/Debug/babylon.debugLayer.js",
       "../../src/PostProcess/babylon.standardRenderingPipeline.js"
     ]
+  },
+
+  "materials": [
+
+     {
+      "file": "../../materialsLibrary/src/gradient/babylon.gradientMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/gradient/gradient.vertex.fx",
+        "../../materialsLibrary/src/gradient/gradient.fragment.fx"
+      ],
+      "output": "babylon.gradientMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/normal/babylon.normalMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/normal/normal.vertex.fx",
+        "../../materialsLibrary/src/normal/normal.fragment.fx"
+      ],
+      "output": "babylon.normalMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/lava/babylon.lavaMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/lava/lava.vertex.fx",
+        "../../materialsLibrary/src/lava/lava.fragment.fx"
+      ],
+      "output": "babylon.lavaMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/simple/babylon.simpleMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/simple/simple.vertex.fx",
+        "../../materialsLibrary/src/simple/simple.fragment.fx"
+      ],
+      "output": "babylon.simpleMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/water/babylon.waterMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/water/water.vertex.fx",
+        "../../materialsLibrary/src/water/water.fragment.fx"
+      ],
+      "output": "babylon.waterMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/fire/babylon.fireMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/fire/fire.vertex.fx",
+        "../../materialsLibrary/src/fire/fire.fragment.fx"
+      ],
+      "output": "babylon.fireMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/fur/babylon.furMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/fur/fur.vertex.fx",
+        "../../materialsLibrary/src/fur/fur.fragment.fx"
+      ],
+      "output": "babylon.furMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/terrain/babylon.terrainMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/terrain/terrain.vertex.fx",
+        "../../materialsLibrary/src/terrain/terrain.fragment.fx"
+      ],
+      "output": "babylon.terrainMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/triPlanar/babylon.triPlanarMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/triPlanar/triplanar.vertex.fx",
+        "../../materialsLibrary/src/triPlanar/triplanar.fragment.fx"
+      ],
+      "output": "babylon.triPlanarMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/sky/babylon.skyMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/sky/sky.vertex.fx",
+        "../../materialsLibrary/src/sky/sky.fragment.fx"
+      ],
+      "output": "babylon.skyMaterial.js"
+    },
+    {
+      "file": "../../materialsLibrary/src/grid/babylon.gridMaterial.ts",
+      "shaderFiles": [
+        "../../materialsLibrary/src/grid/grid.vertex.fx",
+        "../../materialsLibrary/src/grid/grid.fragment.fx",
+        "../../materialsLibrary/src/grid/legacygrid.vertex.fx",
+        "../../materialsLibrary/src/grid/legacygrid.fragment.fx"
+      ],
+      "output": "babylon.gridMaterial.js",
+      "declarationFilename": "babylon.gridMaterial.d.ts"
+    }
+  ],
+  "materialsBuild": {
+    "distOutputDirectory": "../../dist/materialsLibrary/",
+    "dtsOutputDirectory": "../../dist/materialsLibrary/dts/"
   }
 }

+ 3 - 3
materialsLibrary/gulp-srcToVariable.js

@@ -5,9 +5,9 @@ var path = require('path');
 var File = gutil.File;
 
 // Consts
-const PLUGIN_NAME = 'gulp-srcToVariable';
+const PLUGIN_NAME = 'gulp-appendSrcToVariable';
 
-var srcToVariable = function srcToVariable(varName, asMap, namingCallback) {
+var appendSrcToVariable = function appendSrcToVariable(varName, asMap, namingCallback) {
 
     var content;
     var firstFile;
@@ -65,4 +65,4 @@ var srcToVariable = function srcToVariable(varName, asMap, namingCallback) {
     return through.obj(bufferContents, endStream);
 }
 
-module.exports = srcToVariable;
+module.exports = appendSrcToVariable;

+ 57 - 5
Tools/Gulp/gulpfile.js

@@ -3,6 +3,7 @@ var uglify = require("gulp-uglify");
 var typescript = require("gulp-typescript");
 var sourcemaps = require("gulp-sourcemaps");
 var srcToVariable = require("gulp-content-to-variable");
+var appendSrcToVariable = require("./gulp-appendSrcToVariable");
 var addDtsExport = require("./gulp-addDtsExport");
 var addModuleExports = require("./gulp-addModuleExports");
 var merge2 = require("merge2");
@@ -16,7 +17,7 @@ var uncommentShader = require("./gulp-removeShaderComments");
 var expect = require('gulp-expect-file');
 var optimisejs = require('gulp-optimize-js');
 var webserver = require('gulp-webserver');
-const path = require('path');
+var path = require('path');
 
 var config = require("./config.json");
 
@@ -28,14 +29,25 @@ var workersStream;
 var extendsSearchRegex = /var\s__extends[\s\S]+?\};/g;
 var decorateSearchRegex = /var\s__decorate[\s\S]+?\};/g;
 
-var tsProject = typescript.createProject({
+var tsConfig = {
     noExternalResolve: true,
     target: 'ES5',
     declarationFiles: true,
     typescript: require('typescript'),
     experimentalDecorators: true,
-    isolatedModules: false,
-});
+    isolatedModules: false
+};
+
+var externalTsConfig = {
+    noExternalResolve: false,
+    target: 'ES5',
+    declarationFiles: true,
+    typescript: require('typescript'),
+    experimentalDecorators: true,
+    isolatedModules: false
+};
+
+var tsProject = typescript.createProject(tsConfig);
 
 //function to convert the shaders' filenames to variable names.
 function shadersName(filename) {
@@ -123,6 +135,39 @@ gulp.task('typescript-compile', function () {
     ])
 });
 
+gulp.task('materialsLibrary', function () {
+    var tasks = config.materials.map(function (material) {
+
+        var compilOutput = gulp.src(material.file, { base: '../../' })
+            .pipe(sourcemaps.init())
+            .pipe(typescript(externalTsConfig));
+
+        var js = compilOutput.js;        
+        var shader = gulp.src(material.shaderFiles)
+                .pipe(uncommentShader())
+                .pipe(appendSrcToVariable("BABYLON.Effect.ShadersStore", true, shadersName));
+        
+        var generatedJs = merge2(js, shader, includeShader)
+            .pipe(cleants())
+            .pipe(replace(extendsSearchRegex, ""))
+            .pipe(concat(material.output))
+            
+        var maps = generatedJs.pipe(sourcemaps.write('.temp', {
+                    includeContent:false,
+                    sourceRoot: '../../'
+                }))
+            .pipe(gulp.dest(config.materialsBuild.distOutputDirectory));
+
+        var minified = generatedJs.pipe(rename({extname: ".min.js"}))
+            .pipe(uglify())
+            .pipe(gulp.dest(config.materialsBuild.distOutputDirectory));
+
+        return merge2(maps, minified);
+    });
+
+    return merge2(tasks);
+});
+
 gulp.task("buildCore", ["shaders"], function () {
     return merge2(
         gulp.src(config.core.files).        
@@ -196,7 +241,14 @@ gulp.task('default', function (cb) {
  * Watch typescript task, will call the default typescript task if a typescript file is updated.
  */
 gulp.task('watch', ['typescript-compile'], function () {
-    return gulp.watch(config.core.typescript, ['typescript-compile']);
+    var tasks = [gulp.watch(config.core.typescript, ['typescript-compile'])];
+
+    config.materials.map(function (material) {
+        tasks.push(gulp.watch(material.file, ['materialsLibrary']));
+        tasks.push(gulp.watch(material.shaderFiles, ['materialsLibrary']));
+    });
+
+    return tasks;
 });
 
 gulp.task('webserver', function () {

+ 1 - 1
Tools/Gulp/package.json

@@ -9,7 +9,7 @@
   "devDependencies": {
     "gulp": "^3.8.11",
     "gulp-uglify": "~1.5.3",
-    "gulp-sourcemaps": "~1.5.2",
+    "gulp-sourcemaps": "~1.9.1",
     "typescript": "^1.7.5",
     "gulp-typescript": "~2.13.0",
     "through2": "~0.6.5",

materialsLibrary/test/meshes/Rabbit.babylon → assets/meshes/Rabbit.babylon


materialsLibrary/test/refs/dat.gui.min.js → assets/refs/dat.gui.min.js


materialsLibrary/test/textures/ColorGrading.3DL → assets/textures/ColorGrading.3DL


materialsLibrary/test/textures/amiga.jpg → assets/textures/amiga.jpg


materialsLibrary/test/textures/fire/diffuse.png → assets/textures/fire/diffuse.png


materialsLibrary/test/textures/fire/distortion.png → assets/textures/fire/distortion.png


materialsLibrary/test/textures/fire/opacity.png → assets/textures/fire/opacity.png


materialsLibrary/test/textures/floor.png → assets/textures/floor.png


materialsLibrary/test/textures/floor_bump.PNG → assets/textures/floor_bump.PNG


materialsLibrary/test/textures/grass.png → assets/textures/grass.png


materialsLibrary/test/textures/grassn.png → assets/textures/grassn.png


materialsLibrary/test/textures/hdr/environment.hdr → assets/textures/hdr/environment.hdr


materialsLibrary/test/textures/heightMap.png → assets/textures/heightMap.png


materialsLibrary/test/textures/lava/cloud.png → assets/textures/lava/cloud.png


materialsLibrary/test/textures/lava/lavatile.jpg → assets/textures/lava/lavatile.jpg


materialsLibrary/test/textures/leopard_fur.JPG → assets/textures/leopard_fur.JPG


materialsLibrary/test/textures/mixMap.png → assets/textures/mixMap.png


materialsLibrary/test/textures/rock.png → assets/textures/rock.png


materialsLibrary/test/textures/rockn.png → assets/textures/rockn.png


materialsLibrary/test/textures/skybox/TropicalSunnyDay_nx.jpg → assets/textures/skybox/TropicalSunnyDay_nx.jpg


materialsLibrary/test/textures/skybox/TropicalSunnyDay_ny.jpg → assets/textures/skybox/TropicalSunnyDay_ny.jpg


materialsLibrary/test/textures/skybox/TropicalSunnyDay_nz.jpg → assets/textures/skybox/TropicalSunnyDay_nz.jpg


materialsLibrary/test/textures/skybox/TropicalSunnyDay_px.jpg → assets/textures/skybox/TropicalSunnyDay_px.jpg


materialsLibrary/test/textures/skybox/TropicalSunnyDay_py.jpg → assets/textures/skybox/TropicalSunnyDay_py.jpg


materialsLibrary/test/textures/skybox/TropicalSunnyDay_pz.jpg → assets/textures/skybox/TropicalSunnyDay_pz.jpg


materialsLibrary/test/textures/speckles.jpg → assets/textures/speckles.jpg


materialsLibrary/test/textures/waterbump.png → assets/textures/waterbump.png


Разница между файлами не показана из-за своего большого размера
+ 13 - 13
materialsLibrary/dist/babylon.fireMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 25 - 26
materialsLibrary/dist/babylon.furMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 15 - 15
materialsLibrary/dist/babylon.gradientMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 14 - 14
materialsLibrary/dist/babylon.gridMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 18 - 18
materialsLibrary/dist/babylon.lavaMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 11 - 11
materialsLibrary/dist/babylon.normalMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 12 - 12
materialsLibrary/dist/babylon.simpleMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 18 - 18
materialsLibrary/dist/babylon.skyMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 20 - 20
materialsLibrary/dist/babylon.terrainMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 21 - 21
materialsLibrary/dist/babylon.triPlanarMaterial.js


Разница между файлами не показана из-за своего большого размера
+ 30 - 31
materialsLibrary/dist/babylon.waterMaterial.js


+ 0 - 100
materialsLibrary/config.json

@@ -1,100 +0,0 @@
-{
-  "materials": [
-
-     {
-      "file": "materials/gradient/babylon.gradientMaterial.ts",
-      "shaderFiles": [
-        "materials/gradient/gradient.vertex.fx",
-        "materials/gradient/gradient.fragment.fx"
-      ],
-      "output": "babylon.gradientMaterial.js"
-    },
-    {
-      "file": "materials/normal/babylon.normalMaterial.ts",
-      "shaderFiles": [
-        "materials/normal/normal.vertex.fx",
-        "materials/normal/normal.fragment.fx"
-      ],
-      "output": "babylon.normalMaterial.js"
-    },
-    {
-      "file": "materials/lava/babylon.lavaMaterial.ts",
-      "shaderFiles": [
-        "materials/lava/lava.vertex.fx",
-        "materials/lava/lava.fragment.fx"
-      ],
-      "output": "babylon.lavaMaterial.js"
-    },
-    {
-      "file": "materials/simple/babylon.simpleMaterial.ts",
-      "shaderFiles": [
-        "materials/simple/simple.vertex.fx",
-        "materials/simple/simple.fragment.fx"
-      ],
-      "output": "babylon.simpleMaterial.js"
-    },
-    {
-      "file": "materials/water/babylon.waterMaterial.ts",
-      "shaderFiles": [
-        "materials/water/water.vertex.fx",
-        "materials/water/water.fragment.fx"
-      ],
-      "output": "babylon.waterMaterial.js"
-    },
-    {
-      "file": "materials/fire/babylon.fireMaterial.ts",
-      "shaderFiles": [
-        "materials/fire/fire.vertex.fx",
-        "materials/fire/fire.fragment.fx"
-      ],
-      "output": "babylon.fireMaterial.js"
-    },
-    {
-      "file": "materials/fur/babylon.furMaterial.ts",
-      "shaderFiles": [
-        "materials/fur/fur.vertex.fx",
-        "materials/fur/fur.fragment.fx"
-      ],
-      "output": "babylon.furMaterial.js"
-    },
-    {
-      "file": "materials/terrain/babylon.terrainMaterial.ts",
-      "shaderFiles": [
-        "materials/terrain/terrain.vertex.fx",
-        "materials/terrain/terrain.fragment.fx"
-      ],
-      "output": "babylon.terrainMaterial.js"
-    },
-    {
-      "file": "materials/triPlanar/babylon.triPlanarMaterial.ts",
-      "shaderFiles": [
-        "materials/triPlanar/triplanar.vertex.fx",
-        "materials/triPlanar/triplanar.fragment.fx"
-      ],
-      "output": "babylon.triPlanarMaterial.js"
-    },
-    {
-      "file": "materials/sky/babylon.skyMaterial.ts",
-      "shaderFiles": [
-        "materials/sky/sky.vertex.fx",
-        "materials/sky/sky.fragment.fx"
-      ],
-      "output": "babylon.skyMaterial.js"
-    },
-    {
-      "file": "materials/grid/babylon.gridMaterial.ts",
-      "shaderFiles": [
-        "materials/grid/grid.vertex.fx",
-        "materials/grid/grid.fragment.fx",
-        "materials/grid/legacygrid.vertex.fx",
-        "materials/grid/legacygrid.fragment.fx"
-      ],
-      "output": "babylon.gridMaterial.js",
-      "declarationFilename": "babylon.gridMaterial.d.ts"
-    }
-  ],
-  "build": {
-    "distOutputDirectory": "dist/",
-    "dtsOutputDirectory": "dist/dts/"
-  }
-}

Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.fireMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.furMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.gradientMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.gridMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.lavaMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.normalMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.simpleMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.skyMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.terrainMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.triPlanarMaterial.min.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 1
materialsLibrary/dist/babylon.waterMaterial.min.js


+ 0 - 28
materialsLibrary/dist/dts/babylon.fireMaterial.d.ts

@@ -1,28 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class FireMaterial extends Material {
-        diffuseTexture: BaseTexture;
-        distortionTexture: BaseTexture;
-        opacityTexture: BaseTexture;
-        diffuseColor: Color3;
-        speed: number;
-        private _scaledDiffuse;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        private _lastTime;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): FireMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): FireMaterial;
-    }
-}

+ 0 - 43
materialsLibrary/dist/dts/babylon.furMaterial.d.ts

@@ -1,43 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class FurMaterial extends Material {
-        diffuseTexture: BaseTexture;
-        heightTexture: BaseTexture;
-        diffuseColor: Color3;
-        furLength: number;
-        furAngle: number;
-        furColor: Color3;
-        furOffset: number;
-        furSpacing: number;
-        furGravity: Vector3;
-        furSpeed: number;
-        furDensity: number;
-        furTexture: DynamicTexture;
-        disableLighting: boolean;
-        highLevelFur: boolean;
-        maxSimultaneousLights: number;
-        _meshes: AbstractMesh[];
-        private _worldViewProjectionMatrix;
-        private _renderId;
-        private _furTime;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        furTime: number;
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        updateFur(): void;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): FurMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): FurMaterial;
-        static GenerateTexture(name: string, scene: Scene): DynamicTexture;
-        static FurifyMesh(sourceMesh: Mesh, quality: number): Mesh[];
-    }
-}

+ 0 - 30
materialsLibrary/dist/dts/babylon.gradientMaterial.d.ts

@@ -1,30 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class GradientMaterial extends Material {
-        topColor: Color3;
-        topColorAlpha: number;
-        bottomColor: Color3;
-        bottomColorAlpha: number;
-        offset: number;
-        smoothness: number;
-        disableLighting: boolean;
-        private _worldViewProjectionMatrix;
-        private _scaledDiffuse;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): GradientMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): GradientMaterial;
-    }
-}

+ 0 - 55
materialsLibrary/dist/dts/babylon.gridMaterial.d.ts

@@ -1,55 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    /**
-     * The grid materials allows you to wrap any shape with a grid.
-     * Colors are customizable.
-     */
-    class GridMaterial extends BABYLON.Material {
-        /**
-         * Main color of the grid (e.g. between lines)
-         */
-        mainColor: Color3;
-        /**
-         * Color of the grid lines.
-         */
-        lineColor: Color3;
-        /**
-         * The scale of the grid compared to unit.
-         */
-        gridRatio: number;
-        /**
-         * The frequency of thicker lines.
-         */
-        majorUnitFrequency: number;
-        /**
-         * The visibility of minor units in the grid.
-         */
-        minorUnitVisibility: number;
-        /**
-         * The grid opacity outside of the lines.
-         */
-        opacity: number;
-        private _gridControl;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        /**
-         * constructor
-         * @param name The name given to the material in order to identify it afterwards.
-         * @param scene The scene the material is used in.
-         */
-        constructor(name: string, scene: Scene);
-        /**
-         * Returns wehter or not the grid requires alpha blending.
-         */
-        needAlphaBlending(): boolean;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): GridMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): GridMaterial;
-    }
-}

+ 0 - 34
materialsLibrary/dist/dts/babylon.lavaMaterial.d.ts

@@ -1,34 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class LavaMaterial extends Material {
-        diffuseTexture: BaseTexture;
-        noiseTexture: BaseTexture;
-        fogColor: Color3;
-        speed: number;
-        movingSpeed: number;
-        lowFrequencySpeed: number;
-        fogDensity: number;
-        private _lastTime;
-        diffuseColor: Color3;
-        disableLighting: boolean;
-        maxSimultaneousLights: number;
-        private _worldViewProjectionMatrix;
-        private _scaledDiffuse;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): LavaMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): LavaMaterial;
-    }
-}

+ 0 - 26
materialsLibrary/dist/dts/babylon.normalMaterial.d.ts

@@ -1,26 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class NormalMaterial extends Material {
-        diffuseTexture: BaseTexture;
-        diffuseColor: Color3;
-        disableLighting: boolean;
-        private _worldViewProjectionMatrix;
-        private _scaledDiffuse;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): NormalMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): NormalMaterial;
-    }
-}

+ 0 - 262
materialsLibrary/dist/dts/babylon.pbrMaterial.d.ts

@@ -1,262 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    /**
-     * The Physically based material of BJS.
-     *
-     * This offers the main features of a standard PBR material.
-     * For more information, please refer to the documentation :
-     * http://doc.babylonjs.com/extensions/Physically_Based_Rendering
-     */
-    class PBRMaterial extends BABYLON.Material {
-        /**
-         * Intensity of the direct lights e.g. the four lights available in your scene.
-         * This impacts both the direct diffuse and specular highlights.
-         */
-        directIntensity: number;
-        /**
-         * Intensity of the emissive part of the material.
-         * This helps controlling the emissive effect without modifying the emissive color.
-         */
-        emissiveIntensity: number;
-        /**
-         * Intensity of the environment e.g. how much the environment will light the object
-         * either through harmonics for rough material or through the refelction for shiny ones.
-         */
-        environmentIntensity: number;
-        /**
-         * This is a special control allowing the reduction of the specular highlights coming from the
-         * four lights of the scene. Those highlights may not be needed in full environment lighting.
-         */
-        specularIntensity: number;
-        private _lightingInfos;
-        /**
-         * Debug Control allowing disabling the bump map on this material.
-         */
-        disableBumpMap: boolean;
-        /**
-         * Debug Control helping enforcing or dropping the darkness of shadows.
-         * 1.0 means the shadows have their normal darkness, 0.0 means the shadows are not visible.
-         */
-        overloadedShadowIntensity: number;
-        /**
-         * Debug Control helping dropping the shading effect coming from the diffuse lighting.
-         * 1.0 means the shade have their normal impact, 0.0 means no shading at all.
-         */
-        overloadedShadeIntensity: number;
-        private _overloadedShadowInfos;
-        /**
-         * The camera exposure used on this material.
-         * This property is here and not in the camera to allow controlling exposure without full screen post process.
-         * This corresponds to a photographic exposure.
-         */
-        cameraExposure: number;
-        /**
-         * The camera contrast used on this material.
-         * This property is here and not in the camera to allow controlling contrast without full screen post process.
-         */
-        cameraContrast: number;
-        private _cameraInfos;
-        private _microsurfaceTextureLods;
-        /**
-         * Debug Control allowing to overload the ambient color.
-         * This as to be use with the overloadedAmbientIntensity parameter.
-         */
-        overloadedAmbient: Color3;
-        /**
-         * Debug Control indicating how much the overloaded ambient color is used against the default one.
-         */
-        overloadedAmbientIntensity: number;
-        /**
-         * Debug Control allowing to overload the albedo color.
-         * This as to be use with the overloadedAlbedoIntensity parameter.
-         */
-        overloadedAlbedo: Color3;
-        /**
-         * Debug Control indicating how much the overloaded albedo color is used against the default one.
-         */
-        overloadedAlbedoIntensity: number;
-        /**
-         * Debug Control allowing to overload the reflectivity color.
-         * This as to be use with the overloadedReflectivityIntensity parameter.
-         */
-        overloadedReflectivity: Color3;
-        /**
-         * Debug Control indicating how much the overloaded reflectivity color is used against the default one.
-         */
-        overloadedReflectivityIntensity: number;
-        /**
-         * Debug Control allowing to overload the emissive color.
-         * This as to be use with the overloadedEmissiveIntensity parameter.
-         */
-        overloadedEmissive: Color3;
-        /**
-         * Debug Control indicating how much the overloaded emissive color is used against the default one.
-         */
-        overloadedEmissiveIntensity: number;
-        private _overloadedIntensity;
-        /**
-         * Debug Control allowing to overload the reflection color.
-         * This as to be use with the overloadedReflectionIntensity parameter.
-         */
-        overloadedReflection: Color3;
-        /**
-         * Debug Control indicating how much the overloaded reflection color is used against the default one.
-         */
-        overloadedReflectionIntensity: number;
-        /**
-         * Debug Control allowing to overload the microsurface.
-         * This as to be use with the overloadedMicroSurfaceIntensity parameter.
-         */
-        overloadedMicroSurface: number;
-        /**
-         * Debug Control indicating how much the overloaded microsurface is used against the default one.
-         */
-        overloadedMicroSurfaceIntensity: number;
-        private _overloadedMicroSurface;
-        /**
-         * AKA Diffuse Texture in standard nomenclature.
-         */
-        albedoTexture: BaseTexture;
-        /**
-         * AKA Occlusion Texture in other nomenclature.
-         */
-        ambientTexture: BaseTexture;
-        opacityTexture: BaseTexture;
-        reflectionTexture: BaseTexture;
-        emissiveTexture: BaseTexture;
-        /**
-         * AKA Specular texture in other nomenclature.
-         */
-        reflectivityTexture: BaseTexture;
-        bumpTexture: BaseTexture;
-        lightmapTexture: BaseTexture;
-        refractionTexture: BaseTexture;
-        ambientColor: Color3;
-        /**
-         * AKA Diffuse Color in other nomenclature.
-         */
-        albedoColor: Color3;
-        /**
-         * AKA Specular Color in other nomenclature.
-         */
-        reflectivityColor: Color3;
-        reflectionColor: Color3;
-        emissiveColor: Color3;
-        /**
-         * AKA Glossiness in other nomenclature.
-         */
-        microSurface: number;
-        /**
-         * source material index of refraction (IOR)' / 'destination material IOR.
-         */
-        indexOfRefraction: number;
-        /**
-         * Controls if refraction needs to be inverted on Y. This could be usefull for procedural texture.
-         */
-        invertRefractionY: boolean;
-        opacityFresnelParameters: FresnelParameters;
-        emissiveFresnelParameters: FresnelParameters;
-        /**
-         * This parameters will make the material used its opacity to control how much it is refracting aginst not.
-         * Materials half opaque for instance using refraction could benefit from this control.
-         */
-        linkRefractionWithTransparency: boolean;
-        /**
-         * The emissive and albedo are linked to never be more than one (Energy conservation).
-         */
-        linkEmissiveWithAlbedo: boolean;
-        useLightmapAsShadowmap: boolean;
-        /**
-         * In this mode, the emissive informtaion will always be added to the lighting once.
-         * A light for instance can be thought as emissive.
-         */
-        useEmissiveAsIllumination: boolean;
-        /**
-         * Secifies that the alpha is coming form the albedo channel alpha channel.
-         */
-        useAlphaFromAlbedoTexture: boolean;
-        /**
-         * Specifies that the material will keeps the specular highlights over a transparent surface (only the most limunous ones).
-         * A car glass is a good exemple of that. When sun reflects on it you can not see what is behind.
-         */
-        useSpecularOverAlpha: boolean;
-        /**
-         * Specifies if the reflectivity texture contains the glossiness information in its alpha channel.
-         */
-        useMicroSurfaceFromReflectivityMapAlpha: boolean;
-        /**
-         * In case the reflectivity map does not contain the microsurface information in its alpha channel,
-         * The material will try to infer what glossiness each pixel should be.
-         */
-        useAutoMicroSurfaceFromReflectivityMap: boolean;
-        /**
-         * Allows to work with scalar in linear mode. This is definitely a matter of preferences and tools used during
-         * the creation of the material.
-         */
-        useScalarInLinearSpace: boolean;
-        /**
-         * BJS is using an harcoded light falloff based on a manually sets up range.
-         * In PBR, one way to represents the fallof is to use the inverse squared root algorythm.
-         * This parameter can help you switch back to the BJS mode in order to create scenes using both materials.
-         */
-        usePhysicalLightFalloff: boolean;
-        /**
-         * Specifies that the material will keeps the reflection highlights over a transparent surface (only the most limunous ones).
-         * A car glass is a good exemple of that. When the street lights reflects on it you can not see what is behind.
-         */
-        useRadianceOverAlpha: boolean;
-        /**
-         * Allows using the bump map in parallax mode.
-         */
-        useParallax: boolean;
-        /**
-         * Allows using the bump map in parallax occlusion mode.
-         */
-        useParallaxOcclusion: boolean;
-        /**
-         * Controls the scale bias of the parallax mode.
-         */
-        parallaxScaleBias: number;
-        disableLighting: boolean;
-        private _renderTargets;
-        private _worldViewProjectionMatrix;
-        private _globalAmbientColor;
-        private _tempColor;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        private _useLogarithmicDepth;
-        /**
-         * Instantiates a new PBRMaterial instance.
-         *
-         * @param name The material name
-         * @param scene The scene the material will be use in.
-         */
-        constructor(name: string, scene: Scene);
-        useLogarithmicDepth: boolean;
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        private _shouldUseAlphaFromAlbedoTexture();
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        private convertColorToLinearSpaceToRef(color, ref);
-        private static convertColorToLinearSpaceToRef(color, ref, useScalarInLinear);
-        private static _scaledAlbedo;
-        private static _scaledReflectivity;
-        private static _scaledEmissive;
-        private static _scaledReflection;
-        private static _lightRadiuses;
-        static BindLights(scene: Scene, mesh: AbstractMesh, effect: Effect, defines: MaterialDefines, useScalarInLinearSpace: boolean): void;
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        unbind(): void;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        private _myScene;
-        private _myShadowGenerator;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): PBRMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): PBRMaterial;
-    }
-}

+ 0 - 27
materialsLibrary/dist/dts/babylon.simpleMaterial.d.ts

@@ -1,27 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class SimpleMaterial extends Material {
-        diffuseTexture: BaseTexture;
-        diffuseColor: Color3;
-        disableLighting: boolean;
-        maxSimultaneousLights: number;
-        private _worldViewProjectionMatrix;
-        private _scaledDiffuse;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): SimpleMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): SimpleMaterial;
-    }
-}

+ 0 - 32
materialsLibrary/dist/dts/babylon.skyMaterial.d.ts

@@ -1,32 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class SkyMaterial extends Material {
-        luminance: number;
-        turbidity: number;
-        rayleigh: number;
-        mieCoefficient: number;
-        mieDirectionalG: number;
-        distance: number;
-        inclination: number;
-        azimuth: number;
-        sunPosition: Vector3;
-        useSunPosition: boolean;
-        private _cameraPosition;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): SkyMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): SkyMaterial;
-    }
-}

+ 0 - 34
materialsLibrary/dist/dts/babylon.terrainMaterial.d.ts

@@ -1,34 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class TerrainMaterial extends Material {
-        mixTexture: BaseTexture;
-        diffuseTexture1: Texture;
-        diffuseTexture2: Texture;
-        diffuseTexture3: Texture;
-        bumpTexture1: Texture;
-        bumpTexture2: Texture;
-        bumpTexture3: Texture;
-        diffuseColor: Color3;
-        specularColor: Color3;
-        specularPower: number;
-        disableLighting: boolean;
-        maxSimultaneousLights: number;
-        private _worldViewProjectionMatrix;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): TerrainMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): TerrainMaterial;
-    }
-}

+ 0 - 35
materialsLibrary/dist/dts/babylon.triPlanarMaterial.d.ts

@@ -1,35 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-declare module BABYLON {
-    class TriPlanarMaterial extends Material {
-        mixTexture: BaseTexture;
-        diffuseTextureX: Texture;
-        diffuseTextureY: Texture;
-        diffuseTextureZ: Texture;
-        normalTextureX: Texture;
-        normalTextureY: Texture;
-        normalTextureZ: Texture;
-        tileSize: number;
-        diffuseColor: Color3;
-        specularColor: Color3;
-        specularPower: number;
-        disableLighting: boolean;
-        maxSimultaneousLights: number;
-        private _worldViewProjectionMatrix;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        constructor(name: string, scene: Scene);
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): TriPlanarMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): TriPlanarMaterial;
-    }
-}

+ 0 - 100
materialsLibrary/dist/dts/babylon.waterMaterial.d.ts

@@ -1,100 +0,0 @@
-/// <reference path="../../../dist/preview release/babylon.d.ts" />
-/// <reference path="../simple/babylon.simpleMaterial.d.ts" />
-declare module BABYLON {
-    class WaterMaterial extends Material {
-        renderTargetSize: Vector2;
-        bumpTexture: BaseTexture;
-        diffuseColor: Color3;
-        specularColor: Color3;
-        specularPower: number;
-        disableLighting: boolean;
-        maxSimultaneousLights: number;
-        /**
-        * @param {number}: Represents the wind force
-        */
-        windForce: number;
-        /**
-        * @param {Vector2}: The direction of the wind in the plane (X, Z)
-        */
-        windDirection: Vector2;
-        /**
-        * @param {number}: Wave height, represents the height of the waves
-        */
-        waveHeight: number;
-        /**
-        * @param {number}: Bump height, represents the bump height related to the bump map
-        */
-        bumpHeight: number;
-        /**
-         * @param {boolean}: Add a smaller moving bump to less steady waves.
-         */
-        bumpSuperimpose: boolean;
-        /**
-         * @param {boolean}: Color refraction and reflection differently with .waterColor2 and .colorBlendFactor2. Non-linear (physically correct) fresnel.
-         */
-        fresnelSeparate: boolean;
-        /**
-         * @param {boolean}: bump Waves modify the reflection.
-         */
-        bumpAffectsReflection: boolean;
-        /**
-        * @param {number}: The water color blended with the refraction (near)
-        */
-        waterColor: Color3;
-        /**
-        * @param {number}: The blend factor related to the water color
-        */
-        colorBlendFactor: number;
-        /**
-         * @param {number}: The water color blended with the reflection (far)
-         */
-        waterColor2: Color3;
-        /**
-         * @param {number}: The blend factor related to the water color (reflection, far)
-         */
-        colorBlendFactor2: number;
-        /**
-        * @param {number}: Represents the maximum length of a wave
-        */
-        waveLength: number;
-        /**
-        * @param {number}: Defines the waves speed
-        */
-        waveSpeed: number;
-        private _mesh;
-        private _refractionRTT;
-        private _reflectionRTT;
-        private _material;
-        private _reflectionTransform;
-        private _lastTime;
-        private _renderId;
-        private _defines;
-        private _cachedDefines;
-        private _useLogarithmicDepth;
-        /**
-        * Constructor
-        */
-        constructor(name: string, scene: Scene, renderTargetSize?: Vector2);
-        useLogarithmicDepth: boolean;
-        refractionTexture: RenderTargetTexture;
-        reflectionTexture: RenderTargetTexture;
-        addToRenderList(node: any): void;
-        enableRenderTargets(enable: boolean): void;
-        getRenderList(): AbstractMesh[];
-        renderTargetsEnabled: boolean;
-        needAlphaBlending(): boolean;
-        needAlphaTesting(): boolean;
-        getAlphaTestTexture(): BaseTexture;
-        private _checkCache(scene, mesh?, useInstances?);
-        isReady(mesh?: AbstractMesh, useInstances?: boolean): boolean;
-        bindOnlyWorldMatrix(world: Matrix): void;
-        bind(world: Matrix, mesh?: Mesh): void;
-        private _createRenderTargets(scene, renderTargetSize);
-        getAnimatables(): IAnimatable[];
-        dispose(forceDisposeEffect?: boolean): void;
-        clone(name: string): WaterMaterial;
-        serialize(): any;
-        static Parse(source: any, scene: Scene, rootUrl: string): WaterMaterial;
-        static CreateDefaultMesh(name: string, scene: Scene): Mesh;
-    }
-}

+ 0 - 97
materialsLibrary/gulp-removeShaderComments.js

@@ -1,97 +0,0 @@
-'use strict';
-
-var through = require('through2');
-var PluginError = require('gulp-util').PluginError;
-var singleComment = 1;
-var multiComment = 2;
-
-function uncomment(str, opts) {
-    opts = opts || {};
-
-	var currentChar;
-	var nextChar;
-	var insideString = false;
-	var insideComment = 0;
-	var offset = 0;
-	var ret = '';
-
-    str = str.replace(/\r\n/g, '\n');
-    str = str.replace(/[ \f\t\v]+/g, ' ');
-    str = str.replace(/^\s*\n/gm, '');
-    str = str.replace(/ \+ /g, '+');
-    str = str.replace(/ \- /g, '-');
-    str = str.replace(/ \/ /g, '/');
-    str = str.replace(/ \* /g, '*');
-    str = str.replace(/ > /g, '>');
-    str = str.replace(/ < /g, '<');
-    str = str.replace(/ >= /g, '>=');
-    str = str.replace(/ <= /g, '<=');
-    str = str.replace(/ \+= /g, '+=');
-    str = str.replace(/ \-= /g, '-=');
-    str = str.replace(/ \/= /g, '/=');
-    str = str.replace(/ \*= /g, '*=');
-    str = str.replace(/ = /g, '=');
-    str = str.replace(/, /g, ',');
-    str = str.replace(/\n\n/g, '\n');
-    str = str.replace(/\n /g, '\n');
-    
-	for (var i = 0; i < str.length; i++) {
-		currentChar = str[i];
-		nextChar = str[i + 1];
-
-		if (!insideComment && currentChar === '"') {
-			var escaped = str[i - 1] === '\\' && str[i - 2] !== '\\';
-			if (!escaped) {
-				insideString = !insideString;
-			}
-		}
-
-		if (insideString) {
-			continue;
-		}
-
-		if (!insideComment && currentChar + nextChar === '//') {
-			ret += str.slice(offset, i);
-			offset = i;
-			insideComment = singleComment;
-			i++;
-		} else if (insideComment === singleComment && currentChar === '\n') {
-			insideComment = 0;
-			offset = i;
-		} else if (!insideComment && currentChar + nextChar === '/*') {
-			ret += str.slice(offset, i);
-			offset = i;
-			insideComment = multiComment;
-			i++;
-			continue;
-		} else if (insideComment === multiComment && currentChar + nextChar === '*/') {
-			i++;
-			insideComment = 0;
-			offset = i + 1;
-			continue;
-		}
-	}
-
-	return ret + (insideComment ? '' : str.substr(offset));
-}
-
-function gulpUncomment(options) {
-    return main(options, uncomment);
-}
-
-function main(options, func) {
-    return through.obj(function (file, enc, cb) {
-        if (file.isNull()) {
-            cb(null, file);
-            return;
-        }
-        if (file.isStream()) {
-            cb(new PluginError("Remove Shader Comments", "Streaming not supported."));
-        }
-        file.contents = new Buffer(func(file.contents.toString(), options));
-        this.push(file);
-        return cb();
-    });
-}
-
-module.exports = gulpUncomment;

+ 0 - 97
materialsLibrary/gulpfile.js

@@ -1,97 +0,0 @@
-var gulp = require("gulp");
-var typescript = require("gulp-typescript");
-var srcToVariable = require("./gulp-srcToVariable");
-var merge2 = require("merge2");
-var concat = require("gulp-concat");
-var rename = require("gulp-rename");
-var cleants = require('gulp-clean-ts-extends');
-var replace = require("gulp-replace");
-var webserver = require('gulp-webserver');
-var uglify = require("gulp-uglify");
-var uncommentShader = require("./gulp-removeShaderComments");
-
-var config = require("./config.json");
-var extendsSearchRegex = /var\s__extends[\s\S]+?\};/g;
-
-//function to convert the shaders' filenames to variable names.
-function shadersName(filename) {
-    return filename.replace('.fragment', 'Pixel')
-      .replace('.vertex', 'Vertex')
-      .replace('.fx', 'Shader');
-}
-
-function includeShadersName(filename) {
-    return filename.replace('.fx', '');
-}
-
-gulp.task('copyReference', function () {
-    return gulp.src("../dist/preview release/babylon.max.js").pipe(gulp.dest("test/refs"));
-});
-
-/*
-Compiles all typescript files and creating a declaration file.
-*/
-gulp.task('default', ["copyReference"], function () {
-    var tasks = config.materials.map(function (material) {
-        var compilOutput = gulp.src(material.file)
-            .pipe(typescript({
-                noExternalResolve: false,
-                target: 'ES5',
-                declarationFiles: true,
-                typescript: require('typescript'),
-                experimentalDecorators: true
-            }));
-
-        var js = compilOutput.js;
-        
-        var dts = [];
-        if (material.declarationFilename) {
-            // Build definitions file
-            dts = compilOutput.dts
-                .pipe(concat(material.declarationFilename))
-                .pipe(gulp.dest(config.build.dtsOutputDirectory));
-        }
-        else {
-            // Build definitions file
-            dts = compilOutput.dts
-                .pipe(gulp.dest(config.build.dtsOutputDirectory));
-        }
-        
-        var shader = gulp.src(material.shaderFiles)
-                .pipe(uncommentShader())
-                .pipe(srcToVariable("BABYLON.Effect.ShadersStore", true, shadersName));
-
-        if (!material.referenceFiles) {
-            material.referenceFiles = [];
-        }
-        
-        var includeShader = gulp.src(material.referenceFiles)
-            .pipe(uncommentShader())
-            .pipe(srcToVariable("BABYLON.Effect.IncludesShadersStore", true, includeShadersName));
-        
-        return merge2(js, shader, includeShader)
-            .pipe(cleants())
-            .pipe(replace(extendsSearchRegex, ""))
-            .pipe(concat(material.output))
-            .pipe(gulp.dest(config.build.distOutputDirectory))
-            .pipe(rename({extname: ".min.js"}))
-            .pipe(uglify())
-            .pipe(gulp.dest(config.build.distOutputDirectory));
-    });
-
-    return tasks;
-});
-
-/**
- * Web server task to serve a local test page
- */
-gulp.task('webserver', function() {
-  gulp.src('.')
-    .pipe(webserver({
-      livereload: false,
-      open: 'http://localhost:1338/test/index.html',
-      port: 1338,
-      fallback: 'index.html'
-    }));
-});
-

+ 30 - 30
materialsLibrary/test/index.html

@@ -2,19 +2,19 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 	<title>Shaders Library</title>
-	<script src="refs/dat.gui.min.js"></script>
-	<script src="refs/babylon.max.js"></script>
-	<script src="../dist/babylon.simpleMaterial.js"></script>
-	<script src="../dist/babylon.normalMaterial.js"></script>
-	<script src="../dist/babylon.waterMaterial.js"></script>
-	<script src="../dist/babylon.fireMaterial.js"></script>
-    <script src="../dist/babylon.lavaMaterial.js"></script>
-	<script src="../dist/babylon.terrainMaterial.js"></script>
-	<script src="../dist/babylon.furMaterial.js"></script>
-	<script src="../dist/babylon.triPlanarMaterial.js"></script>
-	<script src="../dist/babylon.gradientMaterial.js"></script>
-	<script src="../dist/babylon.skyMaterial.js"></script>
-	<script src="../dist/babylon.gridMaterial.js"></script>
+	<script src="../assets/refs/dat.gui.min.js"></script>
+	<script src="../dist/preview release/babylon.max.js"></script>
+	<script src="../dist/materialsLibrary/babylon.simpleMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.normalMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.waterMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.fireMaterial.js"></script>
+    <script src="../dist/materialsLibrary/babylon.lavaMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.terrainMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.furMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.triPlanarMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.gradientMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.skyMaterial.js"></script>
+	<script src="../dist/materialsLibrary/babylon.gridMaterial.js"></script>
 
 	<style>
 		html, body {
@@ -48,18 +48,18 @@
 	<div id="fps">0</div>
 	<canvas id="renderCanvas"></canvas>
 
-	<script src="index.js"></script>
-    <script src="add/addlava.js"></script>
-    <script src="add/addnormal.js"></script>
-	<script src="add/addwater.js"></script>
-	<script src="add/addfur.js"></script>
-	<script src="add/addterrain.js"></script>
-	<script src="add/addfire.js"></script>
-	<script src="add/addtriplanar.js"></script>
-	<script src="add/addgradient.js"></script>
-	<script src="add/addsky.js"></script>
-	<script src="add/addgrid.js"></script>
-    <script src="add/addpbr.js"></script>
+	<script src="test/index.js"></script>
+    <script src="test/addlava.js"></script>
+    <script src="test/addnormal.js"></script>
+	<script src="test/addwater.js"></script>
+	<script src="test/addfur.js"></script>
+	<script src="test/addterrain.js"></script>
+	<script src="test/addfire.js"></script>
+	<script src="test/addtriplanar.js"></script>
+	<script src="test/addgradient.js"></script>
+	<script src="test/addsky.js"></script>
+	<script src="test/addgrid.js"></script>
+    <script src="test/addpbr.js"></script>
 	
 	<script>
 		if (BABYLON.Engine.isSupported()) {
@@ -95,14 +95,14 @@
 			var knot = BABYLON.Mesh.CreateTorusKnot("knot", 10, 3, 128, 64, 2, 3, scene);
 			knot.setEnabled(false);
 			
-			var heightMap = BABYLON.Mesh.CreateGroundFromHeightMap("heightMap", "textures/heightMap.png", 100, 100, 100, 0, 10, scene, false);
+			var heightMap = BABYLON.Mesh.CreateGroundFromHeightMap("heightMap", "../assets/textures/heightMap.png", 100, 100, 100, 0, 10, scene, false);
 			heightMap.setEnabled(false);
 			
 			// Skybox
 			var skybox = BABYLON.Mesh.CreateBox("skyBox", 1000.0, scene);
 			var skyboxMaterial = new BABYLON.StandardMaterial("skyBox", scene);
 			skyboxMaterial.backFaceCulling = false;
-			skyboxMaterial.reflectionTexture = new BABYLON.CubeTexture("textures/skybox/TropicalSunnyDay", scene);
+			skyboxMaterial.reflectionTexture = new BABYLON.CubeTexture("../assets/textures/skybox/TropicalSunnyDay", scene);
 			skyboxMaterial.reflectionTexture.coordinatesMode = BABYLON.Texture.SKYBOX_MODE;
 			skyboxMaterial.diffuseColor = new BABYLON.Color3(0, 0, 0);
 			skyboxMaterial.specularColor = new BABYLON.Color3(0, 0, 0);
@@ -114,7 +114,7 @@
 
 			// Rabbit
 			var rabbit;
-			BABYLON.SceneLoader.ImportMesh("Rabbit", "meshes/", "Rabbit.babylon", scene, function (newMeshes, particleSystems, skeletons) {
+			BABYLON.SceneLoader.ImportMesh("Rabbit", "../assets/meshes/", "Rabbit.babylon", scene, function (newMeshes, particleSystems, skeletons) {
 				rabbit = newMeshes[1];
 				rabbit.setEnabled(false);
 				rabbit.scaling = new BABYLON.Vector3(0.3, 0.3, 0.3);
@@ -172,7 +172,7 @@
 				
 				// Create shaders
 				var std = new BABYLON.StandardMaterial("std", scene);
-				std.diffuseTexture = new BABYLON.Texture("textures/amiga.jpg", scene);
+				std.diffuseTexture = new BABYLON.Texture("../assets/textures/amiga.jpg", scene);
 				std.diffuseTexture.uScale = 5;
 				std.diffuseTexture.vScale = 5;
 
@@ -180,7 +180,7 @@
                 var lava = prepareLava();
 
 				var simple = new BABYLON.SimpleMaterial("simple", scene);
-				simple.diffuseTexture = new BABYLON.Texture("textures/amiga.jpg", scene);
+				simple.diffuseTexture = new BABYLON.Texture("../assets/textures/amiga.jpg", scene);
 				simple.diffuseTexture.uScale = 5;
 				simple.diffuseTexture.vScale = 5;
 

+ 0 - 23
materialsLibrary/package.json

@@ -1,23 +0,0 @@
-{
-  "name": "BabylonJS_ShadersLibrary",
-  "version": "2.3.0",
-  "description": "Shaders library for Babylon.js",
-  "main": "",
-  "repository": { "url": "https://github.com/BabylonJS/Babylon.js/" },
-  "readme": "https://github.com/BabylonJS/Babylon.js/edit/master/readme.md",
-  "license": "(Apache-2.0)",
-  "devDependencies": {
-    "gulp": "^3.8.11",
-    "gulp-uglify": "~1.4.2",
-    "typescript": "~1.6.2",
-    "gulp-typescript": "~2.9.0",
-    "through2": "~0.6.5",
-    "gulp-util": "~3.0.4",
-    "gulp-concat": "~2.6.0",
-    "merge2": "~0.3.5",
-    "gulp-rename": "~1.2.2",
-    "gulp-clean-ts-extends": "~0.1.1",
-    "gulp-replace": "~0.5.3",
-    "gulp-webserver": "^0.9.1"
-  }
-}

materialsLibrary/materials/fire/babylon.fireMaterial.ts → materialsLibrary/src/fire/babylon.fireMaterial.ts


materialsLibrary/materials/fire/fire.fragment.fx → materialsLibrary/src/fire/fire.fragment.fx


materialsLibrary/materials/fire/fire.vertex.fx → materialsLibrary/src/fire/fire.vertex.fx


materialsLibrary/materials/fur/babylon.furMaterial.ts → materialsLibrary/src/fur/babylon.furMaterial.ts


materialsLibrary/materials/fur/fur.fragment.fx → materialsLibrary/src/fur/fur.fragment.fx


materialsLibrary/materials/fur/fur.vertex.fx → materialsLibrary/src/fur/fur.vertex.fx


materialsLibrary/materials/fur/readme.md → materialsLibrary/src/fur/readme.md


materialsLibrary/materials/gradient/babylon.gradientMaterial.ts → materialsLibrary/src/gradient/babylon.gradientMaterial.ts


materialsLibrary/materials/gradient/gradient.fragment.fx → materialsLibrary/src/gradient/gradient.fragment.fx


materialsLibrary/materials/gradient/gradient.vertex.fx → materialsLibrary/src/gradient/gradient.vertex.fx


materialsLibrary/materials/grid/babylon.gridmaterial.ts → materialsLibrary/src/grid/babylon.gridmaterial.ts


materialsLibrary/materials/grid/grid.fragment.fx → materialsLibrary/src/grid/grid.fragment.fx


materialsLibrary/materials/grid/grid.vertex.fx → materialsLibrary/src/grid/grid.vertex.fx


materialsLibrary/materials/grid/legacygrid.fragment.fx → materialsLibrary/src/grid/legacygrid.fragment.fx


materialsLibrary/materials/grid/legacygrid.vertex.fx → materialsLibrary/src/grid/legacygrid.vertex.fx


materialsLibrary/materials/lava/babylon.lavaMaterial.ts → materialsLibrary/src/lava/babylon.lavaMaterial.ts


materialsLibrary/materials/lava/lava.fragment.fx → materialsLibrary/src/lava/lava.fragment.fx


materialsLibrary/materials/lava/lava.vertex.fx → materialsLibrary/src/lava/lava.vertex.fx


materialsLibrary/materials/normal/babylon.normalMaterial.ts → materialsLibrary/src/normal/babylon.normalMaterial.ts


materialsLibrary/materials/normal/normal.fragment.fx → materialsLibrary/src/normal/normal.fragment.fx


materialsLibrary/materials/normal/normal.vertex.fx → materialsLibrary/src/normal/normal.vertex.fx


materialsLibrary/materials/simple/babylon.simpleMaterial.ts → materialsLibrary/src/simple/babylon.simpleMaterial.ts


materialsLibrary/materials/simple/simple.fragment.fx → materialsLibrary/src/simple/simple.fragment.fx


materialsLibrary/materials/simple/simple.vertex.fx → materialsLibrary/src/simple/simple.vertex.fx


materialsLibrary/materials/sky/babylon.skyMaterial.ts → materialsLibrary/src/sky/babylon.skyMaterial.ts


materialsLibrary/materials/sky/sky.fragment.fx → materialsLibrary/src/sky/sky.fragment.fx


+ 0 - 0
materialsLibrary/materials/sky/sky.vertex.fx


Некоторые файлы не были показаны из-за большого количества измененных файлов