lighttroupe / luz

Live motion graphics editor and performer.
GNU General Public License v2.0
37 stars 4 forks source link

[Documentation / Design] Could some information be added as to why the project moved away from ruby-gtk? #15

Closed rubyFeedback closed 7 months ago

rubyFeedback commented 4 years ago

Hello there,

I found the project indirectly, from an old blog post. That blog posted mentioned moving away from ruby-gtk.

If I understand you moved towards SDL.

Anyway - would it be possible to add some document to the project explaining the rationales? May not fit into README.md, but if you think it may be interesting to have as part of the project, I would be interested in reading it.

lighttroupe commented 4 years ago

There were two reasons.

The GTK bindings hooked into Ruby's garbage collector and did a very slow interrogation of all GTK objects, causing a noticeable pause in animation in the Luz 1.0 editor with each ruby garbage collector run. This lead me to make the Performer part of Luz its own non-GTK app, so it would be smooth. But that meant that editing and running were two separate apps, and so you couldn't pop out of a performance to edit something, and then hop back in without losing state. For example, losing all the drawing that had happened if using a Wacom tablet.

The other is that the Ruby-GTK bindings dropped support for the OpenGL widget, so it had to get a new editor interface.

On Mon, Oct 5, 2020 at 9:22 AM rubyFeedback notifications@github.com wrote:

Hello there,

I found the project indirectly, from an old blog post. That blog posted mentioned moving away from ruby-gtk.

If I understand you moved towards SDL.

Anyway - would it be possible to add some document to the project explaining the rationales? May not fit into README.md, but if you think it may be interesting to have as part of the project, I would be interested in reading it.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/lighttroupe/luz/issues/15, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAK3LNFUTV4TXHZGLTJ4Q43SJHXE3ANCNFSM4SE42RKA .