Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

1

04.02.2010, 12:35

TexCoord zu 3D Punkt umwandeln

Hi,
ich habe folgendes Problem:
ich habe ein Dreieck ABC mit Koordinate (X|Y|Z) und Texture Koordinaten (U|V). Jetzt möchte ich eine gegebene Textrue Koordinate (U|V) anhand dieses Dreiecks in eine 3D Koordinate (X|Y|Z) umwandeln.
D.h. die 3D Koordinate müsste dann, auf der Ebene des vorhandenen Dreiecks liegen.

Hat jemand eine Idee wie man das gut umsezten kann?

the[V]oid

Alter Hase

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

2

04.02.2010, 12:41

Dein Texturkoordinatenraum ist ja durch 2 Basisvektoren definiert: Dies ist zum einen der Vektor von dem Punkt in deinem Dreieck, der die Texturkoordinaten (0,0) hat, zu dem Punkt, der die Texturkoordinaten (1,0) hat [Basisvektor a], und zum anederen vom Punkt mit den Texturkoordinaten (0,0) zum Punkt mit den Texturkoordinaten (0,1) [Basisvektor b]. Nun gilt für deinen gesuchten Punkt PR³ bei den Texturkoordinaten QR²:

Quellcode

1
P = a * Q.x + b * Q.y
<< an dieser Stelle ist eine Signatur verstorben >>

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

3

04.02.2010, 12:58

Funktioniert gut, danke =)

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

4

04.02.2010, 14:25

Ich hab doch noch ein Problem.
Die Texturkoordinaten sind in den seltesten Fällen (0|0)/ (1|0)/ (0|1)
Aber das Prinzip muss doch auch möglich sein, wenn die Texturekoordinaten willkürlich sind, aber wie?

LukasBanana

Alter Hase

  • »LukasBanana« ist der Autor dieses Themas

Beiträge: 1 097

Beruf: Shader Tools Programmer

  • Private Nachricht senden

5

04.02.2010, 15:16

Okay ich hab's jetzt selbst mit ner alten Funktion von mir gelöst.
Die Funktion hatte ich damals für das Gegenteil benötigt (3DKoordinate -> zu Texture Koordinate).
Das ließ sich ganz einfach umkehren =)

Werbeanzeige