Sounds like an interesting project. I agree that having robust, cross-platform, 
out-of-the-box (or an easy to install extension) would be valuable. Good luck 
with it, and I hope to see some updates from you as you make progress.

Best, Nick
On Apr 20, 2021, 11:32 PM -0400, Christoph Läubrich <lae...@laeubi-soft.de>, 
wrote:
> Thanks Ned and Nick for the feedback.
>
> jGL is a pure java impl so no graphics-card memory involved. This might
> sound strange, but there are two problems with the native ones:
>
> 1) I always have had issues regarding different OS, library versions,
> driver combinations and so on, and its hard to get bugfixes
> 2) Most of the time its hard to integrate these as SWT sadly does not
> ship e.g. with at least one "reference" implementation that could be
> used out-of-the box (lwjgl3-swt even don't integrate with default SWT GL...)
>
> I also don't need ultra-high gaming performance but a solid and working
> solution cross-platform.
>
> If you are interested take a look at the examples here
> https://github.com/jzy3d/jzy3d-api/tree/master/jzy3d-emul-gl they use
> AWT but working really well and with acceptable performance, so I
> investigate how to best port that to SWT.
>
> Am 20.04.21 um 21:12 schrieb Ned Twigg:
> > There are modern-ish (Open GL 3/3.2) SWT components maintained here:
> > https://github.com/LWJGLX/lwjgl3-swt <https://github.com/LWJGLX/lwjgl3-swt>
> >
> > Ned Twigg
> > Lead Software Engineer, DiffPlug LLC
> > 540-336-8043 (cell)
> > 888-513-6870 (fax)
> > 340 S Lemon Ave #3433, Walnut, CA 91789
> >
> > ᐧ
> >
> > On Tue, Apr 20, 2021 at 12:09 PM Nick Edgar <n.a.ed...@gmail.com
> > <mailto:n.a.ed...@gmail.com>> wrote:
> >
> > For OpenGL stuff, you want to avoid Image / ImageData and keep as
> > much of the rendering in OpenGL as possible, running on the graphics
> > card. Copying memory between GPU and main memory (Java heap) will be
> > slow.
> > SWT has bindings to some OpenGL libraries, but I don’t think they’ve
> > been updated in quite a while. Have a look though:
> > https://www.eclipse.org/swt/opengl/
> > <https://www.eclipse.org/swt/opengl/>
> >
> > Best, Nick
> > On Apr 20, 2021, 2:15 PM -0400, Christoph Läubrich
> > <lae...@laeubi-soft.de <mailto:lae...@laeubi-soft.de>>, wrote:
> > > Hi Nick,
> > >
> > > currently I don't have any measures and just trying to collect some
> > > information. My use case is to integrate a software OpenGL render
> > > (jGL)
> > > and for that I need to store the rendered pixels somewhere and of
> > > course
> > > later I need to paint them.
> > >
> > > I just wondering if I could short-circuit some of the steps
> > > (imagedata>image>gc) and maybe write directly inside some kind of
> > > direct-buffer.
> > >
> > > For example if I look at
> > >
> > > org.eclipse.swt.graphics.Image.init(ImageData) for GTK there seem to
> > > happen some more action than simply keeping a reference to the image
> > > data, e.g. a scale factor is computed, copy of data is involved, color
> > > transformation and so on are performed.
> > >
> > > Maybe as you mention it does not matter, on the other hand the faster
> > > the better here (maybe) this also is a bit depending on the effort to
> > > make this happen here of course but I'd like to investigate a bit if I
> > > should take some internals into account before starting to
> > > implement the
> > > actual thing.
> > >
> > >
> > > Am 20.04.21 um 19:19 schrieb Nick Edgar:
> > > > Hi Christoph,
> > > >
> > > > That approach is generally the recommended way to paint images
> > > > <https://www.eclipse.org/articles/Article-SWT-images/graphics-resources.html
> > > > <https://www.eclipse.org/articles/Article-SWT-images/graphics-resources.html>>
> > > >  in
> > > > SWT. Painting of a pre-created Image should be as fast as the OS
> > > > allows.
> > > > Have you measured the times involved? Which phase do you need to
> > > > speed up:
> > > >
> > > > 1. creating ImageData,
> > > > 2. creating Image from ImageData, or
> > > > 3. painting Image?
> > > >
> > > > If 1, see if you can directly manipulate the ImageData’s data, or
> > > > using
> > > > setPixels
> > > > <https://github.com/eclipse/eclipse.platform.swt/blob/eae1f39bbc4fdd01ac0416927ed3fa2d50ec9a9f/bundles/org.eclipse.swt/Eclipse%20SWT/common/org/eclipse/swt/graphics/ImageData.java#L1307
> > > > <https://github.com/eclipse/eclipse.platform.swt/blob/eae1f39bbc4fdd01ac0416927ed3fa2d50ec9a9f/bundles/org.eclipse.swt/Eclipse%20SWT/common/org/eclipse/swt/graphics/ImageData.java#L1307>>.
> > > > If 2, check which image format you’re using — it may not map
> > > > directly to
> > > > the native display, and thus be expensive to convert.
> > > > If 3, I’d be surprised, but it would be good to know details and the
> > > > times for 1,2,3.
> > > >
> > > > Best, Nick
> > > > On Apr 19, 2021, 5:20 AM -0400, Christoph Läubrich
> > > > <lae...@laeubi-soft.de <mailto:lae...@laeubi-soft.de>>, wrote:
> > > > > I have a pixel-buffer and like it o be painted in the most
> > > > > performant
> > > > > way onto a SWT Canvas.
> > > > >
> > > > > Current approach is to convert this into an ImageData, create an
> > > > > image
> > > > > and then paint it inside PaintListener to the GC.
> > > > >
> > > > > Is there a way to avoid this intermediate steps? I won't mind if
> > > > > I need
> > > > > to provide platform-specific implementations if it is possible
> > > > > to gain
> > > > > performance here.
> > > > > _______________________________________________
> > > > > platform-dev mailing list
> > > > > platform-dev@eclipse.org <mailto:platform-dev@eclipse.org>
> > > > > To unsubscribe from this list, visit
> > > > > https://www.eclipse.org/mailman/listinfo/platform-dev
> > > > > <https://www.eclipse.org/mailman/listinfo/platform-dev>
> > > >
> > > > _______________________________________________
> > > > platform-dev mailing list
> > > > platform-dev@eclipse.org <mailto:platform-dev@eclipse.org>
> > > > To unsubscribe from this list, visit
> > > > https://www.eclipse.org/mailman/listinfo/platform-dev
> > > > <https://www.eclipse.org/mailman/listinfo/platform-dev>
> > > >
> > > _______________________________________________
> > > platform-dev mailing list
> > > platform-dev@eclipse.org <mailto:platform-dev@eclipse.org>
> > > To unsubscribe from this list, visit
> > > https://www.eclipse.org/mailman/listinfo/platform-dev
> > > <https://www.eclipse.org/mailman/listinfo/platform-dev>
> > _______________________________________________
> > platform-dev mailing list
> > platform-dev@eclipse.org <mailto:platform-dev@eclipse.org>
> > To unsubscribe from this list, visit
> > https://www.eclipse.org/mailman/listinfo/platform-dev
> > <https://www.eclipse.org/mailman/listinfo/platform-dev>
> >
> >
> > _______________________________________________
> > platform-dev mailing list
> > platform-dev@eclipse.org
> > To unsubscribe from this list, visit 
> > https://www.eclipse.org/mailman/listinfo/platform-dev
> >
> _______________________________________________
> platform-dev mailing list
> platform-dev@eclipse.org
> To unsubscribe from this list, visit 
> https://www.eclipse.org/mailman/listinfo/platform-dev
_______________________________________________
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev

Reply via email to