Grafik - DirectX9 in BCB: Borland-Unterstützung?



  • Hat schon jemand Erfahrung mit DirectX9 und BCB (und den entsprechenden .libs) machen können?
    Ich kenne die clootie.narud.ru - Pages, und habe die Bibliotheken von dort. Zum Teil komme ich weiter: Initialisierung (Interfaces holen), Primary-Buffer mit Farben füllen. Aber spätestens beim Holen vom Back-Buffer kriege ich nichts als Runtime-Fehlermeldungen.

    Warum ist Borland da nicht stärker dahinter? (z.B. fehlt eine .lib-Untersützung für die D3DX-Funktionen!)

    Hat jemand ein paar Tips für mich, wie ich da mit dem Builder weiterkomme?



  • Gerade die russischen .lib's funktionieren nach meiner Erfahrung ziemlich gut.

    Die D3DX-Funktionen werden durch passende heades und .lib's ("d3dx9.h",...) unterstützt, wozu man aber zusätzlich noch eine DLL hinzupacken muss ("d3dx9b.dll" oder so ähnlich), die aber auch auf der genannten site zu finden ist.

    Warum Borland die Konvertierung nicht selbst macht, weiss ich auch nicht. Der typische Builder-Anwender sitzt halt wohl meistens über seinen Datenbanken, und dafür braucht er keine bunten Raumschiffe.
    😃



  • Ich greif das Thema hier nochmal auf. Ich wollte gerne DirectX9 in meinen BCB6 einbinden aber unter der URL im ersten Posting gibts bei mir keine Website. Hat vielleicht jemand nehn anderen Link da? Nicht die FAQ - da gehts um die 8er!



  • clootie.narod.ru

    Habt ihr etwa kein Russisch in der Schule (gehabt)!? 😉



  • Danke, ach ja und Russich hatte ich auch aber nach 5 Jahren war ich schlechter als vorher. 😃



  • Ich hab mir jetzt die dll und die libs gezocken und da steht in der Installationsanleitung:

    1. Add these libraries to include path. -> Borland/libs
    2. To use D3DX9 library you should download special DLL (d3dx9ab.dll) and extract it in any common folder, like: "Windows\System".
    3. To use DxErr9 library you should download special DLL (dxerr9ab.dll) and extract it in any common folder, like: "Windows\System".

    Jetzt erscheint mir das aber zu einfach, weil im Faq beim Post zu DirectX8 sogar was von compilieren etc. steht, hab ich da was vergessen.
    Gibts irgendein einfaches Grundgerüst (wie "hello World" Programm) um die korrekte Funktion zu testen.



  • Das DirectX-SDK von M$ brauchst du natürlich trotzdem, und dort findest du auch Beispielanwendungen zum Testen.



  • Die .libs funktionieren wie gesagt ganz gut. Für die D3DX-Funktionen liegt eine Wrapper-DLL bereit, etc.

    Mir ist gerade eingefallen: man muss noch irgendwelche Header des SDK's leicht anpassen, das sagt einem der Compiler aber schon, wo. Es gibt ein paar Funktionen wie etwa "sinf(xx)", die man zu (float)sin(xx) etc. um#definen muss. Das war's, und schon läuft das DirectX9.

    Apropos: was bedeutet "narod" eigentlich? (Und "clootie", wenn wir schon mal dabei sind)

    Die Jungs leisten gute Arbeit. Tun den Job, den Borland eigentlich tun müsste.



  • Narod heist Volk.

    Und üblicherweise ist es Sache des API-Entwicklers, kompatible Libs für die Compiler zur Verfügung zu stellen, die er unterstützen will. Bis DX7 (soweit ich weiss) hat M$ sich ja auch daran gehalten und im DX-SDK Borland-Libs mitgeliefert.

    PS: Nicht vergessen, die im entsprechenden FAQ-Beitrag erwähnte Seite von M. Fötsch zu besuchen (auch wenn es da "nur" um DX8 geht), da werden auch die Sachen wie die #defines usw. besprochen.

    [ Dieser Beitrag wurde am 18.02.2003 um 18:46 Uhr von Jansen editiert. ]



  • Was das heisst weis ich nicht, dafür habe ich aber noch eine Frage. Ich hab jetzt aud der Suche im Netz uch das hier gefunden.
    http://bcb-tools.com/Welcome.htm
    Kennt die Jemand und sind die gut, dann könnte ich mir ne Menge arbeit sparen.
    Ich mein weil die freie version 1.42 für BCB 1,2,3,4,5 ist, ich aber 6 habe.

    [ Dieser Beitrag wurde am 18.02.2003 um 20:56 Uhr von Bigwill editiert. ]



  • Nicht schlecht, aber:

    - noch bei DX7 (und hier ging es ausdrücklich um DX9! ;))
    - (noch) kein 3D-Grafik-Support
    - (noch) kein offizieller BCB6-Support, obwohl in dem Forum dort angedeutet wird, dass man die Komponenten manuell installieren könnte

    Probier's doch einfach mal aus.



  • Zu den BCB-Tools Komponenten:
    Die Themen DirectX7, 3D Immediate Mode und BCB6 sind in Arbeit und sollten eigentlich im Januar schon fertig sein.

    Das größte Manko ist aus meiner Sicht der Level der Kapselung: die Komponenten repräsentieren größtenteils 1:1 die DirectX-Interfaces mit ihren jeweiligen Methoden.

    Nachteil: ich erspare mir nicht so viel Arbeit, wie es zu wünschen wäre. Ich könnte mit ein wenig Übung genausogut direkt mit den COM-Interfaces von DirectX herumhantieren.

    Vorteil: die gewöhnungsbedürftigen Datenentypen (mit ellenlangen Bezeichnern) werden z.T. durch VCL-Datentypen ersetzt; es ist alles schön in Properties verpackt, schönere Funktionsaufrufe, man hat nicht direkt mit COM zu tun, etc.

    Was ich bisher davon gesehen habe, sieht alles sehr schön und sauber aus: also hat man ggf. später weniger Ärger beim Debuggen. Und der Preis für die Vollversion ist auch sehr OK.

    Kleine Bemerkung am Rande: der Entwickler ist irgendwann schizophren durchgedreht, war in Behandlung (siehe Foren dort). Anscheinend zum Zeitpunkt, als MS den Wechsel von DX7 zu DX8 vollzogen hat. Verständlich. (Dramatische Unterschiede bei 3D, und DirectDraw ist seitdem ungerechtfertigterweise "deprecated".)
    😞


Anmelden zum Antworten