Browse Source

[fx] Better scale particle position when particleScaling == None

Clément Espeute 3 months ago
parent
commit
6f35387ab2
1 changed files with 3 additions and 5 deletions
  1. 3 5
      hrt/prefab/fx/Emitter.hx

+ 3 - 5
hrt/prefab/fx/Emitter.hx

@@ -1021,12 +1021,10 @@ class EmitterObject extends h3d.scene.Object {
 							tmpMat2.invert();
 							tmpMat2.invert();
 							tmpMat.multiply(tmpMat, tmpMat2);
 							tmpMat.multiply(tmpMat, tmpMat2);
 							if (particleScaling == None) {
 							if (particleScaling == None) {
-								// Re-introduce parent scaling in the spawn position calculations
+								// // Re-introduce parent scaling in the spawn position calculations
 								var parentScale = inline parentNonEmitter.getAbsPos().getScale();
 								var parentScale = inline parentNonEmitter.getAbsPos().getScale();
-								tmpMat.prependScale(parentScale.x, parentScale.y, parentScale.z);
-								tmpMat.tx *= parentScale.x;
-								tmpMat.ty *= parentScale.y;
-								tmpMat.tz *= parentScale.z;
+								tmpMat2.initScale(parentScale.x, parentScale.y, parentScale.z);
+								tmpMat.multiply(tmpMat, tmpMat2);
 							}
 							}
 						}
 						}