3ds mesh mit indexbuffer rendern



  • hmmm wie überprüfe ich das denn? kann ich die denn ausgeben lassen oder so über die debug runtime? Oder hat jemand hier nen 3ds loader der funktioniert? dann könnt man die daten mal vergleichen.



  • fluxy schrieb:

    hmmm wie überprüfe ich das denn?

    D3DSpy?

    Bye, TGGC \-/



  • hmmm danke für den Tipp das kannt ich noch gar nicht. Also Die Größe der Vertex - und Indexbuffer schaut ok aus, die aufrufe auch - geben alle S_OK zurück. Aber ich komme irgendwie nicht an den Inhalt da schmiert er ab. Also bringt mir das auch nicht grade sehr viel.

    Und was gerendert wird... pub keine ahnung wie ich das rausfinde...



  • Ja und? Was gedenkst du, was wir tun sollen?

    Bye, TGGC \-/



  • hmmm okay also um dsa ganze mal konstrukiv werden zu lassen:

    1.) Es gibt sicher jemanden, der auch einen 3ds Loader hat. Dieser jemand könnte es posten, dann würde ich eine .3ds datei auf meinen server laden, er könnte sie laden und die Werte speichern für die verticeslist, die facelist und die liste der texturmapping koordinaten. Somit hätte man einen Vergleich, ob meine Daten richtig sind oder nicht und die Fehlerquelle wäre leichter zu identifizieren.

    2.) Es könnte sich jemand mal anschaun, ob der DrawIndexedPrimitive Aufruf richtig ist bei mir. GetVertexCount () liefert mir die Anzahl der vertices in der Verticesliste und getPolyCount () die anzahl der indezes in der faceliste.

    3.) Ich habe mal d3dspy dazugeschaltet. Ich habe jetzt zwar die größe meines Vertex und Indexbuffers bekommen, aber nicht die Daten dadrin. Eventuell kann mir einer sagen wie man as macht.

    4.) Zum Schluss dieses Beitrages werden ich die Aufrufliste aus meinen d3dspy mal kopieren. Die könnt ihr euch sicher angucken und mir Auffälligkeiten nennen. Mit all diesen Informationen muss es doch möglich sein, mir zu helfen oder? Ich habe mich an euch gewandt, weil ich nicht mehr weiter weiss. Und ich bitte euch, mir dabei zu helfen. Ich erwarte nicht von euch, dass ihr sonstwas macht, aber ein paar nett gemeinte Hinweise wären nicht schlecht.

    So hier noch ein paar infos

    a.) Die Infos über meinen Indexbuffer:

    Object Type: Index Buffer
    Real object address: 0x023AF360
    Hooked object address: 0x00AAACE0
    Creation call: 733
    Priority: 0
    Format: D3DFMT_INDEX16
    Usage: D3DUSAGE_WRITEONLY
    Pool: D3DPOOL_DEFAULT
    Size: 72 bytes (36 indices)

    b.) die Infos über meinen Vertexbuffer:

    Object Type: Vertex Buffer
    Real object address: 0x023AF220
    Hooked object address: 0x00AAA6D8
    Creation call: 729
    Priority: 0
    Usage: D3DUSAGE_WRITEONLY
    Pool: D3DPOOL_DEFAULT
    Size: 576 bytes (36 vertices)
    FVF: 0x00000042 (D3DFVF_XYZ | D3DFVF_DIFFUSE)

    c.) die Infos über mein Device:

    Object Type: D3D Device
    Real object address: 0x022C48A0
    Hooked object address: 0x00AA8B80
    Creation call: 718

    d.) die infos über meinen surface:

    Object Type: Surface
    Real object address: 0x00BBA760
    Hooked object address: 0x00AA9930
    Creation call: 721
    Width: 1024
    Height: 768
    Format: D3DFMT_D16
    Pool: D3DPOOL_DEFAULT

    e.) meine Renderstates:
    http://www.simplexcoding.de/~public/rs.jpg

    f.) meine Aufrufliste im d3dspy
    http://www.simplexcoding.de/~public/dxcallstack.jpg

    g.) meine matrix
    http://www.simplexcoding.de/~public/matrix.jpg

    So mehr infos habe ich auch nicht. Teillösungen erwünscht 😃



  • ey nicht so viele aufeinmal.... ich komm nicht so schnell nach....



  • Was heißt denn "kommt da bei mir nix anständiges raus"?
    Bleibt das Bild schwarz?
    Kommt Polygonmatsch?
    Stürzt er ab?

    Also ich benutze auch 3ds (noch), ich wüsste aber nicht was ich Dir da jetzt drüber erzählen könnte. Ich habe auch mehrere Stunden gebraucht bis das Modell richtig geladen und angezeigt wurde, musst halt mal weiter rumprobieren.



  • Naja was angezeigt wird wohl, aber nur schrott. Das ganze sollte ne kiste sein, aber die Polygone sind völlig falsch angeordnet.

    Gruß Sebastian



  • Nachdem ich mir hier alles durchgelesen habe, denke ich die Punkte sind flasch ausgelesen oder faslch in den VB gepackt. Eine Kiste hat eigentlich nur (maximal) 24 Punkte.

    Bye, TGGC \-/


  • Mod

    TGGC schrieb:

    Eine Kiste hat eigentlich nur (maximal) 24 Punkte.
    \-/

    eigentlich max 36 verwendete(ohne zu tesselieren).

    rapso->greets();



  • H.L.T.O schrieb:

    Ich nehme mal an das was an deinen Indexwerten nicht stimmt ???

    Behaupte ich immer noch. Schau dir doch mal nochmal deinen Loader an. Evt. liegt der Fehler in dieser Funktion.



  • rapso schrieb:

    TGGC schrieb:

    Eine Kiste hat eigentlich nur (maximal) 24 Punkte.
    \-/

    eigentlich max 36 verwendete(ohne zu tesselieren).

    rapso->greets();

    6 Seiten mit 4 Punkten. Und wie rechnest du?

    Bye, TGGC \-/



  • mit 2 dreiecken pro seite,mit 6 seiten pro würfel und 3 punkten pro dreieck^^
    2*6*3=36


  • Mod

    TGGC schrieb:

    rapso schrieb:

    TGGC schrieb:

    Eine Kiste hat eigentlich nur (maximal) 24 Punkte.
    \-/

    eigentlich max 36 verwendete(ohne zu tesselieren).

    rapso->greets();

    6 Seiten mit 4 Punkten. Und wie rechnest du?

    Bye, TGGC \-/

    12triangles mit je 3 verticen. hat nichts mit rechnen, sondern mit deinem so oft propagiertem denken zu tun.

    rapso->greets();



  • Ich spreche von der Zahl der Punkte, nicht der Indizes.

    Bye, TGGC \-/



  • davon gibts auch nur 8 🙄


  • Mod

    otze schrieb:

    davon gibts auch nur 8 🙄

    👍



  • Sag ich doch.

    Bye, TGGC \-/



  • 😃


  • Mod

    TGGC schrieb:

    Sag ich doch.

    Bye, TGGC \-/

    TGGC schrieb:

    Eine Kiste hat eigentlich nur (maximal) 24 Punkte

    du sagst es!


Anmelden zum Antworten