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

03.12.2010, 18:40

Fehler mit DX8 in Visual Basic beim Erstellen eines D3D-Devices

Moin,
ich hab folgendes Problem: Ich programmier mit nem Freund ein Spiel und da für die künstlerisch-kreativen Sachen ich zuständig bin, mach ich auch das Animieren der Charaktere. Mein Freund hat dafür ein Programm in VB geschrieben (bitte nicht fragen, warum VB und warum ein selbst geschriebenes Programm zum Animieren ;) ). Da ich Vista hab und VB6 da nicht drauf läuft, hab ich eine VM mit XP.
Das Programm benutzt DirectX8 und wenn ich das Projekt starte, gibts nen Runtime-Error beim Erstellen des Devices: '2005530518 (8876086a)' Automation Error
Mein bisherigen Recherchen: Bei einigen lag es an der GraKa, was bei der VM wahrscheinlich durchaus eine potenzielle Fehlerquelle ist - ich benutze Oracle Virtual Box, hab ihm 64 MB Grafikspeicher gegeben. Bei einigen lags auch einfach an DirectX und mein Freund meint auch, es liegt an den Parametern beim Erstellen des Device, ein anderes Projekt, welches DX8 verwendet, funktioniert. Der Aufruf zur Erstellung des Device lautet

Set mD3DDevice8 = mD3D8.CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, d3dpp)

Ich blicks nicht! Kann mir jemand helfen oder ne Anregung geben, worans liegen könnte? Danke schon mal im Voraus, es treibt mich langsam in den Wahnsinn!! :wacko:

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

03.12.2010, 19:54

Bei aller Liebe zu VB (war meine erste Sprache) kann ich dir nur von ganzem Herzen raten eine aktuelle Technologie zu verwenden. Steig um auf C# und verwende zumindest d3d9, das ist praktisch komplett gleich wie d3d8. Wenn es wirklich sein muss gehts auch mit VB.NET wobei ich dir zu C# raten würde.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »dot« (03.12.2010, 20:04)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

3

03.12.2010, 20:15

hatten wir soetwas nicht schonmal?
Ich komm aber wohl doch nicht drumherum zu erklären, warum VB6 :)
Also eigentlich liegt es mehr oder weniger an meinem Freund. Er kann nämlich bisher nur VB und hat auch noch nie in .NET programmiert. Und ich glaube, es ist eine schon ganz ordentliche Umstellung zu .NET, oder? Jedenfalls hat er aber auch gesagt, dass er danach nur mit C++ weitermachen will und dass er dieses Projekt auch als seinen Abschluss in VB sieht. Ich wollte aber jetzt nicht so lange warten, bis er dann C++ gelernt hat, von daher hab ich mit VB eingewilligt.
Man muss es positiv sehen: VB ist ja nicht SO schwer zu erlernen, bestimmt leistungsfähig genug um unser Spiel darin zu machen und außerdem sammel ich ja auch n bissel Erfahrung dabei. Es gibt ja auch diese altbekannte These, dass die Programmiersprache letztenendes ja nur dem Computer begreiflich machen soll, was man von ihm will, und wie man das macht (in welcher Sprache) ist ja dann eigentlich wurst. Die kleinen Unannehmlichkeiten nehm ich dafür, dass ich was mit meinem Freund machen kann und für die Erfahrung, die ich bei diesem großen Projekt gewinnen werde, in Kauf.
Hoffe ihr versteht das :)
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

4

03.12.2010, 20:41

@NachoMan: du hasts erfasst :D
@dot: Es ist, wie in dem Zitat zu sehen ist, nur für dieses eine Projekt... lies dir am besten das Zitat durch, dann weißt du, wieso.

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

5

03.12.2010, 20:46

es ist viel einfacher und geht schneller z.b. c++ zu lernen und sich die sfml anzusehen als sich mit vb und directx8 herumzuschlagen. vorallem funktioniert es ohne VM!
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

6

03.12.2010, 20:47

Du willst also tatsächlich auf komplett veraltetet Technologie setzen? Ich würde lieber meinen Kumpel dazu bringen C# zu lernen anstatt mit Zeug rumzufrickeln das seit über zwei Jahren nichtmal mehr supportet wird. Vor allem da das Projekt ja offenbar noch nicht wirklich weit fortgeschritten ist ist es vermutlich noch nicht zu spät den richtigen Kurs einzuschlagen...

7

03.12.2010, 21:05

hmmm.. ich könnte ihn vlt überreden, ab jetzt mit c++ weiterzumachen.. aber das muss ich mir auf jeden fall noch mal überlegen! das wäre schon ein großer schritt, zumal ich nicht weiß, ob man mit dem editor, für den er einige wochen gebraucht hat, auch mit c++ noch was anfangen kann - wobei das eigentlich gehen müsste.. ich frag ihn noch mal.
aber erst will ich die lösung für das problem xD

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

8

03.12.2010, 21:14

Ich würde definitiv zu C# raten. Die Lösung kann ich dir leider nicht sagen. Ich würde mal vermuten es liegt wohl an falschen PresentParameters.

9

03.12.2010, 23:27

Ist innerhalb der VM sowas wie der DX CapsViewer oder DXDiag verfügbar?

Sei's drum. Eure Konfiguration ist ganz schön daneben! :S
fka tm

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

10

03.12.2010, 23:36

Von was für einer VM ist da eigentlich die ganze Zeit die Rede?

Werbeanzeige