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

Techie

Alter Hase

Beiträge: 717

Wohnort: Bayreuth

Beruf: Student | Hilfswissenschaftler in der Robotik

  • Private Nachricht senden

21

22.06.2014, 16:11

Der Wrapper ansich passt. Der läuft bei ohne Probleme.

Ihr könnte ja den Source in meiner GIT Repo nachlesen : https://bitbucket.org/Techie/windowclass

@mulcher, wo in welcher Datei ist es?

EDIT:

@mulcher, erst sagst du du hast das bei mir kopiert, jetzt sehe ich, dass es anders ist. Werden Fehler suchen! xD
Trau dich den kompletten Code hier zu posten. Ansonsten wird man dir kaum helfen können.
I write my own game engines because if I'm going to live in buggy crappy filth, I want it to me my own - Ron Gilbert

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Techie« (22.06.2014, 16:21)


22

22.06.2014, 16:59

Deine SampleDesc ist falsch.
Wenn du kein MSAA verwenden möchtest, musst du dennoch einen Count von mindestens 1 angeben:

C-/C++-Quelltext

1
2
3
// no MSAA
swapChainDesc.SampleDesc.Quality = 0;
swapChainDesc.SampleDesc.Count = 1;


Edit: Miracs beispiel funktioniert nicht aufgrund des nicht unterstützten Feature Levels D3D_FEATURE_LEVEL_11_0. Auf manchen Systemen, auf denen die Grafikkarten dieses Feature Level noch nicht unterstützen, funktioniert das FEATURE_LEVEL_11_0 dann eben trotz installiertem DirectX11 nicht.
Üblicherweise gibt man, um dieses Problem abzufangen, alle unterstützten Featurelevels (bezogen auf die DirectX Version, nicht auf das Feature Level der Grafikkarte) in einem Array an und prüft nachher das Feature Level vom Device, um die Application darauf vorzubereiten. Ein einfaches angeben von NULL wird nicht darin resultieren, dass auch das D3D_FEATURE_LEVEL_11_1 mit unterstützt wird. Siehe dazu auch http://msdn.microsoft.com/en-us/library/…3(v=vs.85).aspx
EnvisionGame(); EnableGame(); AchieveGame(); - Visionen kann man viele haben. Sie umzusetzen und auf das Ergebnis stolz zu sein ist die eigentliche Kunst.

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »iSmokiieZz« (22.06.2014, 17:25)


23

22.06.2014, 21:32

ohje :)
also erstmal hab ich den D3DCreate... Code nur grob kopiert aus techies Rep, aber auch nur weils eig genau wie alle anderen tut´s ist ;D
der rest inst von mir, und da lag auch wie iSmokieeZz gesagt hat der fehler das der Hwnd falsch übergeben wird, was mir auch zufällig erst aufgefallen ist. Hab das Problem behoben und auf einmal, siehe da es geht! :thumbup:
Wie das mit Miracs Code aussieht weis ich leider nicht, aber im normalfall wenn das Featurelevel nicht gehen sollte sollte es aber über Driver_Type_Software (aber halt langsam) gehen oder? oder versteh ich da den Software Treiber falsch?
Ärgerlich das es an so einem simplen Problem liegt, aber das passiert nun mal wenn man nicht aufpasst :S
Jetzt geht´s auf jeden Fall und ich bedanke mich für die Hilfe!
if you never try, you never know

24

22.06.2014, 22:30

Nein, dann musst du noch einen Software Driver uebergeben. Du hast da einfach im Moment NULL als Parameter dafür übergeben. Für weitere Informationen siehe die msdn Page zur entsprechenden Funktion
EnvisionGame(); EnableGame(); AchieveGame(); - Visionen kann man viele haben. Sie umzusetzen und auf das Ergebnis stolz zu sein ist die eigentliche Kunst.

Werbeanzeige