I finished my experiment of porting GPUs to Emacs.

The GPU backend shares a neutral drawing policy across Metal (macOS) and OpenGL (Linux); two drivers, one architecture.

Performance charts (absolute fps, cairo vs GPU):
1616x912 frame: GPU ahead on full redraws (1.19x), at parity on page scrolls
4K frame: GPU pulls ahead on motion (typing 7.4x, image scroll 11.5x)
macOS M1 Pro: vsync on saves 35% CPU during scroll without losing responsiveness.

However, for smaller resolutions the CPU wins.

This version makes sense if you want animations, transitions, or to play GIFs or videos.

https://github.com/tanrax/emacs-gpu

#emacs #gpu #opengl #linux
GitHub - tanrax/emacs-gpu

Contribute to tanrax/emacs-gpu development by creating an account on GitHub.

GitHub

Some nice shadow filtering and proper transparency goes a long way to polish

#indiedev #gamedev #opengl

Greetings everyone! ✌️

Here's another one update of "Dima wants crisps 🍟".

I have add spruces! 🌲🌲🌲😁 (if it say shortly)

https://fediverse.tv/w/9J23vAxE34VXS5vVyqVca9 🎬

You can download the new version from Codeberg πŸ”οΈπŸ‘‰ https://codeberg.org/xolatgames/Dima-wants-crisps/releases/tag/v0.8.0

Or you can also download this game from my website, as always πŸ‘‰ https://xolat.games/search-by-tags/glfw.html

Thanks for reading! And I wish ya a good day! πŸ˜‰

#opengl #gamedev #cpp #cplusplus #glfw #blender #blender3d #gimp #gimp3 #opensource #codeberg #assimp #cmake #glfw3 #bullet3 #3d #codelite

Dima wants crisps 🍟 v0.8.0

PeerTube

Dima wants crisps 🍟 v0.8.0

https://fediverse.tv/w/9J23vAxE34VXS5vVyqVca9

Dima wants crisps 🍟 v0.8.0

PeerTube

Hi folks! ✌️

Here's an update of "Dima wants crisps 🍟" πŸ‘‡

https://fediverse.tv/w/ei1PuN1aQVZULqNc11UXta 🎬

I've made a view from the first person, have move the background of the game to the back, so it doesn't touches in-game objects, such as grounds anymore, have put a magic stuff to the player's hand πŸ§™β€β™‚οΈ, and now the game use Tiled (https://www.mapeditor.org/) for a maps' creation.

Have a good day! 😜✌️

#opengl #cpp #cplusplus #gamedev #3dgame #blender #gimp #assimp #platformer #3dplatformer #game #games #opensource

Dima s̢t̢a̢n̢d wants crisps 🍟

PeerTube
Flat c file, Webcam to PBO #opengl. Ready for #shader effect πŸ˜…

In the last post I introduced the "dual complement" idea for polyhedral graphs. I'm not sure if it has any mathematical significance, but I've made a fun discovery: the dual complement of a spanning tree is another spanning tree.

This result is rather intuitive and I don't have a rigorous proof for it yet, but here are the main supporting ideas. First, a spanning tree over v1 vertices has v1 - 1 edges. We can then show, using basic duality relations and Euler's polyhedral formula, that the dual complement has v2 - 1 edges that connect all of its v2 vertices. The complement doesn't have any cycles, since those would "capture" parts of the original graph, which we know is a single component.

The original polyhedron here is a {3,5+}_2,1 geodesic, so the dual is a Goldberg polyhedron.

No AI, no apps, just my original Python + OpenGL code.

#graphtheory #dualpolyhedron #dualcomplement #spanningtree #geodesicpolyhedron #goldbergpolyhedron #3dgraphics #digitalsculpture #pythoncode #numpy #opengl #creativecodeart #algorithmicart #algorist #mathart #laskutaide #computerart #ittaide #kuavataide #iterati

Desperate about the ΓΌber-bug in #NLE #Lightworks which apparently nobody suffers from but me on #UbuntuStudio #Linux 24.04 I even posted on #Reddit, after the #LWKS forum not having a clue and the developers all remaining silent…

It's perhaps something with #OpenGL / #MESA. I get this message in Logs when it occurs:

GLXOpenGLContext::makeCurrent() : Current context not NULL

If I set

LIBGL_NO_DRAWARRAYS= true

I have no video display, so all video display areas in #LWKS are using OpenGL.

Nobody knows no nothing about it. It's just me, the double weirdo, because 1) who does professional video editing on Linux anyways and 2) who does not use #DavinciResolve anyways?

So this is one way the bug may look like: https://www.youtube.com/watch?v=0brnx09AP5Y

Independent of the actual footage, and also independent of the GPU (I switched from AMD to Nvidia…)

I need to restart LWKS to make it go away. Sometimes I restart like 40 times an hour.

Any ideas are welcome, #fedihelp.

Lightworks Beta Bug on Linux

YouTube

Back in the day, I made a couple of demos where a Hamiltonian path is carved out on a polyhedron. Looking back, I started to wonder about the shape left around the path, and what it means in terms of graph theory. I call this shape the "dual complement" of the path.

The dual of a polyhedron is essentially the result of turning faces into vertices and vice versa. This is shown in the first clip with a snub dodecahedron and its dual, the pentagonal hexecontahedron; to keep the view cleaner, I'm only showing the edges of one at a time.

The duality transformation also affects the edges, but their number remains the same, and there's a 1:1 mapping between the original and dual edges. Each dual edge "cuts through" the original. To make the dual complement of a path, I remove the dual counterpart of each edge in the path, leaving only the stuff on the sides. It's like driving a snow plough along the path, leaving walls of snow on the sides.

For the final view, I combine original Hamiltonian paths with their dual complements.

#graphtheory #hamiltonianpath #hamiltoniancycle #dualpolyhedron #dualcomplement #snubdodecahedron #pentagonalhexecontahedron #3dgraphics #digitalsculpture #pythoncode #numpy #opengl #creativecodeart #algorithmicart #algorist #mathart #laskutaide #computerart #ittaide #kuavataide #iterati

And another one new! πŸ“°

I've rename "Dima stand πŸ§β€β™‚οΈ" on "Dima wants crisps 🍟".

And now this means that Dima now hasn't a plan to stands only πŸ™‚. He also want now to walk, jump, and do more actions! 😎

The repository now available by this new link πŸ‘‰ https://codeberg.org/xolatgames/Dima-wants-crisps

#game #games #3d #3dgame #blender #opengl #glfw #cmake #cpp #cplusplus #opensource #gamedev #platformer #blender3d #codeberg #gimp #gimp3 #assimp #bullet3 #3dplatformer

Dima-wants-crisps

Just a simple game where Dima can stands πŸ§β€β™‚οΈ, jumps, and walks πŸƒβ€β™‚οΈ

Codeberg.org