!rBmyrWnyssyCORKYgR:matrix.org

Wayland with Godot

11 Members
2 Servers

Load older messages


Timestamp Message
21 Jan 2019
16:13:22@wmww:matrix.orgwmww sudoreboot: Sorry, I somehow missed your message from Nov. A while back I started GDMir (https://github.com/wmww/GDMir), which will eventually allow Godot to use Mir to become a Wayland compositor (or allow Godot to become a renderer for Mir, depending on your perspective). Before I can go further, I needed a backend refactor to land in Godot, which me and Toger5 worked on. That refactor also allows for the Wayland backend he's talking about now.
17:02:22@toger5:matrix.orgtoger5Exported games also run on wayland ;)
17:02:22@toger5:matrix.orgtoger5It still needs some time though to consider an actual PR to master.
17:02:23@toger5:matrix.orgtoger5but i got most of the tricky parts figured out. Also the Display server might get implemented differently. which means i would need to change some things.
18:14:53@sudoreboot:matrix.orgsudorebootVery nice, I'm excited to see the progress you make
18:16:11@sudoreboot:matrix.orgsudoreboot If there's any wisdom we can share between the two projects don't hesitate to swing by #gitter_simulavr=2Fsimula:matrix.org
18:16:57@sudoreboot:matrix.orgsudorebootSimula is taking the path of making a gdnative asset, which is a bit more limited but enables integration in normal projects
18:18:22@toger5:matrix.orgtoger5Is there a doc about the current idea and approach of simula? would love to get a better overview
18:18:48@sudoreboot:matrix.orgsudorebootUnfortunately no technical overview. Good feedback
18:19:26@sudoreboot:matrix.orgsudorebootHaskell is used via GDNative to register a Compositor class, a Texture class and a Sprite class among others
18:19:35@sudoreboot:matrix.orgsudorebootI'm working on a refactor fork atm
18:20:57@sudoreboot:matrix.orgsudorebootTo modularize the project and make a minimal plugin
18:22:48@wmww:matrix.orgwmww toger5: Even if the Wayland backend isn't ready, we need to PR and merge the display server abstraction ASOP, before we get steamrolled by someone who does it wrong.
18:24:55@toger5:matrix.orgtoger5 wmww: yea... i know what tmm's plan is. and it is pretty good. both, for us and for godot. He is just busy. Me as well...
18:25:16@toger5:matrix.orgtoger5how hard was the haskell binding?
18:25:24@toger5:matrix.orgtoger5 sudoreboot:
18:32:10@sudoreboot:matrix.orgsudorebootThe work on the bindings was done by David Kraeutmann (with me mostly contributing references of prior work and ideas) and it's quite a feat with a lot of clever type trickery to adapt the OOP nature of Godot for Haskell
18:32:42@toger5:matrix.orgtoger5https://d.tube/#!/v/sudoreboot/t026ny0m really want to watch that movie... but it does not load
18:36:47@toger5:matrix.orgtoger5

sudoreboot: Implmentation how i guess it works (please correct me):

start x server,
start godot (on the x server with godot handling communication btween x and godot itself),
godot starts the gdns lib and the haskell plugin which spins up a wayland server (socket),
launching a gtk application (or other wayland app) connects to the socket provided by simula,
codots gles context now has access to the buffer (with the app) and can display it?

18:41:23@sudoreboot:matrix.orgsudoreboot
In reply to @toger5:matrix.org
https://d.tube/#!/v/sudoreboot/t026ny0m really want to watch that movie... but it does not load
d.tube is apparently pretty bad at keeping uploads alive. I'll see about reuploading somewhere else
18:44:52@sudoreboot:matrix.orgsudoreboot
In reply to @toger5:matrix.org

sudoreboot: Implmentation how i guess it works (please correct me):

start x server,
start godot (on the x server with godot handling communication btween x and godot itself),
godot starts the gdns lib and the haskell plugin which spins up a wayland server (socket),
launching a gtk application (or other wayland app) connects to the socket provided by simula,
codots gles context now has access to the buffer (with the app) and can display it?

Mostly correct. The shared memory buffers are accessed via the Weston library (but we're in the process of migrating over to wlroots (or rather hsroots - Haskell bindings for wlroots)) and converted to ImageTextures
19:33:50@sudoreboot:matrix.orgsudoreboot toger5: Re-uploaded to peertube
22 Jan 2019
15:20:58@dos:dosowisko.netdos joined the room.
15:25:29@dos:dosowisko.netdos toger5: check out xdg-decoration: https://github.com/wayland-project/wayland-protocols/blob/master/unstable/xdg-decoration/xdg-decoration-unstable-v1.xml
15:26:15@dos:dosowisko.netdoswhen it comes to game engines and libraries, most implementation don't bother yet with decorations and just rely on it to get decorations working basically everywhere except mutter
15:26:32@dos:dosowisko.netdosimplementations*
15:28:20@toger5:matrix.orgtoger5ty. I actually was searching for it, but didnt find sth useful.. (my bad) I also kind of like the client side decoration approach. works quiet well since godot has sth like a header bar anyways. I also already implemented resizing and dragging the window with client side decorations. Just the close button is missing atm
15:31:48@dos:dosowisko.netdoscool! but make sure please that SSDs are also supported. CSDs are well-welcomed pretty much only under GNOME (and maybe Enlightenment) ;)
17:42:16@toger5:matrix.orgtoger5How would i dicide which to use? does the server request ssd?
17:44:41@toger5:matrix.orgtoger5 <event name="configure"> okay there is a configure event. That how to decide. Nice supporting both is obviously the best solution. csd for godot editor is a cool feature anyways.... so ill definitly keep it i think

There are no newer messages yet.


Back to Room List