Hallo liebe Flash-Community,
ich habe eine Flashanimation gebastelt, inder sich 3 Ebenen relativ zur Mausbewegung mitbewegen. Dadurch will ich einen 3D Effekt vortäuschen. Hier sieht man was ich meine:
Chromazone - Digital Imaging for Display, Exhibition and Point of Sale Graphics
Bei mir klappt das auch alles schon wunderbar, allerdings springen die Grafiken bzw. die Moveclips zur Mausposition hin, wenn die Maus erstmals die Flashanimation überfährt. Bei dem Link oben, gleiten die Ebenen aber sanft zur Mausposition hin.
Nach stundenlangen googlen frage ich euch nun nach Rat. Ich hoffe ihr könnt mir helfen. Hier mal mein ActionScript (kann sicherlich noch sauberer sein, aber es erfüllt seinen Zweck):
PHP-Code:
_root.onMouseMove = function() {
// bewegungsgrad:
var gradebene1 = -0.4;
var gradebene2 = -0.25;
var gradebene3 = -0.15;
// größe des Bildes
// Bild ist 1300x500 groß
var halbebreite = 650;
var halbehöhe = 250;
//erfassen der Mausbewegungen
var xbewegung = _root._xmouse;
var ybewegung = _root._ymouse;
var ybewegung_pos = ybewegung-halbehöhe;
var xbewegung_pos = xbewegung-halbebreite;
// Ebene 1 x
var r1_pos2 = xbewegung_pos* gradebene1;
var r1_pos3 = r1_pos2+halbebreite;
var ebene1 = r1_pos3;
// Ebene 1 y
var ybewegung_ebene1pos2 = ybewegung_pos * gradebene1;
var ybewegung_ebene1pos3 = ybewegung_ebene1pos2+halbehöhe;
var ebene1y = ybewegung_ebene1pos3;
// Ebene 2 x
var r1_pos2_eben2 = xbewegung_pos*gradebene2;
var r1_pos3_eben2 = r1_pos2_eben2+halbebreite;
var ebene2 = r1_pos3_eben2;
// Ebene 2 y
var ybewegung_ebene2pos2 = ybewegung_pos *gradebene2;
var ybewegung_ebene2pos3 = ybewegung_ebene2pos2+halbehöhe;
var ebene2y = ybewegung_ebene2pos3;
// Ebene 3 x
var r1_pos2_eben3 = xbewegung_pos*gradebene3;
var r1_pos3_eben3 = r1_pos2_eben3+halbebreite;
var ebene3 = r1_pos3_eben3;
// Ebene 3 y
var ybewegung_ebene3pos2 = ybewegung_pos *gradebene3;
var ybewegung_ebene3pos3 = ybewegung_ebene3pos2+halbehöhe;
var ebene3y = ybewegung_ebene3pos3;
_root.ebene1._y = ebene1y;
_root.ebene2._y = ebene2y;
_root.ebene3._y = ebene3y;
_root.ebene1._x = ebene1;
_root.ebene2._x = ebene2;
_root.ebene3._x = ebene3;
};