If I set the requested caps with setFBO(true) on Windows (I think on Linux too), the chosen caps still return isFBO() as false. Am I missing something?
|
Administrator
|
On 11/27/2012 04:55 PM, ac [via jogamp] wrote:
> If I set the requested caps with setFBO(true) on Windows (I think on Linux > too), the chosen caps still return isFBO() as false. Am I missing something? FBObject backed GLAutoDrawable is only supported via GLDrawableFactory for offscreen GLAutoDrawables on all platforms. Only on OSX, certain usual onscreen GLAutoDrawables maybe forced to use FBO, if they implement OffscreenLayerOption like our AWT GLCanvas. Note: Our NewtCanvasAWT impl. it's as well, allowing FBO usage for the NEWT window while attached. See our many FBO use cases, but you probably simply want to use GLDrawableFactory.createOffscreen[Auto]Drawable(..) Implementing OffscreenLayerOption for other windowing system is possible. However we see this path only as a last resort, not a desired feature, since it enforces manual composition to render the content to the actual onscreen surface of the GLAutoDrawable. ~Sven signature.asc (909 bytes) Download Attachment |
Administrator
|
In reply to this post by ac
On 11/27/2012 05:12 PM, Sven Gothel wrote:
> On 11/27/2012 04:55 PM, ac [via jogamp] wrote: >> If I set the requested caps with setFBO(true) on Windows (I think on Linux >> too), the chosen caps still return isFBO() as false. Am I missing something? > > FBObject backed GLAutoDrawable is only supported via GLDrawableFactory > for offscreen GLAutoDrawables on all platforms. > > Only on OSX, certain usual onscreen GLAutoDrawables maybe > forced to use FBO, if they implement OffscreenLayerOption like our AWT GLCanvas. > > Note: Our NewtCanvasAWT impl. it's as well, allowing FBO usage for > the NEWT window while attached. > > See our many FBO use cases, <http://jogamp.org/git/?p=jogl.git;a=tree;f=src/test/com/jogamp/opengl/test/junit/jogl/acore;hb=HEAD> > but you probably simply want to use > GLDrawableFactory.createOffscreen[Auto]Drawable(..) > > Implementing OffscreenLayerOption for other windowing system is possible. > However we see this path only as a last resort, not a desired feature, > since it enforces manual composition to render the content to the > actual onscreen surface of the GLAutoDrawable. > > ~Sven signature.asc (909 bytes) Download Attachment |
You mean that I can force the creation of an offscreen autodrawable to "attach" to the main surface on windows by using GLDrawableFactory.createOffscreenDrawable(..)?
I didn't find examples that use GLDrawableFactory.createOffscreenDrawable(), is there any I should look at in particular? |
Administrator
|
On 11/27/2012 07:04 PM, ac [via jogamp] wrote:
> You mean that I can force the creation of an offscreen autodrawable to > "attach" to the main surface on windows by using > GLDrawableFactory.createOffscreenDrawable(..)? Nope, it's either or. What I meant is that on OSX FBO usage (GLFBODrawableImpl) is forced under certain circumstances (Applet, JVM version) and the CALayer compositing (AWT GLCanvas and NewtCanvasAWT). We _could_ implement a general FBO usage for all platforms ofc, and might be a possible last resort (Raspb-Pi, ..). A similar mechanism is used in GLJPanel. However, right now this offscreen FBO compositing into our onscreen GLAutoDrawable components or NewtCanvasAWT is considered only a last resort solution. You can ofc do this manually at all times, like: <http://jogamp.org/git/?p=jogl.git;a=blob;f=src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOOnThreadSharedContext1DemoES2NEWT.java;h=7d9a9c662316f00c5ee9fbe3b7161d9ad08d71ea;hb=HEAD> or <http://jogamp.org/git/?p=jogl.git;a=blob;f=src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOOffThreadSharedContextMix2DemosES2NEWT.java;h=3ecf89bfcb8f17a71774151bca6c507263264bdd;hb=HEAD> > > I didn't find examples that use GLDrawableFactory.createOffscreenDrawable(), > is there any I should look at in particular? <http://jogamp.org/git/?p=jogl.git;a=blob;f=src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOAutoDrawableFactoryNEWT.java;h=2dc547f39b55a2f0541a960a41bbb9437f78834c;hb=HEAD> and in general within <http://jogamp.org/git/?p=jogl.git;a=tree;f=src/test/com/jogamp/opengl/test/junit/jogl/acore;hb=HEAD> (as posted before) ~Sven signature.asc (909 bytes) Download Attachment |
Free forum by Nabble | Edit this page |