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

31

15.09.2013, 21:18

danke für die vernünftige Antwort :) Ich hatte ja auch eigtl. nicht vorgehabt, diesen loader selbst zu implementieren, sondern gehofft, dass sich vllt ein Profi interessehalber dadran setzen würde ;) Aber da dass ja nicht der Fall war, hab ich gedacht, ich geh mal kurz wlucs Vorschlag nach und guck ob sich DirectX11 und 9 vllt doch parallel vertragen. Das war ja keine Arbeit den Code in .h und .cpp Dateien zu kopieren und in die Tribase einzubinden. Da das ja jetzt nicht geklappt hat, werde ich dieses Projekt leider aufgeben. Ich hatte nämlich ein kleines Pong-Spiel mit der Tribase-Engine programmiert und da wäre es halt schön gewesen am Rand noch ne skelettanimierte Figur einzufügen. Da das Einbinden mit dem MD5 Loader ja viel mehr Arbeit ist als gehofft, lass ich das jetzt sein. Dabei bin ich mir sicher, dass sich wahnsinnig viele über eine solche Klasse in der Engine freuen würden ;)

Allerdings versteh ich immer noch nich, warum ihr darauf kommt, dass ich die absoluten C++-Grundlagen nochmal wiederholen sollte? Und welche vor allen Dingen? Hab ich denn irgendwas Falsches gesagt? Soll ich jetzt nochmal lernen was z.B. eine Variable, eine Funktion oder eine Klasse ist? Ich finde Kritik sollte immer konstruktiv und nachvollziehbar sein, sonst hilft sie keinem weiter...

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

32

16.09.2013, 23:31

Du hast geschrieben:

Zitat

Das hat doch nix mit den vorher fehlgeschlagenen Puffern zu tun, oder? Weil die Funktion doch nur nen d3d11Device-Zeiger benötigt und der is doch schon vorher mittels ID3D11Device* d3d11Device; generiert worden.

Das lässt darauf schließen, dass du Zeiger nicht verstanden hast.
Die sind aber nunmal absolute Grundlagen ...

33

17.09.2013, 20:44

Aaaahhh, jetzt versteh ich endlich wie du auf sowas kommst. Ja, Zeiger sind absolute Grundlagen. Aber sry, da hast du wohl was falsch reininterpretiert. Mit Zeigern kenn ich mich bestens aus. Vllt hab ich mich da etwas ungenau ausgedrückt und hätte besser Zeiger "deklariert" und nicht Zeiger "generiert" schreiben sollen. Aber dass du hier im Forum so einen Wert auf solche Feinheiten legst, wundert mich, zumal du selbst in deinem Buch manchmal von Schnittstellen redest, obwohl es da gerade um den Zeiger einer solchen geht...

34

17.09.2013, 20:57

Auch wenn du "deklarierst" schreibst ist der Fehler noch der selbe...
"Theory is when you know something, but it doesn’t work. Practice is when something works, but you don’t know why. Programmers combine theory and practice: Nothing works and they don’t know why." - Anon

35

17.09.2013, 21:30

?( dann klär mich bitte auf

FSA

Community-Fossil

  • Private Nachricht senden

36

17.09.2013, 21:57

Fakt ist: Du weißt nicht genau was du tust. Du kannst gerne Code posten (sage ich zum zweiten Mal schon), anders können wir dir nicht helfen, bis uns auf das zu berufen, was du von dir gibst. Das ist aber leider nicht wirklich aufklärend. ;)

Ich verstehe auch nicht, wie du dir es vorstellst, DirectX11 und DirectX9 laufen zu lassen. Willst du dann mit einer DirectX9 Schnitstelle einen DirectX11 VertexBuffer befüllen?
Ich denke außerdem, dass David sehr wohl weiß, von was er da redet ;)

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

37

17.09.2013, 23:06

:D jetzt geht die Diskussion schon wieder los.
Also erstens dachte ich auch, dass David immer weiß wovon er spricht. Allerdings nützt mir das nix, wenn er mir nicht mitteilt, wovon er spricht. Ein "Du hast keine Ahnung" hat noch keinem weiter geholfen.
Zweitens: Wenn du diesen Thread hier gelesen hast, wirst du wissen, dass der Loader eine DX11DeviceSchnittstelle erzeugt, also sollten die DirectX11 Puffer auch von der DX11Deviceschnittstelle her und gefüllt werden (also kein Directx11 mit 9 kombiniert werden, das sehe selbst ich, dass das Unsinn ist). Aber dass das ja nicht funktioniert habe ich ja schon dankend mitbekommen.
Drittens: Den Code findest du, wenn du meinem Link vom ersten Beitrag folgst. Was ich mit diesem angestellt habe, habe ich ja schon beschrieben und muss nicht extra hochgeladen werden. Du brauchst darin keinen Fehler zu suchen. Meine einzigen Fragen dazu waren ja nur, ob man die Grafikkarte sowohl mittels DirectX11 als auch mit DirectX9 in einem Programm ansprechen kann und ob die Funktion D3DX11CreateShaderResourceViewFromFile nur erfolgreich ist, wenn vorher auch die Puffer erfolgreich erstellt werden konnten(tut mir leid, wenn diese Fragen zu idiotisch waren)

Wenn mir jetzt also jemand sagen kann, welchen Fehler ich hier gepostet habe, wäre ich sehr dankbar. Ich stelle mich wirklich nicht absichtlich dumm.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »masterofchess« (17.09.2013, 23:13)


FSA

Community-Fossil

  • Private Nachricht senden

38

18.09.2013, 07:14

Warum willst du denn DirectX9 und 11 zusammen nutzen? Nur damit du bloß nicht von der TriBase weg musst? Entweder schreibe sie auf DirectX11 um, oder benutze sie so, wie sie ist.
Was genau ist denn nochmal dein Vorhaben?

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

39

18.09.2013, 09:36

Wie gesagt, die Grafik API ist für dein Vorhaben sowieso irrelevant. Dem Animationscode sollte es praktisch völlig egal sein, ob du nun D3D9 oder D3D11 verwendest. Lediglich die entsprechende Demo verwendet zur Darstellung eben D3D11...

40

19.09.2013, 18:38

@FSA:
Ich hatte nämlich ein kleines Pong-Spiel mit der Tribase-Engine programmiert und da wäre es halt schön gewesen am Rand noch ne skelettanimierte Figur einzufügen
Ich werde später so oder so von der Tribase-Engine weggehen. Nur im Moment reicht mir die Engine für meine Vorhaben noch völlig aus (abgesehn von der Animationsklasse ;))

@dot: genauso ist es. Das Model wird in meinem implementierten Code ja auch ohne Fehler geladen. Nur das Rendern klappt halt nicht wegen DirectX11. Das müsste ich dann alles in DirectX9 umschreiben, aber dafür müsste ich mich als Anfänger mal länger damit auseinandersetzten und dafür habe ich im Moment leider überhaupt keine Zeit.

@Steef: Welchen Fehler habe ich den jetzt gepostet? Ich würde echt gerne dazulernen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »masterofchess« (09.12.2013, 22:47)


Werbeanzeige