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

Anonymous

unregistriert

11

11.07.2006, 22:05

Zitat von »"Chef-Koch"«

also wenne des JO! Fenster suw. meinst, dann muss ich mich entschuldigen, ich wusst nur nich was ich schreiben soll, aber des dahinter hab ich von Davids Code :D


Wie wäre es mit "Erstes Dreieck", "Test", usw? Aber sowas??? Muss nicht sein...

Sheddex

unregistriert

12

11.07.2006, 22:05

Also ich find's geil... musste mich 5 Minuten drüber totlachen... denkt was ihr wollt :D
Danke Chef-Koch :lol: ;)

Chef-Koch

Treue Seele

  • »Chef-Koch« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Ulm

  • Private Nachricht senden

13

11.07.2006, 22:13

Habs auch nur gemacht um mich zu versichern, dass des auch wirklich für die Fensterschrift da is ^^''
aber mich freut es wenn ich zumindest einige damit unterhalten konnte (fand auch lustig als ichs mir ausgedacht hab XD )
aber wisst ihr eine Antwort auf meine Fragen oben?

Zitat


mir ist gerade etwas aufgefallen: wenn ich
Code (C++):
g_aTriangle[iTriangle].aVertex[iVertex].vPosition = tbVector3Random();

aus der for schleife nehme und
Code (C++):
g_aTriangle.aVertex[0].vPosition = tbVector3( 1.0f,0.0f,0.0f);
g_aTriangle.aVertex[1].vPosition = tbVector3( 0.0f, 1.0f, 0.0f);
g_aTriangle.aVertex[2].vPosition = tbVector3( 0.0f, 0.0f, 1.0f);


daraus mache ist die Position des Dreieckt mhr so anch vorne geneigt, müsste es aber nicht in der Mitte des Bildes und "gerade aufgerichtet" sein?

Chef-Koch

Treue Seele

  • »Chef-Koch« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Ulm

  • Private Nachricht senden

14

12.07.2006, 15:26

ich weiß, dass doppelposts nicht erwünscht sind, aber ich habe das gefühl meine obrigen Fragen sind in vergessenheit geraten^^ deswegen bitte verzeiht :)

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

15

12.07.2006, 15:30

mal dir mal din dreieck auf und guck dir an wie es dann aussieht, abner schön perspektivisch ;)
Was es alles gibt, das ich nich brauche - Aristoteles

Chef-Koch

Treue Seele

  • »Chef-Koch« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Ulm

  • Private Nachricht senden

16

12.07.2006, 16:08

ahh ich habs jetz;) danke :P
aber ich hab wieder 2 Fragern (1alte 1 neue):
Warum sehe ich mein Dreieck nicht, wenn ich eine Skalierungsmatrix habe ??

2. kann ich eine Rechteckige Tedxtur auch auf 2 Dreiecke verteilt Platzieren?? , dass sie halt nicht so verzerhrt ist und genau das angezeigt wird, wie die Textur aussieht?

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

17

12.07.2006, 16:13

1. kA poste nochmal deine Skalierung
2. natürlich so zum Beispiel:

C-/C++-Quelltext

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
struct Vertex
{
    float x,y,z;
    float tu, tv;

    static const DWORD DW_FVF = D3DFVF_XYZ | D3DFVF_TEX1;
};

Vertex g_aV[4];

...

    g_aV[0].x       = -1.0f;
    g_aV[0].y       = -1.0f;
    g_aV[0].z       =  0.0f;
    g_aV[0].tu      =  0.0f;
    g_aV[0].tv      =  1.0f;

    g_aV[1].x       = -1.0f;
    g_aV[1].y       =  1.0f;
    g_aV[1].z       =  0.0f;
    g_aV[1].tu      =  0.0f;
    g_aV[1].tv      =  0.0f;

    g_aV[2].x       =  1.0f;
    g_aV[2].y       =  1.0f;
    g_aV[2].z       =  0.0f;
    g_aV[2].tu      =  1.0f;
    g_aV[2].tv      =  0.0f;

    g_aV[3].x       =  1.0f;
    g_aV[3].y       = -1.0f;
    g_aV[3].z       =  0.0f;
    g_aV[3].tu      =  1.0f;
    g_aV[3].tv      =  1.0f;

schau dir mal an wie hier die texturkoordinaten gesetzt wird
Was es alles gibt, das ich nich brauche - Aristoteles

Chef-Koch

Treue Seele

  • »Chef-Koch« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Ulm

  • Private Nachricht senden

18

12.07.2006, 16:39

cool, danke für den aufwand ;) muss ich gleich mal probieren.

Hier erstmal wie es nicht geht:

C-/C++-Quelltext

1
2
3
4
5
6
7
    mRotation = tbMatrixRotationY(0.0f);
    mScaling = tbMatrixScaling(tbVector3(g_aTriangle.fSize));
    mTranslation = tbMatrixTranslation(tbVector3(0.0f, 0.0f, 2.0f));
    
    // Beide Matrizen kombinieren und als Weltmatrix einsetzen

    mWorld = mRotation * mScaling * mTranslation;
    g_pD3DDevice->SetTransform(D3DTS_WORLD, (D3DMATRIX*)(&mWorld));

CW_Kovok

Alter Hase

Beiträge: 836

Wohnort: nähe Bonn

Beruf: Schüler

  • Private Nachricht senden

19

12.07.2006, 16:44

1. Scaling müsste vor Rotation kommen
2. Die Rotationsmatrix brauchst du nicht
3. ersetz das tbVector3(g_aTriangle.fSize) mal durch einen konstanten Wert, oder prüfe mal wie groß das ist, und wie es sich auf dein dreieck auswirkt, wegen Sichtbarkeit etc
Was es alles gibt, das ich nich brauche - Aristoteles

Chef-Koch

Treue Seele

  • »Chef-Koch« ist der Autor dieses Themas

Beiträge: 115

Wohnort: Ulm

  • Private Nachricht senden

20

13.07.2006, 14:53

saus ich habe wieder eine Frage;) : wenn ich die beiden Dreiecke zeichne, kann ich irgendwie machen, dass ich nur bestimmte Vertizes nehme (weil ich brauch ja nur 3 und ned 4 -.-' also irgendwie so :

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    // Nun das 1. Dreieck zeichnen

    if(FAILED(hResult = g_pD3DDevice->DrawPrimitiveUP(D3DPT_TRIANGLELIST,   // Dreiecksliste

                                                      1,                    // 1 Dreieck

                                                      g_aTriangle.aVertex[0][1][2], // Vertexdaten

                                                      sizeof(SVertex))))    // Vertexgröße

    {
        // Fehler beim Zeichnen!

        MessageBox(g_hWindow, "Fehler beim Zeichnen des Dreiecks!",
                   "Fehler", MB_OK | MB_ICONEXCLAMATION);
        TB_ERROR_DIRECTX("g_pD3DDevice->DrawPrimitiveUP", hResult, TB_STOP);
    }

        // Nun das 2. Dreieck zeichnen

    if(FAILED(hResult = g_pD3DDevice->DrawPrimitiveUP(D3DPT_TRIANGLELIST,   // Dreiecksliste

                                                      1,                    // 1 Dreieck

                                                      g_aTriangle.aVertex[1][2][3], // Vertexdaten

                                                      sizeof(SVertex))))    // Vertexgröße

    {
        // Fehler beim Zeichnen!

        MessageBox(g_hWindow, "Fehler beim Zeichnen des Dreiecks!",
                   "Fehler", MB_OK | MB_ICONEXCLAMATION);
        TB_ERROR_DIRECTX("g_pD3DDevice->DrawPrimitiveUP", hResult, TB_STOP);
    }


danke schonmal für alles was ihr bisher gemacht habt ;) vorallem CW_Kovok

Werbeanzeige