Procházet zdrojové kódy

added pixelSnap, offset

ncannasse před 9 roky
rodič
revize
eaeb6e8fbf
1 změnil soubory, kde provedl 12 přidání a 8 odebrání
  1. 12 8
      h2d/Scene3D.hx

+ 12 - 8
h2d/Scene3D.hx

@@ -16,38 +16,42 @@ class Scene3D extends Sprite {
 }
 
 class ObjectFollower extends Sprite {
-	
+
 	public var follow : h3d.scene.Object;
-	
+	public var pixelSnap = true;
+	public var offsetX = 0.;
+	public var offsetY = 0.;
+	public var offsetZ = 0.;
+
 	public function new( obj, ?parent ) {
 		super(parent);
 		this.follow = obj;
 	}
-	
+
 	function followObject() {
 		if( follow == null )
 			return;
 		var scene = @:privateAccess follow.getScene();
 		if( scene == null )
 			return;
-		var s2d = getScene();		
+		var s2d = getScene();
 		var width = s2d == null ? h3d.Engine.getCurrent().width : s2d.width;
 		var height = s2d == null ? h3d.Engine.getCurrent().height : s2d.height;
 		var absPos = follow.getAbsPos();
-		var p = scene.camera.project(absPos._41, absPos._42, absPos._43, width, height, true);
+		var p = scene.camera.project(absPos._41 + offsetX, absPos._42 + offsetY, absPos._43 + offsetZ, width, height, pixelSnap);
 		x = p.x;
 		y = p.y;
 		visible = p.z > 0;
 	}
-	
+
 	override function syncPos() {
 		followObject();
 		super.syncPos();
 	}
-	
+
 	override function sync(ctx) {
 		followObject();
 		super.sync(ctx);
 	}
-	
+
 }