3D 描画を行うゲームのスクリーンショットを撮っていたら 3D モデルが一部描画されずに困っていました。
RenderTarget2D のコンストラクタのオーバーロードに以下のようなものがあります。
深度バッファを使う時には以下のコンストラクタのオーバーロードを使います。
参考:[ひにけにXNA] XNA Game Studio 4.0におけるRenderTargetの変更点
RenderTarget2D のコンストラクタのオーバーロードに以下のようなものがあります。
new RenderTarget2D(GraphicsDevice graphicsDevice, int width, int height);これで生成されるレンダーターゲットには深度バッファがないために、3D モデルが正常に描画されない場合があります。
深度バッファを使う時には以下のコンストラクタのオーバーロードを使います。
new RenderTarget2D(GraphicsDevice graphicsDevice, int width, int height, bool mipMap, SurfaceFormat preferredFormat, DepthFormat preferredDepthFormat);preferredDepthFormat に深度バッファの種類を指定することで深度バッファのあるレンダーターゲットを生成できます。
参考:[ひにけにXNA] XNA Game Studio 4.0におけるRenderTargetの変更点