[ANN] G3N - Go 3D Game Engine

474 views
Skip to first unread message

leonsal

unread,
Mar 12, 2017, 10:52:51 AM3/12/17
to golang-nuts
Hi All,

G3N is an OpenGL 3D Game Engine written in Go: https://github.com/g3n/engine
Try out the game engine demo at: https://github.com/g3n/g3nd

Regards.





David Peacock

unread,
Mar 12, 2017, 11:56:41 AM3/12/17
to leonsal, golang-nuts
On Sat, Mar 11, 2017 at 5:14 PM, leonsal <leonel.s...@gmail.com> wrote:
G3N is an OpenGL 3D Game Engine written in Go: https://github.com/g3n/engine
Try out the game engine demo at: https://github.com/g3n/g3nd

This is very welcome indeed.  Massive kudos!

Thank you!

David 😁

simon place

unread,
Mar 12, 2017, 1:54:34 PM3/12/17
to golang-nuts
interesting, something i'm active around.

just checking, the only dependency for the compiled result is opengl?

leonsal

unread,
Mar 12, 2017, 2:32:54 PM3/12/17
to golang-nuts
Output of ldd of the G3N demo (G3ND) in my Linux box:

linux-vdso.so.1 =>  (0x00007ffebade6000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9b136e7000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9b134ca000)
libGL.so.1 => /usr/lib/nvidia-367/libGL.so.1 (0x00007f9b1323a000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f9b12f00000)
libXrandr.so.2 => /usr/lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f9b12cf5000)
libXcursor.so.1 => /usr/lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f9b12aea000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9b127e1000)
libXinerama.so.1 => /usr/lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f9b125de000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f9b123d5000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9b1200c000)
/lib64/ld-linux-x86-64.so.2 (0x000055713f649000)
libGLX.so.0 => /usr/lib/nvidia-367/libGLX.so.0 (0x00007f9b11ddb000)
libGLdispatch.so.0 => /usr/lib/nvidia-367/libGLdispatch.so.0 (0x00007f9b11af1000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f9b118cf000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f9b116bd000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f9b114b2000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f9b112ac000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f9b110a7000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f9b10ea1000)

simon place

unread,
Mar 12, 2017, 2:47:13 PM3/12/17
to golang-nuts
OK, i see X server in there, unfortunately the target system i was currently looking at doesn't have x support, just egl.

leonsal

unread,
Mar 12, 2017, 3:16:58 PM3/12/17
to golang-nuts
The dependencies on the X server are needed by the GLFW window manager (http://www.glfw.org).
We tried to abstract the window manager in the "window" package.
So it would be theoretically possible to build another window manager using
a Go binding for an EGL library and use it with the engine.

simon place

unread,
Mar 12, 2017, 5:24:15 PM3/12/17
to golang-nuts
thanks for confirming that, i was guessing you had done that for x-platform support anyway.

i started making a 3d viewer myself with glfw last year, its as much shader as possible, not worked on it recently, apart from looking at non-x solutions.

Jamey Cribbs

unread,
Mar 14, 2017, 3:22:36 PM3/14/17
to golang-nuts
Is there a proper place where we can ask questions?

For example, I am trying to figure out what the monitor resolution is before I create the window, as I have a very high resolution monitor that makes the example windows and text way too small.  I figure if I can determine if the monitor resolution is high, then I can have the program scale up the window size and all the text sizes.

I googled a bit and I saw some examples of using glfw to determine the monitor resolution, and I saw in the the source code of G3N that you are making calls to glfw, but I'm not sure if there is a clean way for me to ask for the monitor resolution using your library or is this something I should be doing outside of your library.

Sorry if this question is way too basic.  I have no experience at all with opengl so I'm just kind of finding my way.

Jamey

leonsal

unread,
Mar 14, 2017, 3:47:15 PM3/14/17
to golang-nuts
Hi

This group is concerned with general aspects of the Go language.
Please generate an issue with your question in our repository: github.com/g3n/engine
We will try to answer.

Regards.

Reply all
Reply to author
Forward
0 new messages