소스 검색

Effect.effect returns the overriden effect existing, else _materialEffect

Popov72 5 년 전
부모
커밋
d2960d7c8c
4개의 변경된 파일4개의 추가작업 그리고 4개의 파일을 삭제
  1. 1 1
      src/Materials/PBR/pbrBaseMaterial.ts
  2. 1 1
      src/Materials/shaderMaterial.ts
  3. 1 1
      src/Materials/standardMaterial.ts
  4. 1 1
      src/Meshes/subMesh.ts

+ 1 - 1
src/Materials/PBR/pbrBaseMaterial.ts

@@ -1618,7 +1618,7 @@ export abstract class PBRBaseMaterial extends PushMaterial {
             return;
         }
 
-        var effect = subMesh._effectOverride ?? subMesh.effect;
+        var effect = subMesh.effect;
 
         if (!effect) {
             return;

+ 1 - 1
src/Materials/shaderMaterial.ts

@@ -655,7 +655,7 @@ export class ShaderMaterial extends Material {
      * @param subMesh defines the submesh to bind the material to
      */
     public bindForSubMesh(world: Matrix, mesh: Mesh, subMesh: SubMesh): void {
-        this.bind(world, mesh, subMesh._effectOverride ?? this._effect);
+        this.bind(world, mesh, subMesh._effectOverride);
     }
 
     /**

+ 1 - 1
src/Materials/standardMaterial.ts

@@ -1299,7 +1299,7 @@ export class StandardMaterial extends PushMaterial {
             return;
         }
 
-        var effect = subMesh._effectOverride ?? subMesh.effect;
+        var effect = subMesh.effect;
         if (!effect) {
             return;
         }

+ 1 - 1
src/Meshes/subMesh.ts

@@ -48,7 +48,7 @@ export class BaseSubMesh {
      * Gets associated effect
      */
     public get effect(): Nullable<Effect> {
-        return this._materialEffect;
+        return this._effectOverride ?? this._materialEffect;
     }
 
     /**