2017-08-22 6 views
0

Meine Anwendung hat ein festes Seitenverhältnis (2,39: 1 Letterbox) neben dem nativen Bildschirmseitenverhältnis. Ich versuche, diese feste Größe im Vollbildmodus zu erreichen, ohne einen größeren Satz von Renderzielen zu erstellen und eine Ausschnittsanzeige auf sie anzuwenden; genauso wie einen kleineren Puffer zu haben und ihn in die Mitte des Fensters zu blitzen. Der Grund dafür ist, dass die Effektpipeline mehrere Renderziele verwendet, die auf die Renderbereichsgröße eingestellt sind, und wenn ich stattdessen das Ansichtsfenster einstelle, muss ich mich mit den uvs/coordiantes und so herumschlagen und werde hässlich aussehen oder sein Defekt.How to Letterbox Zuschneiden, ohne das Ansichtsfenster in DirectX 11

Antwort

0

Wenn Sie in Windows 10 CreateSwapChainForCoreWindow oder CreateSwapChainForComposition verwenden, können Sie DXGI_SCALING_ASPECT_RATIO_STRETCH verwenden, was das System automatisch ausführt.

Andernfalls müssen Sie auf Ihre eigene Render-Zieltextur rendern und dann einen abschließenden Quad-Draw an die Swapchain mit der gewünschten Position für den Letterbox erstellen.