@babylonjs/materials 5.21.0 → 5.22.0
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.
- package/cell/cell.fragment.js +14 -2
- package/cell/cell.fragment.js.map +1 -1
- package/cell/cell.vertex.js +45 -3
- package/cell/cell.vertex.js.map +1 -1
- package/cell/cellMaterial.js +112 -120
- package/cell/cellMaterial.js.map +1 -1
- package/custom/customMaterial.js +69 -81
- package/custom/customMaterial.js.map +1 -1
- package/custom/pbrCustomMaterial.js +80 -89
- package/custom/pbrCustomMaterial.js.map +1 -1
- package/fire/fire.fragment.js +44 -3
- package/fire/fire.fragment.js.map +1 -1
- package/fire/fire.vertex.js +54 -3
- package/fire/fire.vertex.js.map +1 -1
- package/fire/fireMaterial.js +101 -109
- package/fire/fireMaterial.js.map +1 -1
- package/fur/fur.fragment.js +67 -3
- package/fur/fur.fragment.js.map +1 -1
- package/fur/fur.vertex.js +97 -3
- package/fur/fur.vertex.js.map +1 -1
- package/fur/furMaterial.js +181 -193
- package/fur/furMaterial.js.map +1 -1
- package/gradient/gradient.fragment.js +36 -3
- package/gradient/gradient.fragment.js.map +1 -1
- package/gradient/gradient.vertex.js +41 -3
- package/gradient/gradient.vertex.js.map +1 -1
- package/gradient/gradientMaterial.js +113 -121
- package/gradient/gradientMaterial.js.map +1 -1
- package/grid/grid.fragment.js +8 -2
- package/grid/grid.fragment.js.map +1 -1
- package/grid/grid.vertex.js +22 -3
- package/grid/grid.vertex.js.map +1 -1
- package/grid/gridMaterial.js +93 -101
- package/grid/gridMaterial.js.map +1 -1
- package/lava/lava.fragment.js +62 -3
- package/lava/lava.fragment.js.map +1 -1
- package/lava/lava.vertex.js +84 -3
- package/lava/lava.vertex.js.map +1 -1
- package/lava/lavaMaterial.js +175 -183
- package/lava/lavaMaterial.js.map +1 -1
- package/legacy/legacy-cell.js +2 -2
- package/legacy/legacy-cell.js.map +1 -1
- package/legacy/legacy-custom.js +2 -2
- package/legacy/legacy-custom.js.map +1 -1
- package/legacy/legacy-fire.js +2 -2
- package/legacy/legacy-fire.js.map +1 -1
- package/legacy/legacy-fur.js +2 -2
- package/legacy/legacy-fur.js.map +1 -1
- package/legacy/legacy-gradient.js +2 -2
- package/legacy/legacy-gradient.js.map +1 -1
- package/legacy/legacy-grid.js +2 -2
- package/legacy/legacy-grid.js.map +1 -1
- package/legacy/legacy-lava.js +2 -2
- package/legacy/legacy-lava.js.map +1 -1
- package/legacy/legacy-mix.js +2 -2
- package/legacy/legacy-mix.js.map +1 -1
- package/legacy/legacy-normal.js +2 -2
- package/legacy/legacy-normal.js.map +1 -1
- package/legacy/legacy-shadowOnly.js +2 -2
- package/legacy/legacy-shadowOnly.js.map +1 -1
- package/legacy/legacy-simple.js +2 -2
- package/legacy/legacy-simple.js.map +1 -1
- package/legacy/legacy-sky.js +2 -2
- package/legacy/legacy-sky.js.map +1 -1
- package/legacy/legacy-terrain.js +2 -2
- package/legacy/legacy-terrain.js.map +1 -1
- package/legacy/legacy-triPlanar.js +2 -2
- package/legacy/legacy-triPlanar.js.map +1 -1
- package/legacy/legacy-water.js +2 -2
- package/legacy/legacy-water.js.map +1 -1
- package/legacy/legacy.js +2 -2
- package/legacy/legacy.js.map +1 -1
- package/mix/mix.fragment.js +33 -2
- package/mix/mix.fragment.js.map +1 -1
- package/mix/mix.vertex.js +67 -3
- package/mix/mix.vertex.js.map +1 -1
- package/mix/mixMaterial.js +166 -174
- package/mix/mixMaterial.js.map +1 -1
- package/normal/normal.fragment.js +41 -3
- package/normal/normal.fragment.js.map +1 -1
- package/normal/normal.vertex.js +42 -3
- package/normal/normal.vertex.js.map +1 -1
- package/normal/normalMaterial.js +143 -151
- package/normal/normalMaterial.js.map +1 -1
- package/package.json +2 -5
- package/shadowOnly/shadowOnly.fragment.js +21 -3
- package/shadowOnly/shadowOnly.fragment.js.map +1 -1
- package/shadowOnly/shadowOnly.vertex.js +30 -3
- package/shadowOnly/shadowOnly.vertex.js.map +1 -1
- package/shadowOnly/shadowOnlyMaterial.js +73 -89
- package/shadowOnly/shadowOnlyMaterial.js.map +1 -1
- package/simple/simple.fragment.js +36 -3
- package/simple/simple.fragment.js.map +1 -1
- package/simple/simple.vertex.js +45 -3
- package/simple/simple.vertex.js.map +1 -1
- package/simple/simpleMaterial.js +102 -110
- package/simple/simpleMaterial.js.map +1 -1
- package/sky/sky.fragment.js +17 -3
- package/sky/sky.fragment.js.map +1 -1
- package/sky/sky.vertex.js +20 -3
- package/sky/sky.vertex.js.map +1 -1
- package/sky/skyMaterial.js +111 -119
- package/sky/skyMaterial.js.map +1 -1
- package/terrain/terrain.fragment.js +36 -2
- package/terrain/terrain.fragment.js.map +1 -1
- package/terrain/terrain.vertex.js +67 -3
- package/terrain/terrain.vertex.js.map +1 -1
- package/terrain/terrainMaterial.js +148 -156
- package/terrain/terrainMaterial.js.map +1 -1
- package/triPlanar/triPlanarMaterial.js +157 -165
- package/triPlanar/triPlanarMaterial.js.map +1 -1
- package/triPlanar/triplanar.fragment.js +64 -3
- package/triPlanar/triplanar.fragment.js.map +1 -1
- package/triPlanar/triplanar.vertex.js +45 -3
- package/triPlanar/triplanar.vertex.js.map +1 -1
- package/water/water.fragment.js +83 -3
- package/water/water.fragment.js.map +1 -1
- package/water/water.vertex.js +56 -3
- package/water/water.vertex.js.map +1 -1
- package/water/waterMaterial.js +283 -313
- package/water/waterMaterial.js.map +1 -1
package/fur/furMaterial.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { __decorate
|
1
|
+
import { __decorate } from "@babylonjs/core/tslib.es6.js";
|
2
2
|
import { serializeAsVector3, serializeAsTexture, serialize, expandToProperty, serializeAsColor3, SerializationHelper } from "@babylonjs/core/Misc/decorators.js";
|
3
3
|
import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
|
4
4
|
import { Color3 } from "@babylonjs/core/Maths/math.color.js";
|
@@ -15,81 +15,72 @@ import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
15
15
|
import { EffectFallbacks } from "@babylonjs/core/Materials/effectFallbacks.js";
|
16
16
|
import "./fur.fragment.js";
|
17
17
|
import "./fur.vertex.js";
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
_this.rebuild();
|
47
|
-
return _this;
|
18
|
+
class FurMaterialDefines extends MaterialDefines {
|
19
|
+
constructor() {
|
20
|
+
super();
|
21
|
+
this.DIFFUSE = false;
|
22
|
+
this.HEIGHTMAP = false;
|
23
|
+
this.CLIPPLANE = false;
|
24
|
+
this.CLIPPLANE2 = false;
|
25
|
+
this.CLIPPLANE3 = false;
|
26
|
+
this.CLIPPLANE4 = false;
|
27
|
+
this.CLIPPLANE5 = false;
|
28
|
+
this.CLIPPLANE6 = false;
|
29
|
+
this.ALPHATEST = false;
|
30
|
+
this.DEPTHPREPASS = false;
|
31
|
+
this.POINTSIZE = false;
|
32
|
+
this.FOG = false;
|
33
|
+
this.NORMAL = false;
|
34
|
+
this.UV1 = false;
|
35
|
+
this.UV2 = false;
|
36
|
+
this.VERTEXCOLOR = false;
|
37
|
+
this.VERTEXALPHA = false;
|
38
|
+
this.NUM_BONE_INFLUENCERS = 0;
|
39
|
+
this.BonesPerMesh = 0;
|
40
|
+
this.INSTANCES = false;
|
41
|
+
this.INSTANCESCOLOR = false;
|
42
|
+
this.HIGHLEVEL = false;
|
43
|
+
this.IMAGEPROCESSINGPOSTPROCESS = false;
|
44
|
+
this.SKIPFINALCOLORCLAMP = false;
|
45
|
+
this.rebuild();
|
48
46
|
}
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
_this.highLevelFur = true;
|
68
|
-
_this._furTime = 0;
|
69
|
-
return _this;
|
47
|
+
}
|
48
|
+
export class FurMaterial extends PushMaterial {
|
49
|
+
constructor(name, scene) {
|
50
|
+
super(name, scene);
|
51
|
+
this.diffuseColor = new Color3(1, 1, 1);
|
52
|
+
this.furLength = 1;
|
53
|
+
this.furAngle = 0;
|
54
|
+
this.furColor = new Color3(0.44, 0.21, 0.02);
|
55
|
+
this.furOffset = 0.0;
|
56
|
+
this.furSpacing = 12;
|
57
|
+
this.furGravity = new Vector3(0, 0, 0);
|
58
|
+
this.furSpeed = 100;
|
59
|
+
this.furDensity = 20;
|
60
|
+
this.furOcclusion = 0.0;
|
61
|
+
this._disableLighting = false;
|
62
|
+
this._maxSimultaneousLights = 4;
|
63
|
+
this.highLevelFur = true;
|
64
|
+
this._furTime = 0;
|
70
65
|
}
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
enumerable: false,
|
79
|
-
configurable: true
|
80
|
-
});
|
81
|
-
FurMaterial.prototype.needAlphaBlending = function () {
|
66
|
+
get furTime() {
|
67
|
+
return this._furTime;
|
68
|
+
}
|
69
|
+
set furTime(furTime) {
|
70
|
+
this._furTime = furTime;
|
71
|
+
}
|
72
|
+
needAlphaBlending() {
|
82
73
|
return this.alpha < 1.0;
|
83
|
-
}
|
84
|
-
|
74
|
+
}
|
75
|
+
needAlphaTesting() {
|
85
76
|
return false;
|
86
|
-
}
|
87
|
-
|
77
|
+
}
|
78
|
+
getAlphaTestTexture() {
|
88
79
|
return null;
|
89
|
-
}
|
90
|
-
|
91
|
-
for (
|
92
|
-
|
80
|
+
}
|
81
|
+
updateFur() {
|
82
|
+
for (let i = 1; i < this._meshes.length; i++) {
|
83
|
+
const offsetFur = this._meshes[i].material;
|
93
84
|
offsetFur.furLength = this.furLength;
|
94
85
|
offsetFur.furAngle = this.furAngle;
|
95
86
|
offsetFur.furGravity = this.furGravity;
|
@@ -102,9 +93,9 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
102
93
|
offsetFur.furTime = this.furTime;
|
103
94
|
offsetFur.furDensity = this.furDensity;
|
104
95
|
}
|
105
|
-
}
|
96
|
+
}
|
106
97
|
// Methods
|
107
|
-
|
98
|
+
isReadyForSubMesh(mesh, subMesh, useInstances) {
|
108
99
|
if (this.isFrozen) {
|
109
100
|
if (subMesh.effect && subMesh.effect._wasPreviouslyReady && subMesh.effect._wasPreviouslyUsingInstances === useInstances) {
|
110
101
|
return true;
|
@@ -113,12 +104,12 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
113
104
|
if (!subMesh.materialDefines) {
|
114
105
|
subMesh.materialDefines = new FurMaterialDefines();
|
115
106
|
}
|
116
|
-
|
117
|
-
|
107
|
+
const defines = subMesh.materialDefines;
|
108
|
+
const scene = this.getScene();
|
118
109
|
if (this._isReadyForSubMesh(subMesh)) {
|
119
110
|
return true;
|
120
111
|
}
|
121
|
-
|
112
|
+
const engine = scene.getEngine();
|
122
113
|
// Textures
|
123
114
|
if (defines._areTexturesDirty) {
|
124
115
|
if (scene.texturesEnabled) {
|
@@ -160,7 +151,7 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
160
151
|
defines.markAsProcessed();
|
161
152
|
scene.resetCachedMaterial();
|
162
153
|
// Fallbacks
|
163
|
-
|
154
|
+
const fallbacks = new EffectFallbacks();
|
164
155
|
if (defines.FOG) {
|
165
156
|
fallbacks.addFallback(1, "FOG");
|
166
157
|
}
|
@@ -170,7 +161,7 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
170
161
|
}
|
171
162
|
defines.IMAGEPROCESSINGPOSTPROCESS = scene.imageProcessingConfiguration.applyByPostProcess;
|
172
163
|
//Attributes
|
173
|
-
|
164
|
+
const attribs = [VertexBuffer.PositionKind];
|
174
165
|
if (defines.NORMAL) {
|
175
166
|
attribs.push(VertexBuffer.NormalKind);
|
176
167
|
}
|
@@ -186,9 +177,9 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
186
177
|
MaterialHelper.PrepareAttributesForBones(attribs, mesh, defines, fallbacks);
|
187
178
|
MaterialHelper.PrepareAttributesForInstances(attribs, defines);
|
188
179
|
// Legacy browser patch
|
189
|
-
|
190
|
-
|
191
|
-
|
180
|
+
const shaderName = "fur";
|
181
|
+
const join = defines.toString();
|
182
|
+
const uniforms = [
|
192
183
|
"world",
|
193
184
|
"view",
|
194
185
|
"viewProjection",
|
@@ -217,8 +208,8 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
217
208
|
"furDensity",
|
218
209
|
"furOcclusion",
|
219
210
|
];
|
220
|
-
|
221
|
-
|
211
|
+
const samplers = ["diffuseSampler", "heightTexture", "furTexture"];
|
212
|
+
const uniformBuffers = new Array();
|
222
213
|
MaterialHelper.PrepareUniformsAndSamplersList({
|
223
214
|
uniformsNames: uniforms,
|
224
215
|
uniformBuffersNames: uniformBuffers,
|
@@ -245,14 +236,14 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
245
236
|
subMesh.effect._wasPreviouslyReady = true;
|
246
237
|
subMesh.effect._wasPreviouslyUsingInstances = !!useInstances;
|
247
238
|
return true;
|
248
|
-
}
|
249
|
-
|
250
|
-
|
251
|
-
|
239
|
+
}
|
240
|
+
bindForSubMesh(world, mesh, subMesh) {
|
241
|
+
const scene = this.getScene();
|
242
|
+
const defines = subMesh.materialDefines;
|
252
243
|
if (!defines) {
|
253
244
|
return;
|
254
245
|
}
|
255
|
-
|
246
|
+
const effect = subMesh.effect;
|
256
247
|
if (!effect) {
|
257
248
|
return;
|
258
249
|
}
|
@@ -304,9 +295,9 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
304
295
|
this._activeEffect.setTexture("furTexture", this.furTexture);
|
305
296
|
}
|
306
297
|
this._afterBind(mesh, this._activeEffect);
|
307
|
-
}
|
308
|
-
|
309
|
-
|
298
|
+
}
|
299
|
+
getAnimatables() {
|
300
|
+
const results = [];
|
310
301
|
if (this.diffuseTexture && this.diffuseTexture.animations && this.diffuseTexture.animations.length > 0) {
|
311
302
|
results.push(this.diffuseTexture);
|
312
303
|
}
|
@@ -314,9 +305,9 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
314
305
|
results.push(this.heightTexture);
|
315
306
|
}
|
316
307
|
return results;
|
317
|
-
}
|
318
|
-
|
319
|
-
|
308
|
+
}
|
309
|
+
getActiveTextures() {
|
310
|
+
const activeTextures = super.getActiveTextures();
|
320
311
|
if (this._diffuseTexture) {
|
321
312
|
activeTextures.push(this._diffuseTexture);
|
322
313
|
}
|
@@ -324,9 +315,9 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
324
315
|
activeTextures.push(this._heightTexture);
|
325
316
|
}
|
326
317
|
return activeTextures;
|
327
|
-
}
|
328
|
-
|
329
|
-
if (
|
318
|
+
}
|
319
|
+
hasTexture(texture) {
|
320
|
+
if (super.hasTexture(texture)) {
|
330
321
|
return true;
|
331
322
|
}
|
332
323
|
if (this.diffuseTexture === texture) {
|
@@ -336,58 +327,57 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
336
327
|
return true;
|
337
328
|
}
|
338
329
|
return false;
|
339
|
-
}
|
340
|
-
|
330
|
+
}
|
331
|
+
dispose(forceDisposeEffect) {
|
341
332
|
if (this.diffuseTexture) {
|
342
333
|
this.diffuseTexture.dispose();
|
343
334
|
}
|
344
335
|
if (this._meshes) {
|
345
|
-
for (
|
346
|
-
|
336
|
+
for (let i = 1; i < this._meshes.length; i++) {
|
337
|
+
const mat = this._meshes[i].material;
|
347
338
|
if (mat) {
|
348
339
|
mat.dispose(forceDisposeEffect);
|
349
340
|
}
|
350
341
|
this._meshes[i].dispose();
|
351
342
|
}
|
352
343
|
}
|
353
|
-
|
354
|
-
}
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
var serializationObject = _super.prototype.serialize.call(this);
|
344
|
+
super.dispose(forceDisposeEffect);
|
345
|
+
}
|
346
|
+
clone(name) {
|
347
|
+
return SerializationHelper.Clone(() => new FurMaterial(name, this.getScene()), this);
|
348
|
+
}
|
349
|
+
serialize() {
|
350
|
+
const serializationObject = super.serialize();
|
361
351
|
serializationObject.customType = "BABYLON.FurMaterial";
|
362
352
|
if (this._meshes) {
|
363
353
|
serializationObject.sourceMeshName = this._meshes[0].name;
|
364
354
|
serializationObject.quality = this._meshes.length;
|
365
355
|
}
|
366
356
|
return serializationObject;
|
367
|
-
}
|
368
|
-
|
357
|
+
}
|
358
|
+
getClassName() {
|
369
359
|
return "FurMaterial";
|
370
|
-
}
|
360
|
+
}
|
371
361
|
// Statics
|
372
|
-
|
373
|
-
|
362
|
+
static Parse(source, scene, rootUrl) {
|
363
|
+
const material = SerializationHelper.Parse(() => new FurMaterial(source.name, scene), source, scene, rootUrl);
|
374
364
|
if (source.sourceMeshName && material.highLevelFur) {
|
375
|
-
scene.executeWhenReady(
|
376
|
-
|
365
|
+
scene.executeWhenReady(() => {
|
366
|
+
const sourceMesh = scene.getMeshByName(source.sourceMeshName);
|
377
367
|
if (sourceMesh) {
|
378
|
-
|
368
|
+
const furTexture = FurMaterial.GenerateTexture("Fur Texture", scene);
|
379
369
|
material.furTexture = furTexture;
|
380
370
|
FurMaterial.FurifyMesh(sourceMesh, source.quality);
|
381
371
|
}
|
382
372
|
});
|
383
373
|
}
|
384
374
|
return material;
|
385
|
-
}
|
386
|
-
|
375
|
+
}
|
376
|
+
static GenerateTexture(name, scene) {
|
387
377
|
// Generate fur textures
|
388
|
-
|
389
|
-
|
390
|
-
for (
|
378
|
+
const texture = new DynamicTexture("FurTexture " + name, 256, scene, true);
|
379
|
+
const context = texture.getContext();
|
380
|
+
for (let i = 0; i < 20000; ++i) {
|
391
381
|
context.fillStyle = "rgba(255, " + Math.floor(Math.random() * 255) + ", " + Math.floor(Math.random() * 255) + ", 1)";
|
392
382
|
context.fillRect(Math.random() * texture.getSize().width, Math.random() * texture.getSize().height, 2, 2);
|
393
383
|
}
|
@@ -395,19 +385,19 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
395
385
|
texture.wrapU = Texture.WRAP_ADDRESSMODE;
|
396
386
|
texture.wrapV = Texture.WRAP_ADDRESSMODE;
|
397
387
|
return texture;
|
398
|
-
}
|
388
|
+
}
|
399
389
|
// Creates and returns an array of meshes used as shells for the Fur Material
|
400
390
|
// that can be disposed later in your code
|
401
391
|
// The quality is in interval [0, 100]
|
402
|
-
|
403
|
-
|
404
|
-
|
405
|
-
|
392
|
+
static FurifyMesh(sourceMesh, quality) {
|
393
|
+
const meshes = [sourceMesh];
|
394
|
+
const mat = sourceMesh.material;
|
395
|
+
let i;
|
406
396
|
if (!(mat instanceof FurMaterial)) {
|
407
397
|
throw "The material of the source mesh must be a Fur Material";
|
408
398
|
}
|
409
399
|
for (i = 1; i < quality; i++) {
|
410
|
-
|
400
|
+
const offsetFur = new FurMaterial(mat.name + i, sourceMesh.getScene());
|
411
401
|
sourceMesh.getScene().materials.pop();
|
412
402
|
Tags.EnableFor(offsetFur);
|
413
403
|
Tags.AddTagsTo(offsetFur, "furShellMaterial");
|
@@ -423,7 +413,7 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
423
413
|
offsetFur.highLevelFur = mat.highLevelFur;
|
424
414
|
offsetFur.furTime = mat.furTime;
|
425
415
|
offsetFur.furDensity = mat.furDensity;
|
426
|
-
|
416
|
+
const offsetMesh = sourceMesh.clone(sourceMesh.name + i);
|
427
417
|
offsetMesh.material = offsetFur;
|
428
418
|
offsetMesh.skeleton = sourceMesh.skeleton;
|
429
419
|
offsetMesh.position = Vector3.Zero();
|
@@ -434,69 +424,67 @@ var FurMaterial = /** @class */ (function (_super) {
|
|
434
424
|
}
|
435
425
|
sourceMesh.material._meshes = meshes;
|
436
426
|
return meshes;
|
437
|
-
}
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
}(PushMaterial));
|
500
|
-
export { FurMaterial };
|
427
|
+
}
|
428
|
+
}
|
429
|
+
__decorate([
|
430
|
+
serializeAsTexture("diffuseTexture")
|
431
|
+
], FurMaterial.prototype, "_diffuseTexture", void 0);
|
432
|
+
__decorate([
|
433
|
+
expandToProperty("_markAllSubMeshesAsTexturesDirty")
|
434
|
+
], FurMaterial.prototype, "diffuseTexture", void 0);
|
435
|
+
__decorate([
|
436
|
+
serializeAsTexture("heightTexture")
|
437
|
+
], FurMaterial.prototype, "_heightTexture", void 0);
|
438
|
+
__decorate([
|
439
|
+
expandToProperty("_markAllSubMeshesAsTexturesDirty")
|
440
|
+
], FurMaterial.prototype, "heightTexture", void 0);
|
441
|
+
__decorate([
|
442
|
+
serializeAsColor3()
|
443
|
+
], FurMaterial.prototype, "diffuseColor", void 0);
|
444
|
+
__decorate([
|
445
|
+
serialize()
|
446
|
+
], FurMaterial.prototype, "furLength", void 0);
|
447
|
+
__decorate([
|
448
|
+
serialize()
|
449
|
+
], FurMaterial.prototype, "furAngle", void 0);
|
450
|
+
__decorate([
|
451
|
+
serializeAsColor3()
|
452
|
+
], FurMaterial.prototype, "furColor", void 0);
|
453
|
+
__decorate([
|
454
|
+
serialize()
|
455
|
+
], FurMaterial.prototype, "furOffset", void 0);
|
456
|
+
__decorate([
|
457
|
+
serialize()
|
458
|
+
], FurMaterial.prototype, "furSpacing", void 0);
|
459
|
+
__decorate([
|
460
|
+
serializeAsVector3()
|
461
|
+
], FurMaterial.prototype, "furGravity", void 0);
|
462
|
+
__decorate([
|
463
|
+
serialize()
|
464
|
+
], FurMaterial.prototype, "furSpeed", void 0);
|
465
|
+
__decorate([
|
466
|
+
serialize()
|
467
|
+
], FurMaterial.prototype, "furDensity", void 0);
|
468
|
+
__decorate([
|
469
|
+
serialize()
|
470
|
+
], FurMaterial.prototype, "furOcclusion", void 0);
|
471
|
+
__decorate([
|
472
|
+
serialize("disableLighting")
|
473
|
+
], FurMaterial.prototype, "_disableLighting", void 0);
|
474
|
+
__decorate([
|
475
|
+
expandToProperty("_markAllSubMeshesAsLightsDirty")
|
476
|
+
], FurMaterial.prototype, "disableLighting", void 0);
|
477
|
+
__decorate([
|
478
|
+
serialize("maxSimultaneousLights")
|
479
|
+
], FurMaterial.prototype, "_maxSimultaneousLights", void 0);
|
480
|
+
__decorate([
|
481
|
+
expandToProperty("_markAllSubMeshesAsLightsDirty")
|
482
|
+
], FurMaterial.prototype, "maxSimultaneousLights", void 0);
|
483
|
+
__decorate([
|
484
|
+
serialize()
|
485
|
+
], FurMaterial.prototype, "highLevelFur", void 0);
|
486
|
+
__decorate([
|
487
|
+
serialize()
|
488
|
+
], FurMaterial.prototype, "furTime", null);
|
501
489
|
RegisterClass("BABYLON.FurMaterial", FurMaterial);
|
502
490
|
//# sourceMappingURL=furMaterial.js.map
|