From: Daniel E. S. <dan...@gm...> - 2006-08-24 14:20:15
|
I would like to have chromium render to a context that I have already created. Is the best way to do this is re-writing a render spu with that purpose? I hacked the render spu a bit for the prototype and got rid of any window/context creation calls and makeCurrent calls. What I really would like to do is just use Chromium to transport the graphics stream. I would like to be in charge of opening windows and contexts, and then telling chromium to render (insert the stream) into each window/context. Ideas? -Daniel |
From: Brian P. <bri...@tu...> - 2006-08-24 16:57:33
|
Daniel E. Shipton wrote: > I would like to have chromium render to a context that I have already > created. You mean render to a window, right? A rendering context != a window. > Is the best way to do this is re-writing a render spu with that > purpose? Have you seen the render SPU's 'render_to_app_window' option? > I hacked the render spu a bit for the prototype and got rid of > any window/context creation calls and makeCurrent calls. What I really > would like to do is just use Chromium to transport the graphics stream. > I would like to be in charge of opening windows and contexts, and then > telling chromium to render (insert the stream) into each > window/context. Ideas? Well, if you don't want to mess with X windows or GLX at all, you can use the native Chromium interface for creating windows, rendering contexts, binding them, etc. See the cr/include/chromium.h file. -Brian |
From: Daniel E. S. <dan...@gm...> - 2006-08-24 17:14:13
|
On 8/24/06, Brian Paul <bri...@tu...> wrote: > > Daniel E. Shipton wrote: > > I would like to have chromium render to a context that I have already > > created. > > You mean render to a window, right? A rendering context != a window. A passive window that already has a context that was created by another program for me. > Is the best way to do this is re-writing a render spu with that > > purpose? > > Have you seen the render SPU's 'render_to_app_window' option? I have seen the render_to_app_window, but this is for the desktop application, not the server(render nodes). I want the render nodes that are rendering the crapfaker graphics to be essentially injecting the OpenGL stream into this passive window. I ulitimately am going to be changing the OpenGL stream to cut out the view matrices and such but this is the first step before I get to that. > I hacked the render spu a bit for the prototype and got rid of > > any window/context creation calls and makeCurrent calls. What I really > > would like to do is just use Chromium to transport the graphics stream. > > I would like to be in charge of opening windows and contexts, and then > > telling chromium to render (insert the stream) into each > > window/context. Ideas? > > Well, if you don't want to mess with X windows or GLX at all, you can > use the native Chromium interface for creating windows, rendering > contexts, binding them, etc. See the cr/include/chromium.h file. I would like to avoid getting deep into X and GLX if possible ;) -Daniel |
From: Brian P. <bri...@tu...> - 2006-08-24 19:31:16
|
Daniel E. Shipton wrote: > On 8/24/06, *Brian Paul* <bri...@tu... > <mailto:bri...@tu...>> wrote: > > Daniel E. Shipton wrote: > > I would like to have chromium render to a context that I have already > > created. > > You mean render to a window, right? A rendering context != a window. > > > A passive window that already has a context that was created by another > program for me. > > > Is the best way to do this is re-writing a render spu with that > > purpose? > > Have you seen the render SPU's 'render_to_app_window' option? > > > I have seen the render_to_app_window, but this is for the desktop > application, not the server(render nodes). > I want the render nodes that are rendering the crapfaker graphics to be > essentially injecting the OpenGL stream into this passive window. I > ulitimately am going to be changing the OpenGL stream to cut out the > view matrices and such but this is the first step before I get to that. Have you looked at the reassemble.conf file? It does tilesort then puts the results back into the original application window. -Brian |
From: Daniel E. S. <dan...@gm...> - 2006-08-24 20:08:18
|
[snip] > > > > I have seen the render_to_app_window, but this is for the desktop > > application, not the server(render nodes). > > I want the render nodes that are rendering the crapfaker graphics to be > > essentially injecting the OpenGL stream into this passive window. I > > ulitimately am going to be changing the OpenGL stream to cut out the > > view matrices and such but this is the first step before I get to that. > > Have you looked at the reassemble.conf file? It does tilesort then > puts the results back into the original application window. Brian, I am trying to take the graphics stream from a desktop app and put the stream back into a passive window (chromium would not control this window at all) with the projection matrices changed to my own custom view or views(think 6 sided CAVE) so I can move around within the graphics stream. Hopefully this gives you a better idea of what I am trying to accomplish. -dan |
From: Brian P. <bri...@tu...> - 2006-08-24 20:15:23
|
Daniel E. Shipton wrote: > [snip] > > > > > I have seen the render_to_app_window, but this is for the desktop > > application, not the server(render nodes). > > I want the render nodes that are rendering the crapfaker graphics > to be > > essentially injecting the OpenGL stream into this passive window. I > > ulitimately am going to be changing the OpenGL stream to cut out the > > view matrices and such but this is the first step before I get to > that. > > Have you looked at the reassemble.conf file? It does tilesort then > puts the results back into the original application window. > > > Brian, > > I am trying to take the graphics stream from a desktop app and put the > stream back into a passive window (chromium would not control this > window at all) with the projection matrices changed to my own custom > view or views(think 6 sided CAVE) so I can move around within the > graphics stream. Hopefully this gives you a better idea of what I am > trying to accomplish. OK, I didn't know what you meant by a passive window. The only thing I can think of would be for the app that controls your passive window to somehow pass it's ID to the Cr mothership as the 'crut' window. Then, enable the render SPU's 'render_to_crut_window' option. -Brian |
From: Daniel E. S. <dan...@gm...> - 2006-08-24 20:29:19
|
On 8/24/06, Brian Paul <bri...@tu...> wrote: > > Daniel E. Shipton wrote: > > [snip] > > > > > > > > I have seen the render_to_app_window, but this is for the desktop > > > application, not the server(render nodes). > > > I want the render nodes that are rendering the crapfaker graphics > > to be > > > essentially injecting the OpenGL stream into this passive > window. I > > > ulitimately am going to be changing the OpenGL stream to cut out > the > > > view matrices and such but this is the first step before I get to > > that. > > > > Have you looked at the reassemble.conf file? It does tilesort then > > puts the results back into the original application window. > > > > > > Brian, > > > > I am trying to take the graphics stream from a desktop app and put the > > stream back into a passive window (chromium would not control this > > window at all) with the projection matrices changed to my own custom > > view or views(think 6 sided CAVE) so I can move around within the > > graphics stream. Hopefully this gives you a better idea of what I am > > trying to accomplish. > > OK, I didn't know what you meant by a passive window. > > The only thing I can think of would be for the app that controls your > passive window to somehow pass it's ID to the Cr mothership as the > 'crut' window. Then, enable the render SPU's 'render_to_crut_window' > option. For my prototype that is exactly where I started. But it didn't work because it would always complain about the visual s not matching up. Eventually I just made the renderspu not call SystemMakeCurrent. That ended up working but I this solution won't work when there are multiple windows opening on a display. The other thing I am trying to accomplish is removing the mothership from the equation as much as possible. So passing things to the mothership will not be very viable. I just want to multiplex the stream out to render nodes. So the mothership has little configuration to know about. -Dan |