https://jogamp.org/wiki/api.php?action=feedcontributions&user=Sgothel&feedformat=atomJogampWiki - User contributions [en]2024-03-29T11:12:15ZUser contributionsMediaWiki 1.38.4https://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2205SW Tracking Report Feature Objectives Overview2024-03-09T23:41:59Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland]] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
** [https://jausoft.com/blog/2024/02/13/fixing-jogamps-graph-delaunay-tessellation-of-complex-non-convex-shapes/ First round done]<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFmpeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== OpenJDK Compatibility / Integration ==<br />
<br />
Objectives should be to allow seamless integration into<br />
OpenJDK's deployment and JVM launch methods.<br />
<br />
A dual JAR file to be used with and without modules is desired, <br />
however it seems that certain JAR options are not available with this<br />
configuration if our classes are not build as modules itself.<br />
<br />
An optional [https://jogamp.org/bugzilla/show_bug.cgi?id=1505#c0 JVM Launch Pad (JLP)] might be helpful,<br />
even though it instructs further complexity and is not helping<br />
with a vanilla OpenJDK deployment.<br />
<br />
=== OpenJDK >= 11 ===<br />
<br />
See [https://jogamp.org/bugzilla/show_bug.cgi?id=1404 Bug 1404]<br />
<br />
'''JVM Commandline Parameter'''<br />
<br />
Current used 'add-opens' in my JogAmp test scripts for Java >= 11,<br />
covering all AWT utilization including background erase is:<br />
<br />
<pre><br />
--add-opens java.desktop/sun.awt=ALL-UNNAMED <br />
--add-opens java.desktop/sun.awt.windows=ALL-UNNAMED <br />
--add-opens java.desktop/sun.java2d=ALL-UNNAMED<br />
</pre><br />
<br />
=== OpenJDK >= 2x ===<br />
<br />
See [https://jogamp.org/bugzilla/show_bug.cgi?id=1505 Bug 1505]<br />
<br />
'''JVM Commandline Parameter'''<br />
<br />
Current used 'add-opens' in my JogAmp test scripts for Java >= 23,<br />
covering all AWT utilization including background erase is:<br />
<br />
<pre><br />
--add-opens java.desktop/sun.awt=ALL-UNNAMED <br />
--add-opens java.desktop/sun.awt.windows=ALL-UNNAMED <br />
--add-opens java.desktop/sun.java2d=ALL-UNNAMED<br />
--TO_BE_DETERMINED<br />
</pre><br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2200SW Tracking Report Feature Objectives Overview2024-02-14T00:15:09Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland]] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
** [https://jausoft.com/blog/2024/02/13/fixing-jogamps-graph-delaunay-tessellation-of-complex-non-convex-shapes/ First round done]<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFmpeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2199SW Tracking Report Feature Objectives Overview2024-02-14T00:14:51Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland]] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
** ([https://jausoft.com/blog/2024/02/13/fixing-jogamps-graph-delaunay-tessellation-of-complex-non-convex-shapes/ first round done])<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFmpeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Completed_Features_Objectives&diff=2198Completed Features Objectives2024-02-09T13:09:46Z<p>Sgothel: /* Graph */</p>
<hr />
<div>Also see [[SW Tracking Report Feature Objectives Overview]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Resolved GraphUI]<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Java 11 ==<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1363&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2197SW Tracking Report Feature Objectives Overview2024-02-09T13:06:08Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland]] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFmpeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2196SW Tracking Report Feature Objectives Overview2024-02-09T12:13:50Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland]] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2195SW Tracking Report Feature Objectives Overview2024-02-09T12:13:38Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#NEWT_+_Wayland|Wayland] & [[#Vulkan|Vulkan]] support could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2194SW Tracking Report Feature Objectives Overview2024-02-09T12:12:32Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#Vulkan|Vulkan Support]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= NEWT + Wayland =<br />
Currently NEWT supports the X11/Xorg windowing server on Unix alike platforms.<br />
<br />
It might be desired to add direct support to Wayland, as we already added support for <br />
[https://jogamp.org/bugzilla/show_bug.cgi?id=1156 bare metal devices w/o a windowing system via the Linux DRM/GBM console mode] <br />
throughout JOGL + NEWT.<br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2193SW Tracking Report Feature Objectives Overview2024-02-09T12:01:16Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] as well as [[#Vulkan|Vulkan Support]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2192SW Tracking Report Feature Objectives Overview2024-02-09T12:00:17Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph|Graph & Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2191SW Tracking Report Feature Objectives Overview2024-02-09T11:44:43Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''([https://jausoft.com/blog/2024/02/07/graphui-mediaplayer-feature-complete/ done])''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2190SW Tracking Report Feature Objectives Overview2024-02-09T11:39:20Z<p>Sgothel: /* Graph */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
[https://jausoft.com/blog/tag/graph_type_rendering/ Graph/GraphUI Progress Blog Entries]<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Use of super-sized triangles to render Graph lines & curves to allow<br />
** Using a one-pass smooth AA Graph renderer to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
** Generate outlines, i.e. outlined fonts<br />
** Generate special effects like glowing/pumping outlines indicating selection etc<br />
* Allow passing or better attaching per-vertex color to Graph Outline (API)<br />
* <s>Add subtitles in MediaPlayer GraphUI widget</s> ''(done)''<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2189SW Tracking Report Feature Objectives Overview2024-01-21T05:15:16Z<p>Sgothel: /* Graph UI */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Implement a one-pass smooth AA Graph renderer, allowing to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
* Allow passing per-vertex color to Graph Outline (API)<br />
* Add subtitles in MediaPlayer GraphUI widget<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI, while [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ this update shows clipping and widgets]. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2188SW Tracking Report Feature Objectives Overview2024-01-21T05:13:53Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached [https://jausoft.com/blog/2024/01/21/graphui-frustum-culling-clipping-modelview-space/ UI usability with widgets and clipping],<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Implement a one-pass smooth AA Graph renderer, allowing to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
* Allow passing per-vertex color to Graph Outline (API)<br />
* Add subtitles in MediaPlayer GraphUI widget<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Maintainer_and_Contacts&diff=2187Maintainer and Contacts2024-01-21T00:57:16Z<p>Sgothel: /* Sven Gothel */</p>
<hr />
<div>= Maintainer =<br />
<br />
* JogAmp IT Infrastructure, Architecture and Janitor<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Gluegen<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* JOAL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** [[#Xerxes Rånby|Xerxes Rånby]]<br />
* JOGL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** GPU Curve Rendering<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
*** [[#Rami Santina|Rami Santina]]<br />
** SWT Support<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
* Java3D<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOCL<br />
** [[#Wade Walker|Wade Walker]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Engine Support<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
* Maven packages<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Art (graphics, demos, ..)<br />
** [[#Dominik Ströhlein|Dominik Ströhlein]]<br />
* ''Open Positions''<br />
** jogl-utils<br />
<br />
= Contacts =<br />
<br />
You can address the JogAmp Community via:<br />
* [http://jogamp.org/ Web]<br />
* [http://forum.jogamp.org/ Forum/Mailinglist]<br />
* Email<br />
** sgothel [@] jausoft.com<br />
** mediastream [@] jogamp.org<br />
<br />
== '''Commercial Support''' ==<br />
<br />
<div id="Contact_Maintainer"><br />
Please feel welcome to contact the maintainers for commercial support inquiries,<br />
specific questions you seem not fit for public discussions, but '''most important to fund our work'''.<br />
</div><br />
<br />
== Sven Gothel ==<br />
* sgothel [@] jausoft.com<br />
* http://jausoft.com/blog/tag/jogamp/<br />
* Contracting and funding<br />
** via ''[https://jausoft.com Jausoft - Göthel Software e.K.], contact sgothel [@] jausoft.com''<br />
===== Acknowledgment =====<br />
Göthel Software e.K. and I like to express our gratitude to <br />
[http://www.cctintl.com/ CCT International], who were supporting this project during the period from mid 2010 up until mid 2019.<br />
<br />
== Julien Gouesse ==<br />
* gouessej [@] orange.fr<br />
* http://gouessej.wordpress.com/tag/jogl/<br />
<br />
== Wade Walker ==<br />
* http://wadeawalker.wordpress.com/<br />
<br />
== Harvey Harrison ==<br />
* harvey.harrison [@] gmail.com<br />
* https://github.com/hharrison<br />
<br />
== Xerxes Rånby ==<br />
* xerxes [@] gudinna.com<br />
* http://labb.zafena.se/?category_name=jogamp<br />
* http://twitter.com/xranby<br />
** Micro payments via flatter: http://flattr.com/thing/1074999/JogAmp-JOAL-Maintainer-Xerxes-Rnby<br />
<br />
== Mark Raynsford ==<br />
* http://io7m.com/<br />
<br />
== Rami Santina ==<br />
* http://ramisantina.com/blog/<br />
<br />
== Dominik Ströhlein ==<br />
* http://copypastaresearch.tumblr.com/</div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2186SW Tracking Report Feature Objectives Overview2024-01-21T00:55:32Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached UI usability with widgets and clipping,<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Implement a one-pass smooth AA Graph renderer, allowing to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
* Allow passing per-vertex color to Graph Outline (API)<br />
* Add subtitles in MediaPlayer GraphUI widget<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
Further more, if so desired, a C++ implementation of our Graph + GraphUI framework <br />
may also be of interest.<br />
<br />
In case any company or organization is interested and likes to support <br />
this work and may also like to receive support in adopting this framework,<br />
please contact [[Maintainer_and_Contacts#Commercial_Support|Göthel Software e.K.]]<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2185SW Tracking Report Feature Objectives Overview2024-01-21T00:48:30Z<p>Sgothel: /* Desired Work Items */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached UI usability with widgets and clipping,<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Implement a one-pass smooth AA Graph renderer, allowing to save resources otherwise used in our pass-2 FBO supersampling renderer<br />
* Allow passing per-vertex color to Graph Outline (API)<br />
* Add subtitles in MediaPlayer GraphUI widget<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing)<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2184SW Tracking Report Feature Objectives Overview2024-01-21T00:42:21Z<p>Sgothel: /* Graph */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Desired Work Items ==<br />
<br />
This is an ad-hoc list of desired features and fixes,<br />
which shall result in proper bug-reports soon.<br />
<br />
After having reached UI usability with widgets and clipping,<br />
the following items are becoming more interesting<br />
<br />
* Fix general issues with current implementation and API, if any<br />
* Fix Graph rendering bugs (Tessellation)<br />
* Implement a one-pass smooth AA Graph renderer, allowing to save resources of pass-2 FBO supersampling<br />
* Allow passing per-vertex color to Graph Outline (API)<br />
* Add subtitles in MediaPlayer GraphUI widget<br />
* Add video encoding in our FFMPeg binding, i.e. an FFMPEGMediaRecorder (Encoding + Multiplexing) <br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Completed_Features_Objectives&diff=2183Completed Features Objectives2023-09-23T23:36:26Z<p>Sgothel: </p>
<hr />
<div>Also see [[SW Tracking Report Feature Objectives Overview]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Resolved GraphUI]<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Java 11 ==<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1363&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Completed_Features_Objectives&diff=2182Completed Features Objectives2023-09-23T23:35:57Z<p>Sgothel: </p>
<hr />
<div>Also see [[SW Tracking Report Feature Objectives Overview]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Resolved GraphUI]<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Java 11 ==<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1363&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1363"],<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2181SW Tracking Report Feature Objectives Overview2023-09-23T23:33:50Z<p>Sgothel: /* Graph */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2180SW Tracking Report Feature Objectives Overview2023-09-23T23:31:50Z<p>Sgothel: /* Jogl / Graph */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2179SW Tracking Report Feature Objectives Overview2023-09-23T22:47:19Z<p>Sgothel: /* Graph */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<br />
;Open Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''graphui''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
;Open Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED", "UNCONFIRMED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Completed Items ''Jogl / graph''<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2178SW Tracking Report Feature Objectives Overview2023-09-23T19:03:02Z<p>Sgothel: /* Graph UI */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<bugzilla><br />
{<br />
"id":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["803"],<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;All of Product ''graphui''<br />
<bugzilla><br />
{<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
<bugzilla><br />
{<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Completed_Features_Objectives&diff=2177Completed Features Objectives2023-09-23T18:59:34Z<p>Sgothel: </p>
<hr />
<div>Also see [[SW Tracking Report Feature Objectives Overview]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Resolved GraphUI]<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"graphui",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Java 11 ==<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1363&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1363"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1363"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2176SW Tracking Report Feature Objectives Overview2023-09-23T18:30:29Z<p>Sgothel: </p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<bugzilla><br />
{<br />
"id":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;All of Product ''graphui''<br />
<bugzilla><br />
{<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
<bugzilla><br />
{<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Completed_Features_Objectives&diff=2175Completed Features Objectives2023-09-23T18:30:20Z<p>Sgothel: </p>
<hr />
<div>Also see [[SW Tracking Report Feature Objectives Overview]] ...<br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Java 11 ==<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1363&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1363"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1363"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Jogamp_Versioning_and_Releases&diff=2174Jogamp Versioning and Releases2023-08-18T17:21:45Z<p>Sgothel: /* Releases */</p>
<hr />
<div>__TOC__<br />
<br />
== Semantic Version Numbers ==<br />
<br />
Given a version number MAJOR.MINOR.PATCH, increment the:<br />
<br />
* MAJOR version indicates major incompatible API changes,<br />
* MINOR version indicates minor incompatible API changes, and<br />
* PATCH version indicates backwards-compatible bug fixes or added backwards-compatible functionality, i.e. these versions are binary compatible and a drop-in replacement.<br />
<br />
Above semantics describe binary compatibility, <br />
i.e. whether a new version can be used without recompilation (PATCH increment only).<br />
<br />
Above semantics differ from [http://semver.org/ Semantic Versioning] since our MINOR <br />
change allows minor incompatible API changes.<br />
<br />
An example of a MAJOR incompatible API increment is JOGL 1.y.z -> 2.y.z,<br />
where we thoroughly change the OO model, packaging, implementation or overall semantics.<br />
<br />
Upgrading to a MINOR incompatible API increment of JogAmp <br />
shall assure users that the model has not changed and the differences are indeed minor.<br />
<br />
Hence a PATCH increment not only allows bugfixes but also <br />
additional functionality, both backwards-compatible.<br />
<br />
Note that manual test results showed that <i>none</i> of our 2.1 PATCH incrementing releases<br />
were satisfying above semantics and hence incompatibilities could appear.<br />
While this might be unlikely, the tests exposed at least removed protected fields or methods<br />
at some uncommon places and hence compatibility was broken.<br />
<br />
From version 2.2.0 on, we incorporate [https://github.com/jeluard/semantic-versioning semver]<br />
in our JogAmp junit tests to guarantee automated validation and proper version increments.<br />
<br />
See [{{SERVER}}/bugzilla/show_bug.cgi?id=1008 Bug 1008].<br />
<br />
== Releases ==<br />
<br />
* [[Release 2.5.0|2.5.0]], [[Release 2.4.0|2.4.0]]<br />
* [[Release 2.3.2|2.3.2]], [[Release 2.3.1|2.3.1]], [[Release 2.3.0|2.3.0]]<br />
* [[Release 2.2.4|2.2.4]], [[Release 2.2.3|2.2.3]], [[Release 2.2.2|2.2.2]], [[Release 2.2.1|2.2.1]], [[Release 2.2.0|2.2.0]]<br />
* [[Release 2.1.5|2.1.5]], [[Release 2.1.4|2.1.4]], [[Release 2.1.3|2.1.3]], [[Release 2.1.2|2.1.2]], [[Release 2.1.1|2.1.1]], [[Release 2.1.0|2.1.0]]<br />
* [[Release 2.0.2|2.0.2]]<br />
** [[Release 2.0.2-rc12|2.0.2-rc12]],[[Release 2.0-rc11|2.0-rc11]],[[Release 2.0-rc10|2.0-rc10]], [[Release 2.0-rc9|2.0-rc9]], [[Release 2.0-rc8|2.0-rc8]], [[Release 2.0-rc7|2.0-rc7]], [[Release 2.0-rc6|2.0-rc6]], [[Release 2.0-rc5|2.0-rc5]], [[Release 2.0-rc4|2.0-rc4]], [[Release 2.0-rc3|2.0-rc3]], [[Release 2.0-rc2|2.0-rc2]], [[Release 2.0-rc1|2.0-rc1]]<br />
<br />
[[Android Packages]]<br />
<br />
=== Current Aliases ===<br />
<br />
* [http://jogamp.org/deployment/jogamp-current/ jogamp-current] -> [http://jogamp.org/deployment/v2.5.0/ v2.5.0]<br />
* [http://jogamp.org/deployment/jogamp-next/ jogamp-next] -> [http://jogamp.org/deployment/v2.5.0/ v2.5.0]<br />
* [http://jogamp.org/deployment/webstart/ webstart] -> [http://jogamp.org/deployment/v2.5.0/ v2.5.0]<br />
* [http://jogamp.org/deployment/webstart-next/ webstart-next] -> [http://jogamp.org/deployment/v2.5.0/ v2.5.0]<br />
<br />
== Release Classification ==<br />
<br />
Releases follow the above mentioned [[#Version_Classification|versioning]] scheme.<br />
<br />
The following list is ordered from <i>stable and oldest</i> to <i>experimental and newest</i>.<br />
<br />
=== [{{SERVER}}/deployment/jogamp-current/ Signed Release] ===<br />
* This is our current signed release, IE a manual promoted and signed autobuild.<br />
* It is suitable for JNLP and Applets (with or without JNLP).<br />
* This is the <b>most stable and recommended</b> version.<br />
* [{{SERVER}}/deployment/jogamp-current/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.<br />
* [[Downloading and installing JOGL#Downloading the latest aggregated autobuild|this section]]<br />
* See instructions for [[Downloading and installing JOGL#Downloading the latest stable version|downloading and installing]].<br />
<br />
=== [{{SERVER}}/deployment/jogamp-next/ Signed Release Candidate] ===<br />
* This is our signed release candidate, IE a manual promoted and signed autobuild.<br />
* It is suitable for JNLP and Applets (with or without JNLP).<br />
* [{{SERVER}}/deployment/jogamp-next/archive/ Platform ZIP archive's URL] for manual installation.<br />
* [{{SERVER}}/deployment/jogamp-next/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.<br />
* See instructions for [[Downloading and installing JOGL#Downloading the latest stable version|downloading and installing]].<br />
<br />
=== [{{SERVER}}/deployment/v2.0-rc3/ Signed Release Specific Version] ===<br />
* This is a specific signed release, IE a manual promoted autobuild.<br />
* It is suitable for JNLP and Applets (with or without JNLP).<br />
* [{{SERVER}}/deployment/v2.0-rc3/archive/ Archive folder] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.<br />
* See instructions for [[Downloading and installing JOGL#Downloading the latest stable version|downloading and installing]].<br />
<br />
=== [{{SERVER}}/deployment/archive/master/?C=M;O=D Latest Aggregated Autobuild] ===<br />
* This is our latest aggregated autobuild, which we seem fit for broad testing and submitting a [[Jogl FAQ#Bugreports & Testing|bugreport]].<br />
* It is not signed and hence not suitable for JNLP and Applets.<br />
* See instructions for [[Downloading and installing JOGL#Downloading the latest aggregated autobuild|downloading and installing]].<br />
<br />
=== [{{SERVER}}/deployment/autobuilds/ Autobuilds] ===<br />
What others call <i>nightlies</i>, we call it autobuild.<br />
Autobuilds are provided by our [{{SERVER}}/chuck/job/jogl/ Jenkins build server]:<br />
* For [{{SERVER}}/chuck/job/jogl/ each project build reports] are available:<br />
** [{{SERVER}}/chuck/job/jogl/lastSuccessfulBuild/ Last Successful JOGL Build]<br />
** [{{SERVER}}/chuck/job/jogl/476/ JOGL Build 476]<br />
* They are [{{SERVER}}/chuck/job/jogl/476/changes#detail0 triggered by git commits] <br />
* Here is a [{{SERVER}}/chuck/job/jogl/changes list of all JOGL changes].<br />
* These builds are also tested on all supported platforms automatically with junit, see a [{{SERVER}}/chuck/job/jogl/label=win7-x86_64-nvida/lastCompletedBuild/testReport/ complete test report from one platform].<br />
* [{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ Autobuild URL] containing [[#Autobuild_Files|platform ZIP files]] for manual installation.<br />
<br />
=== [{{SERVER}}/deployment/archive/ Archived builds] ===<br />
* Contains archived builds and releases.<br />
* May be signed.<br />
* [{{SERVER}}/deployment/archive/rc/gluegen_28-joal_17-jogl_41-jocl_25/archive/ archive URL] containing [[#Release_and_Archived_Files|platform ZIP files]] for manual installation.<br />
<br />
== Version Classification ==<br />
<br />
=== Version Fingerprint ===<br />
<br />
You can get the [[Jogl FAQ#Get the Source Code|get the source code]] via git, <br />
hence all references of a JogAmp module version boils down to:<br />
<br />
* module base version<br />
* git commit sha1 hash<br />
* build number<br />
* module OS and ARCH<br />
<br />
We construct a full version string as follows:<br />
<pre><br />
<module>-<base_version>-b<build_number>-<yyyymmdd><br />
</pre><br />
<br />
=== artifact.properties ===<br />
<br />
The version fingerprint is available in the <br />
[{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/artifact.properties artifact.properties] file:<br />
<pre><br />
gluegen.build.branch=origin/master<br />
gluegen.build.commit=3fec08a69de571cf2939e6028487faea8a23ccaa<br />
gluegen.build.id=2013-11-01_05-57-23<br />
gluegen.build.number=741<br />
gluegen.build.version=2.1.2<br />
jogl.build.branch=origin/master<br />
jogl.build.commit=3ed74abaddb90cb537897b9928e923be50f7f99f<br />
jogl.build.id=2013-11-01_19-08-47<br />
jogl.build.number=1135<br />
jogl.build.version=2.1.2<br />
</pre><br />
<br />
We deploy artifacts.properties in the online [{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ build folder]<br />
and within the platform ZIP archives.<br />
<br />
=== JAR Manifest ===<br />
<br />
The version fingerprint is also included within each JAR Manifest file,<br />
where the Specification-Version equals the module base version<br />
and the Implementation-Version equals the above mentioned full version string<br />
<pre><br />
Manifest-Version: 1.0<br />
Ant-Version: Apache Ant 1.8.2<br />
Created-By: 1.7.0_45-b18 (Oracle Corporation)<br />
Application-Name: Java Bindings for OpenGL<br />
Specification-Title: Java Bindings for OpenGL API Specification<br />
Specification-Version: 2.1<br />
Specification-Vendor: JogAmp Community<br />
Implementation-Title: Java Bindings for OpenGL Runtime Environment<br />
Implementation-Version: 2.1.2<br />
Implementation-Build: 2.1-b1135-20131101<br />
Implementation-Branch: origin/master<br />
Implementation-Commit: 3ed74abaddb90cb537897b9928e923be50f7f99f<br />
Implementation-Vendor: JogAmp Community<br />
Implementation-URL: http://jogamp.org/<br />
Extension-Name: javax.media.opengl<br />
Implementation-Vendor-Id: com.jogamp<br />
Trusted-Library: true<br />
Permissions: all-permissions<br />
Codebase: *.jogamp.org<br />
</pre><br />
<br />
Each module has also a base version, like major and minor, ie 2.0,<br />
which we may change to emphasize major feature and API changes.<br />
<br />
==== Runtime Version Check ====<br />
<br />
Each module has a build in [http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/util/JogampVersion.html JogampVersion] specialization with a static <code>getInstance()</code> method to access the singleton instance,<br />
eg. for the [http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/GlueGenVersion.html#getInstance%28%29 GlueGenVersion] or [http://jogamp.org/deployment/jogamp-next/javadoc/jogl/javadoc/com/jogamp/opengl/JoglVersion.html#getInstance%28%29 JoglVersion]. You may utilize the version information from within your application in a programmatic manner. For the latter you may find the [http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/os/Platform.html Platform] information useful as well.<br />
<br />
Each module's [http://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/com/jogamp/common/util/JogampVersion.html JogampVersion] specialization also contain a static main entry allowing you to retrieve the version information at runtime as described below.<br />
<br />
When invoked, ie via JOGL's platform ZIP file:<br />
* sh etc/test.sh (Unixoid), or <br />
* etc\test.bat (Windows)<br />
you will see the full dump of the runtime platform and the above mentioned version footprint.<br />
<br />
<pre><br />
-----------------------------------------------------------------------------------------------------<br />
Platform: LINUX / Linux 3.11.6-x64-k10-nlb-jau01 (3.11.6), amd64 (arch), GENERIC_ABI, 8 cores<br />
MachineDescription: runtimeValidated true, littleEndian true, 32Bit false, primitive size / alignment:<br />
int8 1 / 1, int16 2 / 2<br />
int 4 / 4, long 8 / 8<br />
int32 4 / 4, int64 8 / 8<br />
float 4 / 4, double 8 / 8, ldouble 16 / 16<br />
pointer 8 / 8, page 4096<br />
Platform: Java Version: 1.7.0_45 (1.7.0u45), VM: Java HotSpot(TM) 64-Bit Server VM, Runtime: Java(TM) SE Runtime Environment<br />
Platform: Java Vendor: Oracle Corporation, http://java.oracle.com/, JavaSE: true, Java6: true, AWT enabled: true<br />
-----------------------------------------------------------------------------------------------------<br />
-----------------------------------------------------------------------------------------------------<br />
Package: com.jogamp.common<br />
Extension Name: com.jogamp.common<br />
Specification Title: GlueGen Java Bindings Generator<br />
Specification Vendor: JogAmp Community<br />
Specification Version: 2.1<br />
Implementation Title: GlueGen Run-Time<br />
Implementation Vendor: JogAmp Community<br />
Implementation Vendor ID: com.jogamp<br />
Implementation URL: http://jogamp.org/<br />
Implementation Version: 2.1.2<br />
Implementation Build: 2.1-b741-20131101<br />
Implementation Branch: origin/master<br />
Implementation Commit: 3fec08a69de571cf2939e6028487faea8a23ccaa<br />
-----------------------------------------------------------------------------------------------------<br />
Package: javax.media.opengl<br />
Extension Name: javax.media.opengl<br />
Specification Title: Java Bindings for OpenGL API Specification<br />
Specification Vendor: JogAmp Community<br />
Specification Version: 2.1<br />
Implementation Title: Java Bindings for OpenGL Runtime Environment<br />
Implementation Vendor: JogAmp Community<br />
Implementation Vendor ID: com.jogamp<br />
Implementation URL: http://jogamp.org/<br />
Implementation Version: 2.1.2<br />
Implementation Build: 2.1-b1135-20131101<br />
Implementation Branch: origin/master<br />
Implementation Commit: 3ed74abaddb90cb537897b9928e923be50f7f99f<br />
-----------------------------------------------------------------------------------------------------<br />
<br />
GLProfiles on device X11GraphicsDevice[type .x11, connection :0, unitID 0, handle 0x0, owner false, ResourceToolkitLock[obj 0x207fd4ec, isOwner false, <2873e29f, 50234978>[count 0, qsz 0, owner <NULL>]]]<br />
Natives<br />
GL4bc true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL4 true [4.4 (Core profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GLES3 false<br />
GL3bc true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL3 true [4.4 (Core profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL2 true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GLES2 true [2.0 (ES profile, ES2 compat, FBO, software)]<br />
GLES1 true [1.0 (ES profile, FP32 compat, software)]<br />
Count 7 / 8<br />
Common<br />
GL4ES3 true<br />
GL2GL3 true<br />
GL2ES2 true<br />
GL2ES1 true<br />
Mappings<br />
GL2ES2 GLProfile[GL2ES2/GL4.hw]<br />
GL2ES1 GLProfile[GL2ES1/GL4bc.hw]<br />
GL2 GLProfile[GL2/GL4bc.hw]<br />
GL4 GLProfile[GL4/GL4.hw]<br />
GL3 GLProfile[GL3/GL4.hw]<br />
GL4bc GLProfile[GL4bc/GL4bc.hw]<br />
GLES2 GLProfile[GLES2/GLES2.sw]<br />
GLES1 GLProfile[GLES1/GLES1.sw]<br />
GL4ES3 GLProfile[GL4ES3/GL4.hw]<br />
GL2GL3 GLProfile[GL2GL3/GL4bc.hw]<br />
GL3bc GLProfile[GL3bc/GL4bc.hw]<br />
default GLProfile[GL4bc/GL4bc.hw]<br />
Count 11 / 12<br />
<br />
<br />
Desktop Capabilities:<br />
GLCaps[glx vid 0x21, fbc 0x105: rgba 8/8/8/0, opaque, accum-rgba 16/16/16/16, dp/st/ms 24/8/0, dbl, mono , hw, GLProfile[GL4bc/GL4bc.hw], on-scr[fbo, pbuffer, bitmap]]<br />
.....<br />
<br />
Requesting: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL4bc/GL4bc.hw], on-scr[.]]<br />
-----------------------------------------------------------------------------------------------------<br />
X11GraphicsDevice[type .x11, connection :0]:<br />
Natives<br />
GL4bc true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL4 true [4.4 (Core profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GLES3 false<br />
GL3bc true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL3 true [4.4 (Core profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GL2 true [4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware)]<br />
GLES2 true [2.0 (ES profile, ES2 compat, FBO, software)]<br />
GLES1 true [1.0 (ES profile, FP32 compat, software)]<br />
Count 7 / 8<br />
Common<br />
GL4ES3 true<br />
GL2GL3 true<br />
GL2ES2 true<br />
GL2ES1 true<br />
Mappings<br />
GL2ES2 GLProfile[GL2ES2/GL4.hw]<br />
GL2ES1 GLProfile[GL2ES1/GL4bc.hw]<br />
GL2 GLProfile[GL2/GL4bc.hw]<br />
GL4 GLProfile[GL4/GL4.hw]<br />
GL3 GLProfile[GL3/GL4.hw]<br />
GL4bc GLProfile[GL4bc/GL4bc.hw]<br />
GLES2 GLProfile[GLES2/GLES2.sw]<br />
GLES1 GLProfile[GLES1/GLES1.sw]<br />
GL4ES3 GLProfile[GL4ES3/GL4.hw]<br />
GL2GL3 GLProfile[GL2GL3/GL4bc.hw]<br />
GL3bc GLProfile[GL3bc/GL4bc.hw]<br />
default GLProfile[GL4bc/GL4bc.hw]<br />
Count 11 / 12<br />
<br />
GL Profile GLProfile[GL4bc/GL4bc.hw]<br />
GL Version 4.4 (Compat profile, arb, ES2 compat, ES3 compat, FBO, hardware) - 4.4.0 NVIDIA 331.13 [GL 4.4.0, vendor 331.13.0 (NVIDIA 331.13)]<br />
Quirks []<br />
Impl. class jogamp.opengl.gl4.GL4bcImpl<br />
GL_VENDOR NVIDIA Corporation<br />
GL_RENDERER GeForce GTX 660/PCIe/SSE2<br />
GL_VERSION 4.4.0 NVIDIA 331.13<br />
GLSL true, has-compiler-func: true, version: 4.40 NVIDIA via Cg compiler / 4.40.0<br />
GL FBO: basic true, full true<br />
GL_EXTENSIONS 292<br />
GLX_EXTENSIONS 28<br />
-----------------------------------------------------------------------------------------------------<br />
Requested: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL4bc/GL4bc.hw], on-scr[.]]<br />
Chosen : GLCaps[glx vid 0x27, fbc 0x10d: rgba 8/8/8/0, opaque, accum-rgba 16/16/16/16, dp/st/ms 24/0/0, dbl, mono , hw, GLProfile[GL4bc/GL4bc.hw], on-scr[.]]<br />
GL impl. class jogamp.opengl.gl4.GL4bcImpl<br />
GL4ES3 retrieved, impl. class jogamp.opengl.gl4.GL4bcImpl<br />
GL3 retrieved, impl. class jogamp.opengl.gl4.GL4bcImpl<br />
<br />
</pre><br />
The dump is hold in the file <pre>test.log</pre> which you should send to us in case of a bugreport.<br />
<br />
===== Runtime Debug Logs =====<br />
<br />
You may also like to send us the debug version:<br />
* sh etc/test_dbg.sh (Unixoid), or <br />
* etc\test_dbg.bat (Windows)<br />
which produces the file <pre>test_dbg.log</pre> and should be send to us to complete the bugreport as well.<br />
<br />
==== Retrieve Release Version Tag from GIT Hash ====<br />
<br />
git-show-tags-of-commit.sh<br />
<pre><br />
#! /bin/sh<br />
<br />
sha1=$1<br />
shift<br />
<br />
git show-ref --tags -d | grep ^$sha1 | sed -e 's,.* refs/tags/,,' -e 's/\^{}//'<br />
</pre><br />
<br />
JOGL example:<br />
<pre><br />
> git-show-tags-of-commit.sh 9ff0b0dafea2a03a915c97eb1513c39c27b6a7ae<br />
v2.0-rc8<br />
</pre><br />
<br />
GlueGen example:<br />
<pre><br />
> git-show-tags-of-commit.sh 4ce601b38ca8418eddbe8cca4d531e6161fae26b<br />
v2.0-rc7<br />
v2.0-rc8<br />
</pre><br />
<br />
== Maven ==<br />
See the [[Setting_up_a_JogAmp_project_in_your_favorite_IDE#Maven|maven instructions]] for a guide to using Jogamp in<br />
Maven projects.<br />
<br />
== Autobuild Files ==<br />
[{{SERVER}}/deployment/autobuilds/master/jogl-b485-2011-09-20_08-30-36/ Autobuild Platform ZIP files] for each module<br />
follow the [[#Version_Classification|versioning]] scheme plus contain the platform identifier [{{SERVER}}/jogl/doc/deployment/JOGL-DEPLOYMENT.html#NativeJARFileNameConvention OS and ARCH]:<br />
<pre> <br />
jogl-2.0-b210-20101110-linux-amd64.zip<br />
</pre><br />
<br />
== Release and Archived Files ==<br />
The [{{SERVER}}/deployment/jogamp-current/archive/ release archive folder] <br />
contains 7z archive files for each platform containing all modules, ie. ''jogamp-linux-'''os.and.arch'''.7z''.<br />
The '''os.and.arch''' refers to the<br />
[{{SERVER}}/jogl/doc/deployment/JOGL-DEPLOYMENT.html#NativeJARFileNameConvention native file naming convention].<br />
<br />
For example:<br />
* <tt>jogamp-linux-amd64.7z</tt><br />
* <tt>jogamp-linux-i586.7z</tt><br />
* <tt>jogamp-windows-amd64.7z</tt><br />
* <tt>jogamp-windows-i586.7z</tt><br />
<br />
The folder also contains the Java API document ZIP files:<br />
* <tt>gluegen-javadoc.zip</tt><br />
* <tt>jogl-javadoc.zip</tt><br />
* <tt>jocl-javadoc.zip</tt><br />
* <tt>joal-javadoc.zip</tt></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Release_2.5.0&diff=2173Release 2.5.02023-08-18T17:19:00Z<p>Sgothel: Created page with "Git Tag v2.5.0 * [{{Server}}/git/?p=gluegen.git;a=tag;h=refs/tags/v2.5.0 gluegen] * [{{Server}}/git/?p=joal.git;a=tag;h=refs/tags/v2.5.0 joal] * [{{Server}}/git/?p=jogl.git;a=tag;h=refs/tags/v2.5.0 jogl] * [{{Server}}/git/?p=jocl.git;a=tag;h=refs/tags/v2.5.0 jocl] Roadmap Release 2.5.0 General Artifacts * [{{Server}}/deployment/v2.5.0/ Main entry, signed release] * [{{Server}}/deployment/v2.5.0/fat/ Fat jar files..."</p>
<hr />
<div>Git Tag v2.5.0<br />
* [{{Server}}/git/?p=gluegen.git;a=tag;h=refs/tags/v2.5.0 gluegen]<br />
* [{{Server}}/git/?p=joal.git;a=tag;h=refs/tags/v2.5.0 joal]<br />
* [{{Server}}/git/?p=jogl.git;a=tag;h=refs/tags/v2.5.0 jogl]<br />
* [{{Server}}/git/?p=jocl.git;a=tag;h=refs/tags/v2.5.0 jocl]<br />
<br />
[[SW Tracking Report Objectives for the release 2.5.0|Roadmap Release 2.5.0]]<br />
<br />
General Artifacts<br />
* [{{Server}}/deployment/v2.5.0/ Main entry, signed release]<br />
* [{{Server}}/deployment/v2.5.0/fat/ Fat jar files including sources]<br />
* [{{Server}}/deployment/v2.5.0/archive/ Sources, ChangeLogs, Platform 7z Files, test results, ..]<br />
<br />
Maven Artifacts<br />
* version 2.5.0<br />
* repo-url http://www.jogamp.org/deployment/maven/<br />
<br />
CI Build Information:<br />
* [{{Server}}/chuck/view/fwd/job/gluegen/967/ gluegen]<br />
* [{{Server}}/chuck/view/fwd/job/joal/684/ joal]<br />
* [{{Server}}/chuck/view/fwd/job/jogl/1533/ jogl]<br />
* [{{Server}}/chuck/view/fwd/job/jocl/1171/ jocl]<br />
<br />
[{{Server}}/deployment/v2.5.0/log/all.artifact.properties.sorted Detailed Version Information]<br />
<br />
<pre><br />
gluegen.build.branch=origin/master<br />
gluegen.build.commit=a235ae5dae463afa16f62f48bf62f896efa80b68<br />
gluegen.build.id=967<br />
gluegen.build.number=967<br />
gluegen.build.sha.classes=2ccd03d934cccce4f0bcc44aa3dc5c1999382abe812245c6bfbc5c1f8467d56f<br />
gluegen.build.sha.natives=03b1548c9f3e509ae061177e01a5537825438257691f8e361f481b8636e7ca9b<br />
gluegen.build.sha.natives=b8512dc4235e2294c63d64c7faba7656d95aa0c3dc023726002615bc13c36544<br />
gluegen.build.sha.natives=d860fed4a800b79336aed3e375701eab1b41bcd20b6610205515c7bae60b4c5b<br />
gluegen.build.sha.natives=eb1fad0f383f4b918219d2c856f5ca10474433692e7d6f79920989a74d3cc64b<br />
gluegen.build.sha.sources=784913ee2d456eede9cfaf94e1182ff484f24107548dee8655d7207b858936ea<br />
gluegen.build.version=2.5.0<br />
joal-demos.build.branch=origin/master<br />
joal-demos.build.commit=338cececcef747238d778185611d05654b2633c7<br />
joal-demos.build.id=545<br />
joal-demos.build.number=545<br />
joal.build.branch=origin/master<br />
joal.build.commit=b87238ac343643e0077522ac3a983a8025bb1d88<br />
joal.build.id=684<br />
joal.build.number=684<br />
joal.build.version=2.5.0<br />
jocl-demos.build.branch=origin/master<br />
jocl-demos.build.commit=f486f88f5c86e3981b669275d7250856d8f03f11<br />
jocl-demos.build.id=1049<br />
jocl-demos.build.number=1049<br />
jocl.build.branch=origin/master<br />
jocl.build.commit=791eb1b2ae3001f04d59a61f634161e21d96ef6d<br />
jocl.build.id=1171<br />
jocl.build.number=1171<br />
jocl.build.version=2.5.0<br />
jogl-demos.build.branch=origin/master<br />
jogl-demos.build.commit=3745290a2e139b528bdc9137168d67d72aa4853b<br />
jogl-demos.build.id=518<br />
jogl-demos.build.number=518<br />
jogl.build.branch=origin/master<br />
jogl.build.commit=70f62ca5d121e5e71548246d468b5e7baa5faf25<br />
jogl.build.id=1533<br />
jogl.build.number=1533<br />
jogl.build.version=2.5.0<br />
</pre></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Main_Page&diff=2172Main Page2023-08-18T16:33:03Z<p>Sgothel: </p>
<hr />
<div>__NOTOC__<br />
{| width="100%"<br />
|-<br />
|<br />
<div><br />
Welcome to the [{{SERVER}}/ JogAmp] wiki. It documents JOGL, JOCL and JOAL, the cross-platform bindings to the OpenGL, OpenCL, and OpenAL APIs.<br />
</div><br />
|-<br />
|<br />
{| style="width: 100%;"<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Getting Started</h3><br />
*[[Downloading and installing JOGL|Downloading and installing]]<br />
**[[Jogamp Versioning and Releases|Versioning and Releases]]<br />
*[[Setting up a JogAmp project in your favorite IDE|Setting up a JogAmp project in your favorite IDE]]<br />
*[[Jogamp SCM Repositories|Source Code Repositories]]<br />
*[[SW Tracking|Tracking Reports]]<br />
*[{{SERVER}}/chuck/ Build and Test Server]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Community</h3><br />
*[[How to Contribute|Contribute to JogAmp]]<br />
*[[How to Build|Build JogAmp]]<br />
*[[Maintainer and Contacts]]<br />
*[[Jogl FAQ#Bugreports & Testing|Report a bug]]<br />
**[{{SERVER}}/bugzilla/ Bugzilla]<br />
*[http://forum.jogamp.org/ Ask a question in the forum]<br />
*[[chatroom|JogAmp IRC]]<br />
|}<br />
|-<br />
<br />
{| style=" width: 100%;"<br />
|-<br />
|colspan="2"|<h1>JogAmp Modules</h1><br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Roadmaps</h3><br />
* ''[[SW Tracking Report Feature Objectives Overview|Feature & Objectives]], [[SW Tracking Report Objectives undetermined release|tbd]], [[SW Tracking Report Objectives for the release 3.0.0|3.0.0]], [[SW Tracking Report Objectives for the release 2.6.0|2.6.0]]''<br />
* '''[[SW Tracking Report Objectives for the release 2.5.0|2.5.0]] (last stable)''', [[SW Tracking Report Objectives for the release 2.4.0|2.4.0]], [[SW Tracking Report Objectives for the release 2.3.2|2.3.2]], [[SW Tracking Report Objectives for the release 2.3.1|2.3.1]], [[SW Tracking Report Objectives for the release 2.3.0|2.3.0]]<br />
* [[SW Tracking Report Objectives for the release 2.2.4|2.2.4]], [[SW Tracking Report Objectives for the release 2.2.3|2.2.3]], [[SW Tracking Report Objectives for the release 2.2.2|2.2.2]], [[SW Tracking Report Objectives for the release 2.2.1|2.2.1]], [[SW Tracking Report Objectives for the release 2.2.0|2.2.0]]<br />
* [[SW Tracking Report Objectives for the release 2.1.5|2.1.5]], [[SW Tracking Report Objectives for the release 2.1.4|2.1.4]], [[SW Tracking Report Objectives for the release 2.1.3|2.1.3]], [[SW Tracking Report Objectives for the release 2.1.2|2.1.2]], [[SW Tracking Report Objectives for the release 2.1.1|2.1.1]], [[SW Tracking Report Objectives for the release 2.1.0|2.1.0]]<br />
* [[SW Tracking Report Objectives for the release 2.0.2 of JOGL|2.0.2]]<br />
|-<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOGL</h3><br />
*[[Jogl Overview|Overview]] [ [{{SERVER}}/jogl/doc/Overview-OpenGL-Evolution-And-JOGL.html OpenGL Evolution &amp; JOGL] ]<br />
*[[Why Instance Design|Why Instance Design]]<br />
*[[Jogl Tutorial|Tutorial]]<br />
*[[Jogl FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=jogl.git;a=blob;f=LICENSE.txt License]<br />
*API Doc [ [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc/ Public], Specs [ [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc_nativewindow_spec/ Nativewindow], [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc_jogl_spec/ JOGL] ] ]<br />
*[[Jogl API Overview|API Overview]]<br />
**[[GL Debug Output|GL Debug Output]]<br />
*[{{SERVER}}/jogl/doc/HowToBuild.html How to Build JOGL]<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOCL</h3><br />
*[[JOCL Overview|Overview]]<br />
*[[JOCL Tutorial|Tutorial]]<br />
*[[JOCL FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=jocl.git;a=blob;f=LICENSE License]<br />
*[{{SERVER}}/deployment/jogamp-next/javadoc/jocl/javadoc/ API Doc]<br />
*[{{SERVER}}/jocl/doc/HowToBuild.html How to Build JOCL]<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOAL</h3><br />
*[[Joal Overview|Overview]]<br />
*[[Joal Tutorial|Tutorial]]<br />
*[[Joal FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=joal.git;a=blob;f=LICENSE.txt License]<br />
*API Doc [ [{{SERVER}}/deployment/jogamp-next/javadoc/joal/javadoc/ Public], [{{SERVER}}/deployment/jogamp-next/javadoc/joal/javadoc_dev/ Internal] ]<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>GlueGen</h3><br />
* [[GlueGen_Wiki|Overview]]<br />
* [{{SERVER}}/git/?p=gluegen.git;a=blob;f=LICENSE.txt License]<br />
* [{{SERVER}}/deployment/jogamp-next/javadoc/gluegen/javadoc/ GlueGen Java™ API-Doc]<br />
* [{{SERVER}}/gluegen/doc/GlueGen_Mapping.html GlueGen Native Data & Function Mapping]<br />
* [{{SERVER}}/gluegen/doc/manual/ GlueGen Manual]<br />
* [{{SERVER}}/gluegen/doc/HowToBuild.html How To Build]<br />
|}<br />
<br />
{| style=" width: 100%;"<br />
|-<br />
|colspan="2"|<h1>Related Projects</h1><br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Java3D</h3><br />
*[[Java3D Overview|Overview]]<br />
*[[Downloading and installing Java3D|Downloading and installing]]<br />
*[[Java3D Tutorial|Tutorial]]<br />
*[[Java3D API Documentation|API Documentation]]<br />
*[[Java3D FAQ|FAQ]]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Ji Gong</h3><br />
*[[Ji Gong Overview|Overview]]<br />
*[[Ji Gong Motivation|Motivation]]<br />
*[[Ji Gong FAQ|FAQ]]<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Source Certification Contract (SCC)</h3><br />
*[[SCC Overview|Overview]]<br />
*[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Bugzilla Dependency Tree]<br />
*[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Bugzilla Parent Entry]<br />
*[[SCC FAQ|FAQ]]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Ardor3D</h3><br />
*[[Ardor3D Overview|Overview]]<br />
*[[Ardor3D Tutorial|Tutorial]]<br />
*[http://jogamp.org/deployment/ardor3d/javadoc/ API Documentation]<br />
*[[Ardor3D FAQ|FAQ]]<br />
|}</div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.4.0&diff=2171SW Tracking Report Objectives for the release 2.4.02023-08-18T16:31:45Z<p>Sgothel: </p>
<hr />
<div>List started on 2015-03-06, concluding [[SW Tracking Report Objectives for the release 2.3.2|Release 2.3.2]] - '''Closed 2023-02-01''' - continuation @ [[SW Tracking Report Objectives for the release 2.5.0|Release 2.5.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.4.0 Complete Bugzilla List of Version 2.4.0]<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.4.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features confirmed and for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED","RESOLVED","VERIFIED"],<br />
"version":"2.4.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.4.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs confirmed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED","RESOLVED","VERIFIED"],<br />
"version":"2.4.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.6.0&diff=2170SW Tracking Report Objectives for the release 2.6.02023-08-18T15:40:58Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-07-xx, concluding [[SW Tracking Report Objectives for the release 2.5.0|Release 2.5.0]] - '''In Progress''' - continuation @ [[SW Tracking Report Objectives for the release 3.0.0|Release 3.0.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.6.0 Complete Bugzilla List of Version 2.6.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.5.0&diff=2169SW Tracking Report Objectives for the release 2.5.02023-08-18T15:40:29Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-02-02, concluding [[SW Tracking Report Objectives for the release 2.4.0|Release 2.4.0]] - '''Closed 2023-08-18''' - continuation @ [[SW Tracking Report Objectives for the release 2.6.0|Release 2.6.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.5.0 Complete Bugzilla List of Version 2.5.0]<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_3.0.0&diff=2168SW Tracking Report Objectives for the release 3.0.02023-07-12T12:15:19Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-xx-yy, concluding [[SW Tracking Report Objectives for the release 2.6.0|Release 2.6.0]] - '''Pending''' - continuation @ [[SW Tracking Report Objectives for the release 3.0.1|Release 3.0.1]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=3.0.0 Complete Bugzilla List of Version 3.0.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"3.0.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"3.0.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"3.0.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"3.0.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"3.0.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"3.0.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.5.0&diff=2167SW Tracking Report Objectives for the release 2.5.02023-07-12T12:14:32Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-02-02, concluding [[SW Tracking Report Objectives for the release 2.4.0|Release 2.4.0]] - '''In Progress''' - continuation @ [[SW Tracking Report Objectives for the release 2.6.0|Release 2.6.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.5.0 Complete Bugzilla List of Version 2.5.0]<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.6.0&diff=2166SW Tracking Report Objectives for the release 2.6.02023-07-12T12:14:16Z<p>Sgothel: Created page with "List started on 2023-07-xx, concluding Release 2.5.0 - '''Pending''' - continuation @ Release 3.0.0. [{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.6.0 Complete Bugzilla List of Version 2.6.0] Warnin..."</p>
<hr />
<div>List started on 2023-07-xx, concluding [[SW Tracking Report Objectives for the release 2.5.0|Release 2.5.0]] - '''Pending''' - continuation @ [[SW Tracking Report Objectives for the release 3.0.0|Release 3.0.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.6.0 Complete Bugzilla List of Version 2.6.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.6.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.6.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.5.0&diff=2165SW Tracking Report Objectives for the release 2.5.02023-07-12T12:12:57Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-02-02, concluding [[SW Tracking Report Objectives for the release 2.4.0|Release 2.4.0]] - '''In Progress''' - continuation @ [[SW Tracking Report Objectives for the release 2.6.0|Release 2.6.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.5.0 Complete Bugzilla List of Version 2.5.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.5.0&diff=2164SW Tracking Report Objectives for the release 2.5.02023-07-12T00:43:38Z<p>Sgothel: </p>
<hr />
<div>List started on 2023-02-02, concluding [[SW Tracking Report Objectives for the release 2.4.0|Release 2.4.0]] - '''In Progress''' - continuation @ [[SW Tracking Report Objectives for the release 3.0.0|Release 3.0.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.5.0 Complete Bugzilla List of Version 2.5.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Objectives_for_the_release_2.5.0&diff=2163SW Tracking Report Objectives for the release 2.5.02023-07-12T00:43:20Z<p>Sgothel: </p>
<hr />
<div>List started on 2024-02-02, concluding [[SW Tracking Report Objectives for the release 2.4.0|Release 2.4.0]] - '''In Progress''' - continuation @ [[SW Tracking Report Objectives for the release 3.0.0|Release 3.0.0]].<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?list_id=2822&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&version=2.5.0 Complete Bugzilla List of Version 2.5.0]<br />
<br />
Warning: WIP<br />
<br />
= Features =<br />
<br />
== Features to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features to implement for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Features already implemented for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla><br />
<br />
= Bugs =<br />
<br />
== Bugs to be classified for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["UNCONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs to fix for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["IN_PROGRESS","CONFIRMED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Bugs already fixed for this release ==<br />
<br />
<bugzilla><br />
{<br />
"status":["RESOLVED","VERIFIED"],<br />
"version":"2.5.0",<br />
"cf_type":["---", "DEFECT"],<br />
"include_fields":"id,product,component,priority,severity,status,resolution,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=GlueGen_Wiki&diff=2162GlueGen Wiki2023-07-10T18:33:27Z<p>Sgothel: </p>
<hr />
<div>__TOC__<br />
<br />
== Overview ==<br />
GlueGen is a compiler for function and data-structure declarations, generating Java and JNI C code offline at compile time and allows using native libraries within your Java application.<br />
<br />
GlueGen also provides a comprehensive runtime library offering<br />
* Support for multi-arch and java code fat-jar deployment<br />
** Native library including JNI bundle handling and Jar file cache<br />
** Platform architecture information retrieval, ELF parser, alignment etc<br />
* Enhanced NIO buffer handling for pointer, arrays, DMA mapping etc<br />
* Network Uri RFC 2396, connection and resource handler to simplify asset loading<br />
* Bitstream, hash maps, ringbuffer, sha cumulator, reflection and threading utils<br />
* Abstract AudioFormat and AudioSink interfaces, concurrent locks .. and more<br />
<br />
GlueGen's compiler reads ANSI C header files and separate configuration files which provide control over many aspects of the glue code generation. GlueGen uses a complete ANSI C parser and an internal representation (IR) capable of representing all C types to represent the APIs for which it generates interfaces. It has the ability to perform significant transformations on the IR before glue code emission.<br />
<br />
GlueGen can produce native foreign function bindings to Java™ as well as map native data structures to be fully accessible from Java™ including potential calls to embedded function pointer.<br />
<br />
GlueGen supports registering Java™ callback methods to receive asynchronous and off-thread native toolkit events, where a generated native callback function dispatches the events to Java™.<br />
<br />
GlueGen also supports producing an OO-Style API mapping like JOGL's incremental OpenGL Profile API levels.<br />
<br />
GlueGen is capable to bind low-level APIs such as the Java™ Native Interface (JNI) and the AWT Native Interface (JAWT) back up to the Java programming language.<br />
<br />
Further, GlueGen supports generating JNI_OnLoad*(..) for dynamic and static libraries, also resolving off-thread JNIEnv* lookup.<br />
<br />
GlueGen utilizes JCPP, migrated C preprocessor written in Java™.<br />
<br />
GlueGen is used for the JogAmp projects [[JOAL Wiki|JOAL]], [[JOGL Wiki|JOGL]] and [[JOCL Wiki|JOCL]].<br />
<br />
GlueGen is part of the JogAmp project.<br />
<br />
== Further Readings ==<br />
* [{{SERVER}}/cgit/gluegen.git/about/ GlueGen Git Repo]<br />
* [{{SERVER}}/deployment/jogamp-next/javadoc/gluegen/javadoc/ GlueGen Java™ API-Doc]<br />
* [{{SERVER}}/gluegen/doc/GlueGen_Mapping.html GlueGen Native Data & Function Mapping]<br />
* [{{SERVER}}/gluegen/doc/manual/ GlueGen Manual]<br />
* [{{SERVER}}/gluegen/www/ GlueGen Project Page]<br />
* [{{SERVER}}/gluegen/doc/HowToBuild.html How To Build]</div>Sgothelhttps://jogamp.org/wiki/index.php?title=Main_Page&diff=2161Main Page2023-07-10T18:32:56Z<p>Sgothel: </p>
<hr />
<div>__NOTOC__<br />
{| width="100%"<br />
|-<br />
|<br />
<div><br />
Welcome to the [{{SERVER}}/ JogAmp] wiki. It documents JOGL, JOCL and JOAL, the cross-platform bindings to the OpenGL, OpenCL, and OpenAL APIs.<br />
</div><br />
|-<br />
|<br />
{| style="width: 100%;"<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Getting Started</h3><br />
*[[Downloading and installing JOGL|Downloading and installing]]<br />
**[[Jogamp Versioning and Releases|Versioning and Releases]]<br />
*[[Setting up a JogAmp project in your favorite IDE|Setting up a JogAmp project in your favorite IDE]]<br />
*[[Jogamp SCM Repositories|Source Code Repositories]]<br />
*[[SW Tracking|Tracking Reports]]<br />
*[{{SERVER}}/chuck/ Build and Test Server]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Community</h3><br />
*[[How to Contribute|Contribute to JogAmp]]<br />
*[[How to Build|Build JogAmp]]<br />
*[[Maintainer and Contacts]]<br />
*[[Jogl FAQ#Bugreports & Testing|Report a bug]]<br />
**[{{SERVER}}/bugzilla/ Bugzilla]<br />
*[http://forum.jogamp.org/ Ask a question in the forum]<br />
*[[chatroom|JogAmp IRC]]<br />
|}<br />
|-<br />
<br />
{| style=" width: 100%;"<br />
|-<br />
|colspan="2"|<h1>JogAmp Modules</h1><br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Roadmaps</h3><br />
* ''[[SW Tracking Report Feature Objectives Overview|Feature & Objectives]], [[SW Tracking Report Objectives undetermined release|tbd]], [[SW Tracking Report Objectives for the release 3.0.0|3.0.0]], [[SW Tracking Report Objectives for the release 2.5.0|2.5.0]]''<br />
* '''[[SW Tracking Report Objectives for the release 2.4.0|2.4.0]] (last stable)''', [[SW Tracking Report Objectives for the release 2.3.2|2.3.2]], [[SW Tracking Report Objectives for the release 2.3.1|2.3.1]], [[SW Tracking Report Objectives for the release 2.3.0|2.3.0]]<br />
* [[SW Tracking Report Objectives for the release 2.2.4|2.2.4]], [[SW Tracking Report Objectives for the release 2.2.3|2.2.3]], [[SW Tracking Report Objectives for the release 2.2.2|2.2.2]], [[SW Tracking Report Objectives for the release 2.2.1|2.2.1]], [[SW Tracking Report Objectives for the release 2.2.0|2.2.0]]<br />
* [[SW Tracking Report Objectives for the release 2.1.5|2.1.5]], [[SW Tracking Report Objectives for the release 2.1.4|2.1.4]], [[SW Tracking Report Objectives for the release 2.1.3|2.1.3]], [[SW Tracking Report Objectives for the release 2.1.2|2.1.2]], [[SW Tracking Report Objectives for the release 2.1.1|2.1.1]], [[SW Tracking Report Objectives for the release 2.1.0|2.1.0]]<br />
* [[SW Tracking Report Objectives for the release 2.0.2 of JOGL|2.0.2]]<br />
|-<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOGL</h3><br />
*[[Jogl Overview|Overview]] [ [{{SERVER}}/jogl/doc/Overview-OpenGL-Evolution-And-JOGL.html OpenGL Evolution &amp; JOGL] ]<br />
*[[Why Instance Design|Why Instance Design]]<br />
*[[Jogl Tutorial|Tutorial]]<br />
*[[Jogl FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=jogl.git;a=blob;f=LICENSE.txt License]<br />
*API Doc [ [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc/ Public], Specs [ [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc_nativewindow_spec/ Nativewindow], [{{SERVER}}/deployment/jogamp-next/javadoc/jogl/javadoc_jogl_spec/ JOGL] ] ]<br />
*[[Jogl API Overview|API Overview]]<br />
**[[GL Debug Output|GL Debug Output]]<br />
*[{{SERVER}}/jogl/doc/HowToBuild.html How to Build JOGL]<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOCL</h3><br />
*[[JOCL Overview|Overview]]<br />
*[[JOCL Tutorial|Tutorial]]<br />
*[[JOCL FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=jocl.git;a=blob;f=LICENSE License]<br />
*[{{SERVER}}/deployment/jogamp-next/javadoc/jocl/javadoc/ API Doc]<br />
*[{{SERVER}}/jocl/doc/HowToBuild.html How to Build JOCL]<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>JOAL</h3><br />
*[[Joal Overview|Overview]]<br />
*[[Joal Tutorial|Tutorial]]<br />
*[[Joal FAQ|FAQ]]<br />
*[{{SERVER}}/git/?p=joal.git;a=blob;f=LICENSE.txt License]<br />
*API Doc [ [{{SERVER}}/deployment/jogamp-next/javadoc/joal/javadoc/ Public], [{{SERVER}}/deployment/jogamp-next/javadoc/joal/javadoc_dev/ Internal] ]<br />
<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>GlueGen</h3><br />
* [[GlueGen_Wiki|Overview]]<br />
* [{{SERVER}}/git/?p=gluegen.git;a=blob;f=LICENSE.txt License]<br />
* [{{SERVER}}/deployment/jogamp-next/javadoc/gluegen/javadoc/ GlueGen Java™ API-Doc]<br />
* [{{SERVER}}/gluegen/doc/GlueGen_Mapping.html GlueGen Native Data & Function Mapping]<br />
* [{{SERVER}}/gluegen/doc/manual/ GlueGen Manual]<br />
* [{{SERVER}}/gluegen/doc/HowToBuild.html How To Build]<br />
|}<br />
<br />
{| style=" width: 100%;"<br />
|-<br />
|colspan="2"|<h1>Related Projects</h1><br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Java3D</h3><br />
*[[Java3D Overview|Overview]]<br />
*[[Downloading and installing Java3D|Downloading and installing]]<br />
*[[Java3D Tutorial|Tutorial]]<br />
*[[Java3D API Documentation|API Documentation]]<br />
*[[Java3D FAQ|FAQ]]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Ji Gong</h3><br />
*[[Ji Gong Overview|Overview]]<br />
*[[Ji Gong Motivation|Motivation]]<br />
*[[Ji Gong FAQ|FAQ]]<br />
|-<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Source Certification Contract (SCC)</h3><br />
*[[SCC Overview|Overview]]<br />
*[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Bugzilla Dependency Tree]<br />
*[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Bugzilla Parent Entry]<br />
*[[SCC FAQ|FAQ]]<br />
|style="vertical-align: top; padding: 5px; width: 50%"|<h3>Ardor3D</h3><br />
*[[Ardor3D Overview|Overview]]<br />
*[[Ardor3D Tutorial|Tutorial]]<br />
*[http://jogamp.org/deployment/ardor3d/javadoc/ API Documentation]<br />
*[[Ardor3D FAQ|FAQ]]<br />
|}</div>Sgothelhttps://jogamp.org/wiki/index.php?title=GlueGen_Wiki&diff=2160GlueGen Wiki2023-07-10T18:29:16Z<p>Sgothel: </p>
<hr />
<div>__TOC__<br />
<br />
== Overview ==<br />
GlueGen is a compiler for function and data-structure declarations, generating Java and JNI C code offline at compile time and allows using native libraries within your Java application.<br />
<br />
GlueGen also provides a comprehensive runtime library offering<br />
* Support for multi-arch and java code fat-jar deployment<br />
** Native library including JNI bundle handling and Jar file cache<br />
** Platform architecture information retrieval, ELF parser, alignment etc<br />
* Enhanced NIO buffer handling for pointer, arrays, DMA mapping etc<br />
* Network Uri RFC 2396, connection and resource handler to simplify asset loading<br />
* Bitstream, hash maps, ringbuffer, sha cumulator, reflection and threading utils<br />
* Abstract AudioFormat and AudioSink interfaces, concurrent locks .. and more<br />
<br />
GlueGen's compiler reads ANSI C header files and separate configuration files which provide control over many aspects of the glue code generation. GlueGen uses a complete ANSI C parser and an internal representation (IR) capable of representing all C types to represent the APIs for which it generates interfaces. It has the ability to perform significant transformations on the IR before glue code emission.<br />
<br />
GlueGen can produce native foreign function bindings to Java™ as well as map native data structures to be fully accessible from Java™ including potential calls to embedded function pointer.<br />
<br />
GlueGen supports registering Java™ callback methods to receive asynchronous and off-thread native toolkit events, where a generated native callback function dispatches the events to Java™.<br />
<br />
GlueGen also supports producing an OO-Style API mapping like JOGL's incremental OpenGL Profile API levels.<br />
<br />
GlueGen is capable to bind low-level APIs such as the Java™ Native Interface (JNI) and the AWT Native Interface (JAWT) back up to the Java programming language.<br />
<br />
Further, GlueGen supports generating JNI_OnLoad*(..) for dynamic and static libraries, also resolving off-thread JNIEnv* lookup.<br />
<br />
GlueGen utilizes JCPP, migrated C preprocessor written in Java™.<br />
<br />
GlueGen is used for the JogAmp projects [[JOAL Wiki|JOAL]], [[JOGL Wiki|JOGL]] and [[JOCL Wiki|JOCL]].<br />
<br />
GlueGen is part of the JogAmp project.<br />
<br />
== Further Readings ==<br />
* [https://jogamp.org/cgit/gluegen.git/about/ GlueGen Git Repo]<br />
* [https://jogamp.org/deployment/jogamp-next/javadoc/gluegen/javadoc/ GlueGen Java™ API-Doc]<br />
* [https://jogamp.org/gluegen/doc/GlueGen_Mapping.html GlueGen Native Data & Function Mapping]<br />
* [https://jogamp.org/gluegen/doc/manual/ GlueGen Manual]<br />
* [https://jogamp.org/gluegen/www/ GlueGen Project Page]<br />
* [https://jogamp.org/gluegen/doc/HowToBuild.html How To Build]</div>Sgothelhttps://jogamp.org/wiki/index.php?title=Ardor3D_Overview&diff=2159Ardor3D Overview2023-07-10T17:14:49Z<p>Sgothel: </p>
<hr />
<div>Ardor3D is a professionally oriented, open source, Java based 3D engine for desktop (GNU Linux, Mac OS X, OpenIndiana, Windows) and mobile (Android) environments. The sub-project ardor3d-android was based on [https://developer.android.com/guide/topics/graphics/opengl.html Android OpenGL ES].<br />
<br />
Ardor3D was created September 23rd, 2008 as a fork of [http://www.jmonkeyengine.org JMonkeyEngine] by [http://blog.renanse.com Joshua Slack (Renanse)] and Rikard Herlitz (MrCoder). It was developed by [http://www.ardorlabs.com Ardor Labs] and some contributors until its version 0.9. Renanse abandoned the project March 11th, 2014. He restarted it some years later.<br />
<br />
The version 1.0 is the first version actively developed and maintained by JogAmp's community and supporting exclusively JOGL 2 (and later). It is designated as a subset of the original engine as it retains the only renderer relevant for JogAmp's community. As a consequence, it supports only desktop environments, the Android backend might be rewritten with JogAmp in another version. This subset is preferably called JogAmp's Ardor3D Continuation in order to avoid any confusion with the "official" unmaintained version.<br />
<br />
*[[Ardor3D Tutorial|Tutorial]]<br />
*[http://jogamp.org/deployment/ardor3d/javadoc/ API Documentation]<br />
*[[Ardor3D FAQ|FAQ]]</div>Sgothelhttps://jogamp.org/wiki/index.php?title=Java3D_Overview&diff=2158Java3D Overview2023-07-10T17:13:48Z<p>Sgothel: </p>
<hr />
<div>Java 3D provides an high level object oriented sets of APIs to create 3D applications in Java.<br />
<br />
Java 3D was initially developed by Sun Microsystems until its version 1.5.1.<br />
<br />
The version 1.5.2 was the first community version (which has nothing to do with JogAmp).<br />
<br />
The version 1.6.0 is the first version actively maintained by JogAmp's community and supporting JOGL 2.<br />
<br />
*[[Downloading and installing Java3D|Downloading and installing]]<br />
*[[Java3D Tutorial|Tutorial]]<br />
*[[Java3D API Documentation|API Documentation]]<br />
*[[Java3D FAQ|FAQ]]</div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2145SW Tracking Report Feature Objectives Overview2023-03-01T02:39:44Z<p>Sgothel: /* Graph UI */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target resolution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<bugzilla><br />
{<br />
"id":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;All of Product ''graphui''<br />
<bugzilla><br />
{<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
<bugzilla><br />
{<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2144SW Tracking Report Feature Objectives Overview2023-02-28T21:38:25Z<p>Sgothel: /* Graph UI */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Graph UI utilizes [https://jausoft.com/blog/2011/10/05/jogljogamp-red-square-moscow-nurbs-graphicon2011/ Resolution Independent NURBS Curves Rendering using Programmable Graphics Pipeline], i.e. rendering curves directly on the GPU, resolution independent [ [https://jogamp.org/doc/gpunurbs2011/p70-santina.pdf paper], [https://jogamp.org/doc/gpunurbs2011/graphicon2011-slides.pdf slides] ].<br />
<br />
This method allows us to to have an ultimate fast font and UI rendering engine, suitable for all devices and applications. No CPU based curve nor font pre-rendering (matching a target solution) is required.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<bugzilla><br />
{<br />
"id":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;All of Product ''graphui''<br />
<bugzilla><br />
{<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
<bugzilla><br />
{<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Maintainer_and_Contacts&diff=2143Maintainer and Contacts2023-02-28T13:44:22Z<p>Sgothel: /* Maintainer */</p>
<hr />
<div>= Maintainer =<br />
<br />
* JogAmp IT Infrastructure, Architecture and Janitor<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Gluegen<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* JOAL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** [[#Xerxes Rånby|Xerxes Rånby]]<br />
* JOGL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** GPU Curve Rendering<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
*** [[#Rami Santina|Rami Santina]]<br />
** SWT Support<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
* Java3D<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOCL<br />
** [[#Wade Walker|Wade Walker]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Engine Support<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
* Maven packages<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Art (graphics, demos, ..)<br />
** [[#Dominik Ströhlein|Dominik Ströhlein]]<br />
* ''Open Positions''<br />
** jogl-utils<br />
<br />
= Contacts =<br />
<br />
You can address the JogAmp Community via:<br />
* [http://jogamp.org/ Web]<br />
* [http://forum.jogamp.org/ Forum/Mailinglist]<br />
* Email<br />
** sgothel [@] jausoft.com<br />
** mediastream [@] jogamp.org<br />
<br />
== '''Commercial Support''' ==<br />
<br />
<div id="Contact_Maintainer"><br />
Please feel welcome to contact the maintainers for commercial support inquiries,<br />
specific questions you seem not fit for public discussions, but '''most important to fund our work'''.<br />
</div><br />
<br />
== Sven Gothel ==<br />
* sgothel [@] jausoft.com<br />
* http://jausoft.com/blog/tag/jogamp/<br />
* Contracting and funding<br />
** via ''Göthel Software e.K., contact sgothel [@] jausoft.com''<br />
===== Acknowledgment =====<br />
Göthel Software e.K. and I like to express our gratitude to <br />
[http://www.cctintl.com/ CCT International], who were supporting this project during the period from mid 2010 up until mid 2019.<br />
<br />
== Julien Gouesse ==<br />
* gouessej [@] orange.fr<br />
* http://gouessej.wordpress.com/tag/jogl/<br />
<br />
== Wade Walker ==<br />
* http://wadeawalker.wordpress.com/<br />
<br />
== Harvey Harrison ==<br />
* harvey.harrison [@] gmail.com<br />
* https://github.com/hharrison<br />
<br />
== Xerxes Rånby ==<br />
* xerxes [@] gudinna.com<br />
* http://labb.zafena.se/?category_name=jogamp<br />
* http://twitter.com/xranby<br />
** Micro payments via flatter: http://flattr.com/thing/1074999/JogAmp-JOAL-Maintainer-Xerxes-Rnby<br />
<br />
== Mark Raynsford ==<br />
* http://io7m.com/<br />
<br />
== Rami Santina ==<br />
* http://ramisantina.com/blog/<br />
<br />
== Dominik Ströhlein ==<br />
* http://copypastaresearch.tumblr.com/</div>Sgothelhttps://jogamp.org/wiki/index.php?title=Maintainer_and_Contacts&diff=2142Maintainer and Contacts2023-02-28T13:42:51Z<p>Sgothel: /* Contacts */</p>
<hr />
<div>= Maintainer =<br />
<br />
* JogAmp IT Infrastructure, Architecture and Janitor<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Gluegen<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOAL<br />
** [[#Xerxes Rånby|Xerxes Rånby]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* JOGL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** GPU Curve Rendering<br />
*** [[#Rami Santina|Rami Santina]]<br />
** SWT Support<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
* Java3D<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOCL<br />
** [[#Wade Walker|Wade Walker]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Engine Support<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
* Maven packages<br />
** [[#Mark Raynsford|Mark Raynsford]]<br />
* Art (graphics, demos, ..)<br />
** [[#Dominik Ströhlein|Dominik Ströhlein]]<br />
* ''Open Positions''<br />
** jogl-utils<br />
<br />
= Contacts =<br />
<br />
You can address the JogAmp Community via:<br />
* [http://jogamp.org/ Web]<br />
* [http://forum.jogamp.org/ Forum/Mailinglist]<br />
* Email<br />
** sgothel [@] jausoft.com<br />
** mediastream [@] jogamp.org<br />
<br />
== '''Commercial Support''' ==<br />
<br />
<div id="Contact_Maintainer"><br />
Please feel welcome to contact the maintainers for commercial support inquiries,<br />
specific questions you seem not fit for public discussions, but '''most important to fund our work'''.<br />
</div><br />
<br />
== Sven Gothel ==<br />
* sgothel [@] jausoft.com<br />
* http://jausoft.com/blog/tag/jogamp/<br />
* Contracting and funding<br />
** via ''Göthel Software e.K., contact sgothel [@] jausoft.com''<br />
===== Acknowledgment =====<br />
Göthel Software e.K. and I like to express our gratitude to <br />
[http://www.cctintl.com/ CCT International], who were supporting this project during the period from mid 2010 up until mid 2019.<br />
<br />
== Julien Gouesse ==<br />
* gouessej [@] orange.fr<br />
* http://gouessej.wordpress.com/tag/jogl/<br />
<br />
== Wade Walker ==<br />
* http://wadeawalker.wordpress.com/<br />
<br />
== Harvey Harrison ==<br />
* harvey.harrison [@] gmail.com<br />
* https://github.com/hharrison<br />
<br />
== Xerxes Rånby ==<br />
* xerxes [@] gudinna.com<br />
* http://labb.zafena.se/?category_name=jogamp<br />
* http://twitter.com/xranby<br />
** Micro payments via flatter: http://flattr.com/thing/1074999/JogAmp-JOAL-Maintainer-Xerxes-Rnby<br />
<br />
== Mark Raynsford ==<br />
* http://io7m.com/<br />
<br />
== Rami Santina ==<br />
* http://ramisantina.com/blog/<br />
<br />
== Dominik Ströhlein ==<br />
* http://copypastaresearch.tumblr.com/</div>Sgothelhttps://jogamp.org/wiki/index.php?title=SW_Tracking_Report_Feature_Objectives_Overview&diff=2141SW Tracking Report Feature Objectives Overview2023-02-28T13:35:30Z<p>Sgothel: /* Graph UI */</p>
<hr />
<div>This list exposes building blocks <br />
for potential use and business case scenarios<br />
using Java & JogAmp on Desktop and Embedded Devices.<br />
<br />
Notably [[#Graph_UI|Graph UI]] could be of interest here?<br />
<br />
Also see [[Completed Features Objectives]] ...<br />
<br />
== High DPI == <br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=1373&hide_resolved=0 Dependency Tree]<br />
<bugzilla><br />
{<br />
"id":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["1373", "1374", "1322"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Graph =<br />
<br />
== Graph UI ==<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ ''Graph UI'' will enable an immersive UI within the 3D scene] on the desktop, mobile and on bare-metal embedded systems without a windowing system.<br />
<br />
Think of an integrated QT or OpenJFX in your 2D/3D application<br />
working on desktop and embedded devices even w/o any windowing system on top <br />
of a plain console [{{SERVER}}/bugzilla/show_bug.cgi?id=1156 DRM/GBM as support by JOGL(EGL) and NEWT]<br />
as demonstrated [https://ict.zafena.se/improved-graphical-information-technology/ by Xerxes on a Raspberry Pi4].<br />
<br />
[https://jausoft.com/blog/2023/02/22/reimagine-java-on-desktop-bare-metal-devices/ Reimagine Java on Desktop & Bare-Metal Devices] <br />
demonstrates the updated Graph Curve Rendering and UI. [https://jausoft.com/blog/tag/graph_type_rendering/ Further updates will be posted here...].<br />
<br />
Notably the ''Graph Curve Rendering'' is almost feature complete, as well as our own user input including gesture detection within NEWT.<br />
<br />
;Parent Main Node<br />
: [{{SERVER}}/bugzilla/showdependencytree.cgi?id=803&hide_resolved=0 Dependency Tree]<br />
: [{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=core&component=Plugin&list_id=2265&product=GraphUI&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All GraphUI]<br />
<bugzilla><br />
{<br />
"id":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;Children blocking Parent<br />
<bugzilla><br />
{<br />
"blocks":["803"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
;All of Product ''graphui''<br />
<bugzilla><br />
{<br />
"product":"graphui",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
== Jogl / Graph ==<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1064&hide_resolved=0 Dependency Tree Graph Font Issues]<br />
<br />
[{{SERVER}}/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=IN_PROGRESS&bug_status=RESOLVED&bug_status=VERIFIED&columnlist=product%2Ccomponent%2Cassigned_to%2Cbug_status%2Cresolution%2Cversion%2Cshort_desc%2Cchangeddate&component=graph&list_id=2264&product=Jogl&query_format=advanced&resolution=---&resolution=FIXED&resolution=INVALID&resolution=WONTFIX&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED All Jogl Graph]<br />
<br />
<bugzilla><br />
{<br />
"product":"jogl",<br />
"component":"graph",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= OpenJFX =<br />
<br />
[https://jogamp.org/bugzilla//show_bug.cgi?id=607#c20 Bug report 607] describes different ways to either <br />
* enhance external rendering via JOGL into an OpenJFX UI elements, or<br />
* to replace OpenJFX's Glass w/ NEWT and Prism's OpenGL coding with JOGL<br />
<br />
= NEWT =<br />
<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=807&hide_resolved=0 Dependency Tree NEWT Input Devices]<br />
* [{{SERVER}}/bugzilla/showdependencytree.cgi?id=814&hide_resolved=0 Dependency Tree NEWT Pointer Event]<br />
<br />
<bugzilla><br />
{<br />
"product":["newt","jinput"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Vulkan =<br />
<br />
<bugzilla><br />
{<br />
"component":"vulkan",<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Video Encoding/Decoding & Player =<br />
<br />
Across our releases, we supported video encoding and decoding (with a player)<br />
based on either FFmpeg or Android's library as [https://youtu.be/4gWStKCioi8?t=132 shown in this clip at 2:12 min mark].<br />
<br />
Goal would be to <br />
* Update general ffmpeg video decoding support<br />
* Enhance ffmpeg video encoding support<br />
* Potentially add better control about video-frame to framebuffer control for editing software<br />
<br />
See [https://jogamp.org/bugzilla//buglist.cgi?bug_status=__open__&component=video&list_id=3053&product=Jogl related buglist]<br />
<br />
<bugzilla><br />
{<br />
"component":"video",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= iOS Enhancements =<br />
<br />
Early iOS support has been demonstrated in 2019<br />
* [https://jausoft.com/blog/2019/06/17/jogamp-ios-arm64-bring-up/ iOS Arm64 bring-up]<br />
* [https://jausoft.com/blog/2019/06/23/jogamp-ios-arm64-port-first-visuals/ iOS Arm64 Port: First Visuals]<br />
* [https://jausoft.com/blog/2019/07/08/jogamp-ios-arm64-port-newt/ iOS Arm64 Port: NEWT]<br />
<br />
Enhancing this port would allow to use JogAmp in a similar fashion as on Android,<br />
but using an OpenJDK iOS build.<br />
<br />
= [[SCC Overview|Source Certification Contract (SCC)]] =<br />
<br />
[{{SERVER}}/bugzilla/showdependencytree.cgi?id=1368&hide_resolved=0 Dependency Tree]<br />
<br />
[{{SERVER}}/bugzilla/show_bug.cgi?id=1368 Root Parent Entry]<br />
<br />
<bugzilla><br />
{<br />
"id":["1368", "1369"],<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla><br />
<br />
= Misc =<br />
<br />
<!-- bugzilla><br />
{<br />
"product"!=["graphui","newt"],<br />
"component"!=["graph","vulkan"],<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla--><br />
<br />
<bugzilla><br />
{<br />
"version":["2.5.0","3.0.0","tbd"],<br />
"cf_type":"FEATURE",<br />
"include_fields":"id,version,product,component,priority,severity,status,summary"<br />
}<br />
</bugzilla></div>Sgothelhttps://jogamp.org/wiki/index.php?title=Maintainer_and_Contacts&diff=2140Maintainer and Contacts2023-02-28T13:24:22Z<p>Sgothel: /* Sven Gothel */</p>
<hr />
<div>= Maintainer =<br />
<br />
* JogAmp IT Infrastructure, Architecture and Janitor<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Gluegen<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOAL<br />
** [[#Xerxes Rånby|Xerxes Rånby]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* JOGL<br />
** [[#Sven Gothel|Sven Gothel]]<br />
** GPU Curve Rendering<br />
*** [[#Rami Santina|Rami Santina]]<br />
** SWT Support<br />
*** [[#Sven Gothel|Sven Gothel]]<br />
* Java3D<br />
** [[#Harvey Harrison|Harvey Harrison]]<br />
* JOCL<br />
** [[#Wade Walker|Wade Walker]]<br />
** [[#Sven Gothel|Sven Gothel]]<br />
* Engine Support<br />
** [[#Julien Gouesse|Julien Gouesse]]<br />
* Maven packages<br />
** [[#Mark Raynsford|Mark Raynsford]]<br />
* Art (graphics, demos, ..)<br />
** [[#Dominik Ströhlein|Dominik Ströhlein]]<br />
* ''Open Positions''<br />
** jogl-utils<br />
<br />
= Contacts =<br />
<br />
You can address the JogAmp Community via:<br />
* [http://jogamp.org/ Web]<br />
* [http://forum.jogamp.org/ Forum/Mailinglist]<br />
* [http://jogamp.org/wiki/index.php/Chatroom JogAmp IRC]<br />
* Email<br />
** sgothel [@] jausoft.com<br />
** mediastream [@] jogamp.org<br />
<br />
== '''Commercial Support''' ==<br />
<br />
<div id="Contact_Maintainer"><br />
Please feel welcome to contact the maintainers for commercial support inquiries,<br />
specific questions you seem not fit for public discussions, but '''most important to fund our work'''.<br />
</div><br />
<br />
== Sven Gothel ==<br />
* sgothel [@] jausoft.com<br />
* http://jausoft.com/blog/tag/jogamp/<br />
* Contracting and funding<br />
** via ''Göthel Software e.K., contact sgothel [@] jausoft.com''<br />
===== Acknowledgment =====<br />
Göthel Software e.K. and I like to express our gratitude to <br />
[http://www.cctintl.com/ CCT International], who were supporting this project during the period from mid 2010 up until mid 2019.<br />
<br />
== Julien Gouesse ==<br />
* gouessej [@] orange.fr<br />
* http://gouessej.wordpress.com/tag/jogl/<br />
<br />
== Wade Walker ==<br />
* http://wadeawalker.wordpress.com/<br />
<br />
== Harvey Harrison ==<br />
* harvey.harrison [@] gmail.com<br />
* https://github.com/hharrison<br />
<br />
== Xerxes Rånby ==<br />
* xerxes [@] gudinna.com<br />
* http://labb.zafena.se/?category_name=jogamp<br />
* http://twitter.com/xranby<br />
** Micro payments via flatter: http://flattr.com/thing/1074999/JogAmp-JOAL-Maintainer-Xerxes-Rnby<br />
<br />
== Mark Raynsford ==<br />
* http://io7m.com/<br />
<br />
== Rami Santina ==<br />
* http://ramisantina.com/blog/<br />
<br />
== Dominik Ströhlein ==<br />
* http://copypastaresearch.tumblr.com/</div>Sgothel