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

1

30.03.2006, 17:58

Matrix-Paletten-Skinning

Kennt irgendjemand ein Tutorial zu Matrix-Paletten-Skinning oder Vertex-Blending mit OpenGL ohne Shader?
Mein Projekt: Rise of the Sylvan

Anonymous

unregistriert

2

30.03.2006, 19:00

Was fürn Teil?

3

30.03.2006, 21:57

Das ist eine Technik für Skelettanimation, damit keine unschönen Kanten entstehen. Und es wird in Hardware berechnet. Zu Vertex Blending habe ich nur von ATI ein Beispielprog finden können, allerdings nur sehr dürftig kommentiert. Das Prog funktioniert, im Gegensatz zu den Shader-Beispielen, für die meine GraKa nicht gut genug ist.
Matrix-Palette-Skinning ist soweit ich weiß etwas ähnliches. Zu beidem habe ich bereits OpenGL-Funktionen gefunden, allerdings weiß ich nicht, wie man mit denen umgeht.
Bei Google bin ich noch nicht fündig geworden.

Hier der Link: http://www.ati.com/developer/sdk/RadeonSDK/Html/Samples/OpenGL/VertexBlend.html
Mein Projekt: Rise of the Sylvan

Black-Panther

Alter Hase

Beiträge: 1 443

Wohnort: Innsbruck

  • Private Nachricht senden

4

31.03.2006, 14:52

In Gems 4 stehts drin...
stillalive studios
Drone Swarm (32.000 Dronen gleichzeitig steuern!)
facebook, twitter

5

04.04.2006, 14:42

Ja, ich weiß. Das ist aber mit Shadern. Ich würde gerne GL_ARB_matrix_palette oder GL_ARB_vertex_blending verwenden, weil Shader bei OpenGL erst ab Modell 3 anfangen. Eine Doku zu den Extensions habe ich allerdings noch nirgendwo gefunden.
Mein Projekt: Rise of the Sylvan

6

10.04.2006, 14:32

Ich habe mir jetzt folgendes Vertexprogramm geschrieben. Allerdings kann OpenGL es nicht kompilieren.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
!!ARBvp1.0

#####################################################
#Skinning-Shader
#####################################################

# Konstanten
ADDRESS a0;
PARAM vec=1.0;
PARAM ModelViewProj[4] = { state.matrix.mvp };
PARAM Mat1[4]={state.matrix.modelview[1]};

# Temporäre Variablen
ARL a0.x,vec.x;
TEMP VecResult;
TEMP VecTrans;
TEMP VecSub;
TEMP VecWeighted;
DP4 VecTrans.x,Mat1[0],vertex.position;
DP4 VecTrans.y,Mat1[1],vertex.position;
DP4 VecTrans.z,Mat1[2],vertex.position;
DP4 VecTrans.w,Mat1[3],vertex.position;
SUB VecSub,VecTrans,vertex.position;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
MUL VecWeighted,VecSub,vertex.weight[a0.x].x;
ADD VecResult,vertex.position,VecWeighted;

#Vertexposition
DP4 result.position.x, ModelViewProj[0], VecResult;
DP4 result.position.y, ModelViewProj[1], VecResult;
DP4 result.position.z, ModelViewProj[2], VecResult;
DP4 result.position.w, ModelViewProj[3], VecResult;

# Vertexfarben ausgeben
MOV result.color, vertex.color;

# Texturkoordinaten unverändert weitergeben
MOV result.texcoord, vertex.texcoord;

END
Mein Projekt: Rise of the Sylvan

Werbeanzeige