Welcome to the Oculus Developer Forums!

Your participation on the forum is subject to the Oculus Code of Conduct.

In general, please be respectful and kind. If you violate the Oculus Code of Conduct, your access to the developer forums may be revoked at the discretion of Oculus staff.

Adding a quad layer result in error -1005 (and -6001)

I'm trying to add a quad layer to an existing DX11 application.
This application produces a single eyefov (perfectly working) to which I would like to add a quad containing some data.

I have to say this this is my first project involving libOVR and I have very little understaing of DX11.
These are the steps I'm following...

During initialization:
1. allocated a swapchain with ovr_CreateTextureSwapChainDX during initialization. Which resulted in a length of 3 elements
2 got the  ID3D11Texture2D from each swapchain buffer (via ovr_GetTextureSwapChainBufferDX)
3. create an ID3D11RenderTargetView for each buffer
4. created an ovrLayerQuad structure of ovrLayerType_Quad type, ovrLayerFlag_HighQuality flags and the swapchain as ColorTexture

For Each Frame:
1. Got the current swapchain index via ovr_GetTextureSwapChainCurrentIndex
2. cleared the indexed target view via ClearRenderTargetView with color  { 1.0f, 0.0f, 0.0f, 1.0f }
3. submitted the swapchain with ovr_CommitTextureSwapChain
4. added the ovrLayerQuad structure to the array prepared by the existing code (and yes, I managed its size)
5. let the underlying code to submit the frame via ovr_SubmitFrame with updated array and layerCount

Each result has been checked for errors (where available)
What I see from my logs is:
- frame 1 (index 0) is ok,
- from frame 2 on I receive error -1005 (NULL texture provided to ovrLayerType_Quad) from ovr_SubmitFrame 
- from frame 4 (back to index 0) on I receive the error -6001 (There is no room in the texture swapchain to accept more frames..) from ovr_CommitTextureSwapChain

This behavior doesn't match anything I see in documentation and tutorials I see.

Why is SubmitFrame complaining about a NULL texture? I expected the swapchain to allocate all of them and the ClearRenderTargetView to fill each by color.

What am I missing?

Thank you for any hint because I'm really out of ideas right now.

Comments

  • thewhiteambitthewhiteambit Posts: 304
    Art3mis
    Just swap once after creation. It is a very old bug. Don't expect any bugs to be fixed by oculus.
  • AMVI_RiderAMVI_Rider Posts: 2
    NerveGear
    edited December 2
    Thank you, turned out that I was including SDK headers from the wrong path and the layer structure has changed in between.
Sign In or Register to comment.