Frage

Ich habe ein bisschen mit der neuen Flash-10 3D-Möglichkeiten gespielt, und fand heraus, dass ein Sprit in 3d rotierenden ist ziemlich einfach:

var card:Sprite = new MyCard()
card.x = 100
card.y = 100
card.z = 200
card.rotationX = -60
addChild(card)

Einfach und effektiv, zeigt dies die Karte mit Perspektive gedreht.

Jetzt möchte ich eine orthogonale Projektion verwenden, und ich habe keine Ahnung, wo ich anfangen soll. Display hat ein perspectiveProjection Mitglied hat, aber das kann nur perspektivische Projektionen natürlich machen. Vielleicht sollte ich die transform.matrix3D benutzen?

Ich würde denken, dass dies auch nicht schwer sein sollte, aber ich sehe nicht, wie dieses Problem in Angriff zu nehmen.

UPDATE: als einer der Kommentare schon sagt: in der Nähe des perspectiveProjection.fieldOfView etwas Einstellung auf 0 (10 erzeugt tatsächlich ein schöneres Ergebnis in meinem Setup als so etwas wie 0.1) Sie einen Vorsprung erhalten, die fast orthographisch ist, das könnte gut sein genug.

War es hilfreich?

Lösung

Ich habe es endlich funktioniert.

        var m:Matrix3D = new Matrix3D()
        var v3:Vector.<Vector3D> = new Vector.<Vector3D>(3);
        v3 = m.decompose();
        v3[2] = new Vector3D(1,1,0);
        m.recompose(v3)
        transform.matrix3D.appendRotation( -90, Vector3D.X_AXIS );
        transform.matrix3D.appendRotation( -45, Vector3D.Y_AXIS );
        transform.matrix3D.appendRotation( 35.264, Vector3D.X_AXIS );
        transform.matrix3D.append(m)

Nun hinzugefügt jedes Element, auf das Sprite, das diese auf sie angewendet hat Transformation wird in isometrischer Projektion angezeigt. (35,264, dass Nummer ist eine Annäherung siehe http://en.wikipedia.org/wiki/Isometric_projection)

Andere Tipps

Sie können die fieldOfView Eigenschaft PerspectiveProjection auf nahe 0 eingestellt. Ich bin nicht sicher, ob dies der beste Weg ist.

Referenz: http://thebackbutton.com/misc/f10api/flash /geom/PerspectiveProjection.html

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top