Skip to content

Stereo3D

Chuck Walbourn edited this page Jul 13, 2017 · 9 revisions

Stereo3DMatrixHelper.h/.cpp contains a prototype set of functions for creating Stereo 3D projections. It was never fully validated or completed, but might be a useful starting point.

This function filled out a default STEREO_PARAMETERS which you could then modify before passing on to the other functions.

void StereoCreateDefaultParameters(_Out_ STEREO_PARAMETERS* pStereoParameters);

These functions compute the stereo projection matrices. You'd call it twice, once for STEREO_CHANNEL_LEFT and once for STEREO_CHANNEL_RIGHT to get two matrices. If you pass nullptr for the pStereoParameters parameter, you get the values obtained from StereoCreateDefaultParameters.

XMMATRIX StereoProjectionFovLH(_In_opt_ const STEREO_PARAMETERS* pStereoParameters,
    STEREO_CHANNEL Channel, float FovAngleY, float AspectRatio,
    float NearZ, float FarZ, STEREO_MODE StereoMode);

XMMATRIX StereoProjectionFovRH(_In_opt_ const STEREO_PARAMETERS* pStereoParameters,
    STEREO_CHANNEL Channel, float FovAngleY, float AspectRatio,
    float NearZ, float FarZ, STEREO_MODE StereoMode);

For Use

  • Universal Windows Platform apps
  • Windows desktop apps
  • Windows 11
  • Windows 10
  • Windows 8.1
  • Xbox One
  • Xbox Series X|S
  • Windows Subsystem for Linux

Architecture

  • x86
  • x64
  • ARM64

For Development

  • Visual Studio 2022
  • Visual Studio 2019 (16.11)
  • clang/LLVM v12 - v18
  • GCC 10.5, 11.4, 12.3
  • MinGW 12.2, 13.2
  • Intel Classic Compiler
  • Intel oneAPI Compiler

Related Projects

DirectX Tool Kit for DirectX 11

DirectX Tool Kit for DirectX 12

DirectXMesh

DirectXTex

Tools

Test Suite

See also

DirectX Landing Page

Clone this wiki locally