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

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

21

22.12.2011, 17:53

http://msdn.microsoft.com/en-us/library/…p/bb174356.aspx

Aber du renderst doch in den BackBuffer, und der hat doch einen entsprechenden DepthBuffer, oder setzt du den auf 0? Zeig mal deine PresentParameters...

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

22

22.12.2011, 18:26

Moment wir reden jetzt nicht vom BackBuffer sonder vom Textur Surface. Also das Problem wurde nun eingegrentzt: Es triit auf wenn ich in eine Textur render un mein Device mit AA erstelle.Es sieht nach einem ZBuffer Fehler aus. Und die PresentParameters: Device->Present(NULL,NULL,NULL,NULL);
MfG

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

23

22.12.2011, 18:31

Ich meinte natürlich die da: http://msdn.microsoft.com/en-us/library/…p/bb172588.aspx

Und es kann ja dann nichts mit der Textur zu tun haben, denn rendern tust du ja in den BackBuffer, du kopierst dann nur das Ergebnis in die Textur...

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

24

22.12.2011, 18:33

Ach hei je also moment die muss ich erst mal aufschreiben ;) Kleinen Moment....
(Ladezeitenüberbrückungssong....)

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
BackBufferWidth = 1366;
BackBufferHeight = 768;
BackBufferFormat = D3DFMT_X8R8G8B8;
BackBufferCount = 1;
MultiSampleType = D3DMULTISAMPLE_8_SAMPLES;
MultiSampleQuality = 2;// Bin mir nicht sicher glaube aber 2
SwapEffect = D3DSWAPEFFECT_DISCARD;
hDeviceWindow = m_myWindow;
Windowed = FALSE;
EnableAutoDepthStencil = TRUE;
AutoDepthStencilFormat = D3DFMT_D24S8;
Flags = D3DFMT_D24S8 != D3DFMT_D16_LOCKABLE ? D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL : 0; // Mache ich nur so kompliziert weil ich später vll noch was ändere
FullScreen_RefreshRateInHz = bWindowed ? D3DPRESENT_RATE_DEFAULT : VideoMode.RefreshRate;   // Wieder wegen veränderungen
PresentationInterval = VSync ? D3DPRESENT_INTERVAL_ONE : D3DPRESENT_INTERVAL_IMMEDIATE;   // Ebenfalls wegen änderungen

Zitat

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

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »FSA« (22.12.2011, 18:45)


Schrompf

Alter Hase

Beiträge: 1 470

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

25

22.12.2011, 18:51

Kleinen Moment....
(Ladezeitenüberbrückungssong....)
Hrhrhr, da hab ich gegrinst.

So, wie ich das sehe, hast Du einen BackBuffer mit MultiSampling erstellt. Demzufolge müsste Direct3D auch den ZBuffer dazu mit diesen Multisample-Einstellungen erstellt haben. Und jetzt setzt Du eine Textur (die in D3D9 zwangsweise ohne Multisampling ist) als Renderziel. Damit ist jetzt Dein ZBuffer (Mit MS) inkompatibel zum Rendertarget (Ohne MS). Demzufolge brauchst Du noch einen zweiten ZBuffer, den Du mittels CreateDepthStencilSurface() in ausreichender Größe und ohne Multisampling erzeugst. Dann Textur als Rendertarget setzen, den neuen DepthBuffer setzen, losrendern, und es müsste klappen. Danach aber nicht vergessen, beim Zurücksetzen auf den BackBuffer auch den alten DepthBuffer wieder einzusetzen.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

26

22.12.2011, 19:13

OK Danke dann habe ich aber immernoch kein AA aktiv, oder verstehe ich da jetzt was falsch?

Zitat

Hrhrhr, da hab ich gegrinst.
War das ernst gemeint? :D

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

27

22.12.2011, 20:49

Erklär doch nochmal ganz genau was du jetzt eigentlich tust. Renderst du in die Texture oder renderst du in den BackBuffer? Denn wenn du Multisampling verwenden willst, musst du in den BackBuffer rendern und dann den Inhalt des BackBuffer per StretchRect auf eine Textur kopieren, du solltest in dem Fall also nirgendwo einen Aufruf von SetRenderTarget() haben...

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

28

22.12.2011, 22:07

Hei je da habe ich ja wirklich die Ganze zeit alles Falsche gemacht O.o Also in den BackBuffer Rendern dann den Inhalt in eine textur kopiern bzw in deren Surface, die Textur dann Rendern damit ich mein PostProcessShader übergeben kann. Stimmt das so oder noch was falsch? ;) Danke

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

29

22.12.2011, 22:13

Klingt zumindest mal nicht so falsch...

FSA

Community-Fossil

  • »FSA« ist der Autor dieses Themas
  • Private Nachricht senden

30

22.12.2011, 22:17

Ich werde es gleich testen ;) Danke

Zitat

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

Werbeanzeige