FOVE SUPPORT CENTER

FOVE on Linux

Follow

Comments

4 comments

  • Avatar
    suguru saito

    Hi,
    Following your post, I tried to write a client program with OpenGL on Linux.
    The program received gaze, HMD orientations and so on successfully. However,
    it received #8000 error code when sending texture data.

    In ~/.config/fove/Logs/FoveLog.log
    "No suitable gl borrowed backend"
    is reported.

    Is there any constrant to setup acceptable texture?
    How can I solve this problem?

    FoveAPI version is 1.1, which was installed by apt
    My client program is based on OpenGLExample.cpp for windows in "FOVE SDK 1.0.2"

    The texture was prepared as
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, eyeXres*2, eyeYres,
    0, GL_RGBA, GL_UNSIGNED_BYTE, imagedata );

    0
    Comment actions Permalink
  • Avatar
    Jeff

    Hi Saito-san,

    Thank you for the message. I looked into this, and the information in the article is wrong - we currently do not support OpenGL used in FoveClients. Once we add support we will also update the OpenGL example (though you can submit a merge request if you already did this), but I don't have a schedule for this yet.

    For the time being, you must use Vulkan to submit textures to the compositor on Linux, I updated the text of the article accordingly.

    Sorry about that. If this support is critical to your work (can't use Vulkan due to having existing large OpenGL codebase, etc), please get in touch directly (support AT fove-inc.com).

    0
    Comment actions Permalink
  • Avatar
    suguru saito

    Thank you for your reply.

    Probably, I can translate the code to Vulkan because my project program is not so large yet.
    but I am wondering the appropriate setup manner for the Fove API on the vulkan platform.
    Is it possible for you to provide some sample code related to vulkan texture setup part?

    # current available Fove runtime by apt seems version 1.1. By changing waitAndFetchNextEyeTrackingData() to waitForProcessedEyeFrame() , I could compile and execute a sample program in FoveCppSample from github

    0
    Comment actions Permalink
  • Avatar
    Jeff

    We don't yet have a Vulkan example, sorry about that. You can start from any generic Vulkan base code (either drawing to window or to background buffer, anything will do).

    Then you need to render to texture, and fill out the Fove::VulkanTexture class with the context, width, height, deviceMemory, image and imageView fields, and the client library will submit it to the compositor.

    It does this by using your existing vulkan context to copy to a shared buffer with the compositor.

    As a heads up, v1.1 is actually beta (though I think there's no way to downgrade at the moment), and I will be pushing the final version with numerous other changes to the ubuntu repos hopefully next week. It will contain a lot of bug fixes. The OpenGL example is still on v1.0 but we will update it shortly after release.

    0
    Comment actions Permalink

Please sign in to leave a comment.