* ANN: OpenGLAda 0.5 released
@ 2017-09-28 21:11 Felix Krause
2017-10-22 19:07 ` Robert Eachus
2017-10-23 16:22 ` Shark8
0 siblings, 2 replies; 5+ messages in thread
From: Felix Krause @ 2017-09-28 21:11 UTC (permalink / raw)
It has been a long time since I released an OpenGLAda version, and an
even longer time since I announced it here. After laying around
abandoned for quite some time, there was interest in OpenGLAda in the
recent year, so I decided to put some work into it. The result is a new
release that's available on GitHub as usual [1].
OpenGLAda is a wrapper for OpenGL, GLFW, FTGL and SOIL. It also
includes functionality to load OpenGL function pointers at runtime
similar to what the GLEW library does for C. As thick binding, it tries
to make working with the OpenGL API as painless as possible.
In this release, the major change is that I rewrote the runtime-loading
part to be more efficient. A welcome side effect is that I can now
autogenerate a complete list of wrapped OpenGL functions along with
code pointers to where in the OpenGLAda API the functionality can be
found [2].
Since users struggled to get the demo programs to work, I included
detailed instructions about how to setup dependencies in the Readme
[3], especially for Windows (with GNAT GPL or TDM-GCC). I hope this
makes the library more accessible for newcomers.
Thanks to Roger Mc Murtrie who contributed a lot to this release, there
are now a lot of additional examples available besides the demo
programs. These examples are taken from textbooks and translated into
Ada. A good part of those examples have been taken from the OpenGL
SuperBible [4] which is written for modern OpenGL, so they are most
relevant for people who do want to use OpenGL 4.x functionality.
The examples have been tested and work on Windows 10 with both GNAT GPL
2017 and TDM-GCC-64, as well as on macOS High Sierra with GNAT GPL
2017. Sadly, I gave up on setting up a VM for testing on Linux (OpenGL
support was too much of a pain to set up in the VM), so I could not
test it on Linux, but I doubt that something has broken there since my
last test. I would still be thankful for someone to test it.
Development is still ongoing and the next release will probably see the
inclusion of a binding to parts of the FreeType library as FTGL is
pretty dated and does not play well with modern OpenGL functionality.
FreeType is necessary to render text using OTF/TTF fonts.
[1]: https://github.com/flyx/OpenGLAda/tags
[2]: http://flyx.github.io/OpenGLAda/mapping.html
[3]:
https://github.com/flyx/OpenGLAda#detailed-installation--compilation-instructions
[4]: http://www.openglsuperbible.com
--
Regards,
Felix Krause
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ANN: OpenGLAda 0.5 released
2017-09-28 21:11 ANN: OpenGLAda 0.5 released Felix Krause
@ 2017-10-22 19:07 ` Robert Eachus
2017-10-22 21:52 ` Luke A. Guest
2017-10-23 18:35 ` Felix Krause
2017-10-23 16:22 ` Shark8
1 sibling, 2 replies; 5+ messages in thread
From: Robert Eachus @ 2017-10-22 19:07 UTC (permalink / raw)
On Thursday, September 28, 2017 at 5:11:19 PM UTC-4, Felix Krause wrote:
> It has been a long time since I released an OpenGLAda version, and an
> even longer time since I announced it here. After laying around
> abandoned for quite some time, there was interest in OpenGLAda in the
> recent year, so I decided to put some work into it. The result is a new
> release that's available on GitHub as usual [1].
Very nice and worthwhile work.
I stay away from doing the graphics parts of applications. I tend to work on the guts of inner loops spread across multiple CPUs without displays. The windowing is for the user interface, and tends to run on user workstations.
I was wondering if you have looked at Vulkan? Again, for my purposes your binding is a nice to have guide, but way to heavy to use. I'm trying to migrate some compute cores to GPUs when I'm healthy. :-(
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ANN: OpenGLAda 0.5 released
2017-10-22 19:07 ` Robert Eachus
@ 2017-10-22 21:52 ` Luke A. Guest
2017-10-23 18:35 ` Felix Krause
1 sibling, 0 replies; 5+ messages in thread
From: Luke A. Guest @ 2017-10-22 21:52 UTC (permalink / raw)
Robert Eachus <rieachus@comcast.net> wrote:
>
> I was wondering if you have looked at Vulkan? Again, for my purposes
> your binding is a nice to have guide, but way to heavy to use. I'm
> trying to migrate some compute cores to GPUs when I'm healthy. :-(
>
I have a start in this, I really must get back to it, sigh, but motivation
is lacking recently 😗🙁
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ANN: OpenGLAda 0.5 released
2017-09-28 21:11 ANN: OpenGLAda 0.5 released Felix Krause
2017-10-22 19:07 ` Robert Eachus
@ 2017-10-23 16:22 ` Shark8
1 sibling, 0 replies; 5+ messages in thread
From: Shark8 @ 2017-10-23 16:22 UTC (permalink / raw)
Awesome! / Thank you for your work.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: ANN: OpenGLAda 0.5 released
2017-10-22 19:07 ` Robert Eachus
2017-10-22 21:52 ` Luke A. Guest
@ 2017-10-23 18:35 ` Felix Krause
1 sibling, 0 replies; 5+ messages in thread
From: Felix Krause @ 2017-10-23 18:35 UTC (permalink / raw)
On 2017-10-22 19:07:01 +0000, Robert Eachus said:
>
> I was wondering if you have looked at Vulkan? Again, for my purposes
> your binding is a nice to have guide, but way to heavy to use. I'm
> trying to migrate some compute cores to GPUs when I'm healthy. :-(
No, I simply don't have any use-case that would justify allocating time
for learning Vulkan. However, I did do an OpenCL binding a while back,
it is still available:
http://flyx.github.io/OpenCLAda
Since I did not update it for years, it is still stuck at OpenCL 1.0.
--
Regards,
Felix Krause
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-10-23 18:35 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-28 21:11 ANN: OpenGLAda 0.5 released Felix Krause
2017-10-22 19:07 ` Robert Eachus
2017-10-22 21:52 ` Luke A. Guest
2017-10-23 18:35 ` Felix Krause
2017-10-23 16:22 ` Shark8
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox