I am developing an After Effects plugin where I use a VAO for OpenGL rendering. After full screen RAM preview the VAO, which has the handle number 1, is somehow deleted (glGenVertexArrays generates 1 again). The strange thing is that the shaders and framebuffers are still valid, so it's not the entire OpenGL context that gets reset. Does anyone know what could cause this?
How can an OpenGL Vertex Array Object get deleted without calling glDeleteVertexArrays?
926 Views Asked by s---70 At
1
There are 1 best solutions below
Related Questions in C++
- C++ using std::vector across boundaries
- Linked list without struct
- Connecting Signal QML to C++ (Qt5)
- how to get the reference of struct soap inherited in C++ Proxy/Service class
- Why we can't assign value to pointer
- Conversion of objects in c++
- shared_ptr: "is not a type" error
- C++ template using pointer and non pointer arguments in a QVector
- C++ SFML 2.2 vectors
- Lifetime of temporary objects
- I want to be able to use 4 different variables in a select statement in c ++
- segmentation fault: 11, extracting data in vector
- How to catch delay-import dll errors (missing dll or symbol) in MinGW(-w64)?
- How can I print all the values in this linked list inside a hash table?
- Configured TTL for A record(s) backing CNAME records
Related Questions in OPENGL
- setting OpenGL version in objective-C
- How to run OpenGL version 3.3 (with Intel HD 4000) on Ubuntu 15.04
- Can linear filtering be used for an FBO blit of an MSAA texture to non-MSAA texture?
- How to get shader version from QOpenGLShader?
- "Capture GPU Frame" in XCode -- iOS only?
- Difference between glewGetString(GLEW_VERSION) and glewIsSupported
- Tesselation result flickering - OpenGL/GLSL
- Water rendering in opengl
- Texture mapping consuming physical memory
- Rotating a Cube using Quaternions in PyOpenGL
- Switching from perspective orthographic projection in OpenGL
- FreeType2 and OpenGL : Use unicode
- Should Meshes with and without Skeleton use different Shaders?
- How to get accurate 3D depth from 2D screen mouse click for large scale object in OpenGL?
- Trying to load 2d texture with glTexImage2D, but just getting blank
Related Questions in VISUAL-STUDIO-2012
- Pass multiple account variables to single parameter
- Cannot find InvalidCastException in C# Application
- Upgrading separate Project Collection Database to new TFS Version
- How to add asp.net mvc5 to visual studio express 2012 edition?
- How to deploy Windows app with SQL Server database?
- The merge tool is not showing when call Workspace.ResolveConflict method in TFS 2012
- Toggle groups based on a parameter
- SQL server 2008 with 2012 Data tools
- Accessing parent parameters from child package SSIS 2012
- How to add parameters in the comments of a method in Visual Studio after it has been generated?
- No warning on deleting a forward declared pointer (Visual Studio)
- EWS Service.FindItems() throws an exception when using SearchFilter.IsEqualTo
- Label change when button click
- SharePoint 365 Development - Visual Studio 2012 - Actions4 file
- Team Foundation 2012 not recognising changes in vb6 app
Related Questions in AFTER-EFFECTS
- Debugging After Effect Scripts
- After Effects: Stop/Start at Markers and Loop
- Change duration of layer in composition by the javascript in after effects
- How add expressions in after effects to layer or composition using Extendscript and javascript?
- C# interoperability for Adobe After Effects
- How can an OpenGL Vertex Array Object get deleted without calling glDeleteVertexArrays?
- how to copy layer in after effect and just change this layer text?
- How to calculate rotation from 0 to 360?
- After Effects: AE Expressions Relative text file path
- How to export After Effect face tracking data?
- How to place embedded link in videos?
- AfterFx, crash when try run afterfx.exe -r
- After Effects bodymovin into PIXI.js
- Pulling / Stretching div on hover over border?
- Bodymovin shows wilder animation
Related Questions in VERTEX-ARRAY-OBJECT
- How can I properly manage data in modern OpenGL while considering performance?
- How can an OpenGL Vertex Array Object get deleted without calling glDeleteVertexArrays?
- OpenGL Draw Multiple Vertex Arrays
- When drawing multiple objects, when do you create a new vertex array object?
- openGL drawing GL_LINES giving incorrect result
- Why is my code not displaying on phone emulator with vertex array object in opengl
- Haskell opengl attrib is not active
- Issue with glGenVertexArrays and glGenVertexBuffers when drawing several cubes
- Verifying information about the graph
- Unable to obtain buffer object data through glGetBufferSubData
- vertex array objects in android opengl-es
- Call to glBindVertexArray(vao): what does it do if 'vao' is already bound, and how to design shape classes accordingly?
- reduced vertex buffer with indexed triangles
- Can't seem to get a VAO to render... Can someone help me see what I did wrong?
- Can I glDeleteBuffer a VBO and IBO after binding to a VAO?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The most likely explanation is, that your plugin gets a completely newly created OpenGL context everything time happens. If your OpenGL context shared its "list" namespace with another "caching" context, and this sharing is re-established for the new context, you'd observe this behavior.
When establishing OpenGL context namespace sharing some kinds of objects are shared, i.e. get their "internal reference counts" (you can't directly access thise) incremented for each participating context, while others are not. Objects that hold data in any form (textures, buffer objects, shaders) are shared, while abstraction objects that hold state (array objects and framebuffer objects among them) are not.
So if a new context is created and a namespace sharing with the cache context established, you'll see all the textures, shaders and so on, you created previously, while VAOs and FBOs would disappear.
If you want to catch this situation use
wglGetCurrentContextto get the OS handle. You can safely cast a windows handle touintptr_tinteger type, so for debugging you could print the value of the handle and look for if it changes.