 |
JLI Spieleprogrammierung
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 30.10.2004, 01:01 Titel: [Vertices] Probleme |
|
|
hi,
ich hab totale Verständniss-Probleme mit den Vertices und dem Vertexbuffer...
Im Prinzip muss ich doch nur ein Viereck mit den Vertices machen
und darauf eine Texture klatschen, aber irgendwie krieg ich das nicht
gebacken..
Kann mir jemand helfen durch ein Beispiel ?
Ich möchte nur "2D" haben, nichts 3D ..
thx
mfg
DarK _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
| Nach oben |
|
 |
Sören JLI Master Trainee

Anmeldedatum: 26.07.2002 Beiträge: 647 Wohnort: Bonn Medaillen: Keine
|
Verfasst am: 30.10.2004, 01:19 Titel: |
|
|
Hast du das Buch nicht?
Ansonsten: Was verstehst du nicht? |
|
| Nach oben |
|
 |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 30.10.2004, 01:33 Titel: |
|
|
Naja irgendwie die ganzen Vertices e.t.c. ..
ich schaff es son tolles dreieck zu machen, aber an einem REchteck scheichert ich schon und danach wüst ich auch net wie ich eine Texture darauf bekomme
irgendwie überfordert mich DirectX 9 *heul* _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
| Nach oben |
|
 |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 30.10.2004, 01:53 Titel: |
|
|
Nun hab ich folgendes hinbekommen:
mein Ziel ist aber folgendes:
was mach ich falsch ? die TEXTURE wird richtig eingeladen e.t.c. _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
| Nach oben |
|
 |
Christian Rousselle Site Admin

Alter: 49 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 30.10.2004, 08:44 Titel: |
|
|
Hallo,
wie hast du das Vertexformat definiert? Du brauchst ein Vertexformat mit einer Position und Texturkoordinaten:
| Code: |
struct VERTEX_POS_TEX
{
float x, y, z;
float tu, tv;
static const FVF;
};
VERTEX_POS_TEX::FVF = D3DFVFXYZ | D3DFVF_TEX1;
|
Angenommen, du willst das Quad als nicht indizierte Dreiecksliste rendern, dann brauchst du 6 Vertices. Wie das geht und die du die Position und Texturkoordinaten angibst, steht im Buch, kann man sich aber auch denken - du hast ja außerdem schon ein Quad rendern können. Es kann also eigentlich nur noch was mit den Texturkoordinaten nicht okay sein. Der (oder die) linken, oberen Vertices haben die Texturkoordinate (0.0f, 0.0f), links unten (0.0f, 1.0f), rechts oben (1.0f, 0.0f), rechts unten (1.0f, 1.0f).
C. |
|
| Nach oben |
|
 |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 30.10.2004, 10:23 Titel: |
|
|
mit | Zitat: | | D3DFVFXYZ | D3DFVF_TEX1; |
hab ich folgendes:
ich krieg einfach net gebacken  _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
| Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 38 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 30.10.2004, 10:28 Titel: |
|
|
also du must die Texturkoordinaten schon richtig setzten. ALSO:
Poste einfach mal:
- Komplete vertexformat
- Die Vertex initialisierung
- die Renderfunktion
äh, poste am besten alles was was mit der 3D Ausgabe zu tun hat! _________________ https://jonathank.de/games/ |
|
| Nach oben |
|
 |
Beni5 Super JLI'ler
Alter: 37 Anmeldedatum: 12.11.2003 Beiträge: 310 Wohnort: Switzerland Medaillen: Keine
|
Verfasst am: 30.10.2004, 10:39 Titel: |
|
|
| Kann auch sein das was mit der Normale nicht stimmt. |
|
| Nach oben |
|
 |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 30.10.2004, 10:49 Titel: |
|
|
| Code: |
struct CUSTOMVERTEX
{
FLOAT x, y, z;
DWORD color;
FLOAT tu, tv;
};
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ|D3DFVF_DIFFUSE|D3DFVF_TEX1)
|
| Code: |
CUSTOMVERTEX vertices[] =
{
{ 50.0f, 50.0f, 0.0f, 0xff00ff00, 0.0f, 0.0f},
{ 256.0f, 50.0f, 0.0f, 0xffff0000, 1.0f, 0.0f}, // x, y, z, rhw, color
{ 256.0f, 256.0f, 0.0f, 0xff00ff00, 1.0f, 1.0f},
{ 50.0f, 50.0f, 0.0f, 0xff00ff00, 0.0f, 0.0f},
{ 256.0f, 256.0f, 0.0f, 0xff00ff00, 1.0f, 1.0f},
{ 50.0f, 256.0f, 0.0f, 0xff00ffff, 0.0f, 1.0f},
};
m_lpD3DDevice->CreateVertexBuffer(6*sizeof(CUSTOMVERTEX),0, D3DFVF_CUSTOMVERTEX,D3DPOOL_MANAGED, &g_pVB, NULL);
VOID* pVertices;
g_pVB->Lock(0, 0, (void**)&pVertices, 0);
memcpy(pVertices, vertices, sizeof(vertices));
g_pVB->Unlock();
D3DXCreateTextureFromFile(m_lpD3DDevice,"gfx/banana.bmp",&lpTexture);
m_lpD3DDevice->SetRenderState(D3DRS_LIGHTING,FALSE);
m_lpD3DDevice->SetFVF(D3DFVF_CUSTOMVERTEX);
m_lpD3DDevice->SetTexture(0, lpTexture);
m_lpD3DDevice->SetTextureStageState(0,D3DTSS_COLOROP,D3DTOP_SELECTARG1);
|
| Code: |
m_lpD3DDevice->SetStreamSource(0, g_pVB, 0, sizeof(CUSTOMVERTEX));
m_lpD3DDevice->DrawPrimitive(D3DPT_TRIANGLELIST , 0, 2);
|
da  _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
| Nach oben |
|
 |
abc_d JLI Master Trainee

Alter: 36 Anmeldedatum: 27.01.2003 Beiträge: 615
Medaillen: Keine
|
Verfasst am: 30.10.2004, 11:40 Titel: |
|
|
| Code: |
beim 4.
{ 50.0f, 50.0f, 0.0f, 0xff00ff00, 0.0f, 0.0f},
->
{ 256.0f, 50.0f, 0.0f, 0xffff0000, 1.0f, 0.0f},
|
sonst hast du merkwürdige Dreiecke _________________ http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.
Never touch a running System - der Systemling |
|
| Nach oben |
|
 |
Jonathan_Klein Living Legend

Alter: 38 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 30.10.2004, 12:03 Titel: |
|
|
@Beni5
Das mit den normaen halte ich für seeehr unwahrscheinlich. Da wäre die beleuchtung falsch, wen sie den angeschaltet wäre, und Normalvektoren im Vertexformat auftauchen würden. _________________ https://jonathank.de/games/ |
|
| Nach oben |
|
 |
KI JLI Master

Alter: 40 Anmeldedatum: 04.07.2003 Beiträge: 965 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 30.10.2004, 12:21 Titel: |
|
|
Christian hat doch schon alles gesagt..
demnach müsste es so aussehen:
| Code: |
{ 50.0f, 50.0f, 0.0f, 0xff00ff00, 0.0f, 1.0f},
{ 256.0f, 50.0f, 0.0f, 0xffff0000, 1.0f, 1.0f},
{ 256.0f, 256.0f, 0.0f, 0xff00ff00, 1.0f, 0.0f},
{ 50.0f, 50.0f, 0.0f, 0xff00ff00, 0.0f, 1.0f},
{ 256.0f, 256.0f, 0.0f, 0xff00ff00, 1.0f, 0.0f},
{ 50.0f, 256.0f, 0.0f, 0xff00ffff, 0.0f, 0.0f},
|
|
|
| Nach oben |
|
 |
abc_d JLI Master Trainee

Alter: 36 Anmeldedatum: 27.01.2003 Beiträge: 615
Medaillen: Keine
|
|
| Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|