Zurück   Flashforum > Software > Autorensysteme

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-04-2004, 10:39   #1 (permalink)
dreckiger harald
 
Benutzerbild von bluesbaker
 
Registriert seit: Oct 2001
Ort: lünegurker heide
Beiträge: 541
rundungsproblem - iso perspektive

ich versuche gerade, eine bewegung entlang einer 30° linie entlang zu realisieren:
ActionScript:
  1. sprite(erwin).locH=sprite(erwin).locH+integer(moveH*COS( PI/180 *30)*gspeed)
  2. sprite(erwin).locV=sprite(erwin).locv+integer(moveV*SIN( PI/180* 30)*gspeed)--
sollte ja eigentlich gehen.
das problem scheinen rundungsfehler zu sein. director kennt ja keine 30-komma-irgendwas pixel....
ich komme so auf etwa 26°
also hab ich mir mit
ActionScript:
  1. sprite(erwin).locH=sprite(erwin).locH+integer(moveH*7*gspeed)--COS( PI/180 *30)
  2.   sprite(erwin).locV=sprite(erwin).locv+integer(moveV*4*gspeed)--SIN( PI/180* 30)
beholfen. daurch wird die bewegung aber zu schnell. hat jemand eine idee/workaround? framerate runterschrauben geht auch nicht, dann siehts ätzend aus (bin schon bei 12-25 fps). sonst müsste ich die ganze umgebung auf die neuen winkel anpassen

und, ja: ich weiss das das in flash einfacher ist...

gruss bluesbaker
__________________
Just because you’re paranoid doesn’t mean they’re not out to get you.
---------------------
www.rasterfahnder.de
--------------------------------

bluesbaker und wie er die welt sah
sushicorner---lo-fi-dirt-rock

coming soon:
lonesome media

Geändert von bluesbaker (29-04-2004 um 10:40 Uhr)
bluesbaker ist offline   Mit Zitat antworten
Alt 29-04-2004, 10:45   #2 (permalink)
meistens harmlos
 
Benutzerbild von rena
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 17.643
Director kennt keine 30.3-Pixel zur Positionierung, kann aber durchaus damit rechnen.
Dazu mußt du ihn aber zwingen, denn wenn er nur Ganzzahlen in einer Berechnung hat, denkt er sich "Prima ... einfach, mach ich alle (Zwischen)Ergebnisse auch als Ganzzahl".

Konkret hilft da der Befehl float bzw. du verwendest irgendwo gleichbei der ersten berechnung ein *.0

Beispiel
Code:
put 8/5
-- 1
put 8/5.0
-- 1.6000
put 8/float(5)
-- 1.6000
Für die Plazierung dann am Ende wieder runden (integer).
Sollte dann zumindest etwas genauer werden.

Gruß
rena
__________________
www.rena-hermann.de

The angels have the phone box
rena ist offline   Mit Zitat antworten
Alt 29-04-2004, 11:45   #3 (permalink)
dreckiger harald
 
Benutzerbild von bluesbaker
 
Registriert seit: Oct 2001
Ort: lünegurker heide
Beiträge: 541
ich werd's nachher mal testen, danke erstmal vom
bluesbaker
__________________
Just because you’re paranoid doesn’t mean they’re not out to get you.
---------------------
www.rasterfahnder.de
--------------------------------

bluesbaker und wie er die welt sah
sushicorner---lo-fi-dirt-rock

coming soon:
lonesome media
bluesbaker ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist aus.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele