Ich arbeite an Unity3D für ein Fisch-Shooter. Ich implementiere den Unterwasser-Ätzeffekt für Fische. Ich verwende „BlobLightProjector“ in StandardAsset der Einheit mit einem daran befestigten Skript, um die Textur von jedem Rahmen zu ändern:Wie kann der Projektor nur bestimmte Teile des Objekts beeinflussen?
public Texture2D[] frames;
private int frameIndex;
private Projector projector;
...
// repeat every frame
projector.material.SetTexture("_ShadowTex", frames[frameIndex]);
frameIndex = (frameIndex + 1) % frames.Length;
Meine Liste ätzenden Texturen wie folgt aussehen:
Hier ist, was Ich habe erreicht:
Jetzt ist das Problem, ich will den Projektor nur die oberen Teile des Fisches beeinflussen (auch wenn ich meinen Fisch in irgendeine Richtung drehen), das ist etwas Hing Aussehen wie folgt:
Könnten Sie mir einige Ratschläge geben, wie es zu tun ist, oder andere Lösung nicht verwenden Projektor ist gut so.