Part of the Khronos Group
OpenGL.org

The Industry's Foundation for High Performance Graphics

from games to virtual reality, mobile phones to supercomputers

Results 1 to 6 of 6

Thread: Capture OpenGL stream

  1. #1
    Junior Member Newbie
    Join Date
    Mar 2012
    Location
    Baden-Württemberg
    Posts
    3

    Capture OpenGL stream

    Hi OpenGL Forum!

    Perhaps some of you know TechViz? essentially a tool to capture the OpenGL stream and visualize in a Cave, works for example with CAD programs like Catia and ProE..

    I was wondering how one could do something similar..

    I would like to access the OpenGL Stream and save the scene to HD, this way I could simply load the stored stream file and wouldn't have to start Catia or ProE..

    The problem I think is an old one, it takes to much time to visualize stuff in a Cave.. and I am trying to do it a little faster, ProE with techViz takes too long to fire up (and is not allways very stable), exporting the ProE data in an Open format yields ugly results, and the native formats are all closed ones

    Any thoughts how to grab that OpenGL stream?^_^

  2. #2
    Member Regular Contributor
    Join Date
    Jan 2012
    Location
    Germany
    Posts
    325

    Re: Capture OpenGL stream

    You can intercept all OpenGL commands and store them with all paramteters in your own format to disk (incl. buffer data, textures, shaders for which the gl calls get pointers). Your app will have to replace the opengl dll or shared library and replace all gl commands. glIntercept and most gl debuggers use this approach to catch the gl commands for visualization, statistics etc.
    The replay would be like a video and non-interactive as the stream has no knowledge of the datastructures. Not sure if it's useful, but doable.

  3. #3
    Junior Member Newbie
    Join Date
    Mar 2012
    Location
    Baden-Württemberg
    Posts
    3

    Re: Capture OpenGL stream

    Hmm, TechViz only takes the scene data (geometries, materials, lights) and visualizes them, the interaction is from techViz, the viewport/camera/navigation is also from techviz.

    I am not sure they replace the opengl dlls.

    To use their tool you have to tell it what OpenGL window to take the stream from, for instance I start ProE, open my ProE file, and then I start TechViz where I press a button and then I click on the main viewport of ProE.

    I have no idea what happens in the background
    I would like to make my own tool with C++/OpenGL, but I have no idea what exactly this OpenGL stream is (I expect the vertex lists, materials, etc..).

  4. #4
    Member Regular Contributor
    Join Date
    Apr 2007
    Posts
    269

    Re: Capture OpenGL stream

    BuGLE is capturing the OpenGL commands with the trace filter:
    http://www.opengl.org/sdk/tools/BuGL...on/trace.7.php

    BuGLE is a free software under the GPL, so you can get the source code and figure out how it implements the command call capture.

    http://www.opengl.org/sdk/tools/BuGLe/index.php

  5. #5
    Junior Member Newbie
    Join Date
    Mar 2012
    Location
    Baden-Württemberg
    Posts
    3

    Re: Capture OpenGL stream

    thank you very much for your answers!
    I'll try those tools, perhapst I can simply parse the log file from bugle, who knows

    ..if I understand correctly then all those tools use some kind of library substitution, if anyone knows of another method.. but I think thats it.

  6. #6
    Newbie Newbie
    Join Date
    Nov 2012
    Posts
    1
    Quote Originally Posted by buntuOGL View Post
    ..if I understand correctly then all those tools use some kind of library substitution, if anyone knows of another method.. but I think thats it.
    Detour from Microsoft also re-routs command stream I guess. Also chromium seems to have streaming capabilities. Have you tried any of these?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •