Scalierungswert ermittel

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

Kruemelator

Betreff: Scalierungswert ermittel

BeitragSa, März 28, 2009 23:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie ermittel ich den Wert mit dem ein Entity auf der X-,Y-,Z-Achse scaliert wurde?
Also das was für die Position Entityx(),... ist, für die Scalierung.

Gruß Kruemelator

Chester

BeitragSo, März 29, 2009 0:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du nicht einfach die Größe in einer Variable festhälst(die relative Ausgangsgröße ist ja immer 1), gibt es sonst nur noch die Möglichkeit mit der Blitz3D+.dll.

FireballFlame

BeitragSo, März 29, 2009 1:57
Antworten mit Zitat
Benutzer-Profile anzeigen
GetMatElement
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit

Nicdel

BeitragSo, März 29, 2009 10:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Hab ich mal im Forum gefunden:

Code: [AUSKLAPPEN]

Function EntityScaleX#(Entity)
   Vx# = GetMatElement(Entity, 0, 0)
   Vy# = GetMatElement(Entity, 0, 1)
   Vz# = GetMatElement(Entity, 0, 2)
   Scale# = Sqr(Vx#*Vx# + Vy#*Vy# + Vz#*Vz#)
   
   Return Scale#
End Function

Function EntityScaleY#(Entity)
  Vx# = GetMatElement(Entity, 1, 0)
   Vy# = GetMatElement(Entity, 1, 1)
   Vz# = GetMatElement(Entity, 1, 2)
   Scale# = Sqr(Vx#*Vx# + Vy#*Vy# + Vz#*Vz#)
   
   Return Scale#
End Function

Function EntityScaleZ#(Entity)
   Vx# = GetMatElement(Entity, 2, 0)
   Vy# = GetMatElement(Entity, 2, 1)
   Vz# = GetMatElement(Entity, 2, 2)
   Scale# = Sqr(Vx#*Vx# + Vy#*Vy# + Vz#*Vz#)
   
   Return Scale#
End Function
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7
 

martin_moehler

BeitragSo, März 29, 2009 20:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Entitywidth, -height und depth bleiben gleich auch nach der Skalierung. Wenn du diese Werte nach der Skalierung anders errechnest und dann mit den EntityWerten ins Verhältnis setzt kommst du auf den Skalierungswert!
 

Kruemelator

BeitragMo, März 30, 2009 14:58
Antworten mit Zitat
Benutzer-Profile anzeigen
danke @alle!

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group