Khronos Group Welcomes Lisuan Technology as Contributor Member
Lisuan Technology is a company dedicated to the research and development of graphics rendering GPUs. Founded by leading figures in the GPU industry, it possesses capabilities in large-scale chip R&D, top-level architecture design, software stack design, and mass production. They are interested in #OpenCL, #OpenGL, #OpenGLES, #Vulkan, #WebGL, #SPIR, and #OpenXR. https://www.lisuantech.com/
This week on the blog: The first half of my pseudo-historical tour of OpenGL. OpenGL is a deeply weird library and it changed a lot over the years. I set up an extremely simple program that just draws a textured quad and then walk forward through the relevant changes that are introduced over the decades.
This split neatly into pre- and post-shaders being a thing, so this week I push OpenGL 1.x as far as it goes while staying in the main spec.
So I have a maybe new project to work on, codenamed "Paradox". Gonna be one of those games that deals with portals and space manipulation. Writing it in #cpp and #opengl #indiedev#gamedev
@grumpygamer generally like having multiple options to be able to check and help with graphics drivers bugs on Linux. Was also surprised that #OpenGL was seemingly faster than #Vulkan with @play0ad on my Lenovo T14s AMD gen3 laptop (only checked briefly though). I'd mostly be concerned about cross platform compatibility, but I guess Vulkan has you covered there. And it's also a little less of a concern for me since #Wine / #Proton and #DXVK have made such a tremendous progress in the last years.
The previous demo made me dig deeper into dithering algorithms. It's something I should have done years ago, as I've been using simple random dithering now and then, and I hadn't even thought of gamma correction. One algorithm in particular caught my eye: Riemersma dithering, which uses the Hilbert curve. Compared to the usual matrices for error diffusion, the curve approach seemed easier to implement in some ways, as it has fewer edge issues.
More interestingly, it struck a chord with my earlier experiments with space-filling curves in image processing. So it was a kind of familiar territory, but it also seemed esoteric enough that I could imagine making some new discoveries. For example, play with other plane-filling curves besides the Hilbert.
The first image uses the boustrophedon curve, which makes the vertical wave patterns I recall from a number of non-dithering demos. The second curve is what I call the diagstrophedon, a diagonal zig-zag starting from the top left corner, and I think its wavy artefacts make a nice match for Venus's hair.
Then in image 3 we have Hilbert, which doesn't seem to make any particular artefacts, and I guess that's a good thing for dithering. Finally 4 uses the Peano curve, which makes some fun wiggles in light areas.
Freier Linux-Treiber für Nvidia-GPU unterstützt OpenGL zukünftig via Vulkan
Bei neueren GeForce-GPUs werden Linux-Distributionen für OpenGL-Anwendungen einen Treiber nutzen, der die eigentliche Arbeit einem Vulkan-Treiber übergibt.
Alright so I'm mostly making a game with OpenGL and SDL2 that can current target WASM also, not fully decided on a game idea but I'm getting the project setup and can current compile to WASM and run on desktop. Was originally gonna be a voxel style game but not any more. Plan to have this as a slow burn project to contribute to every once in a while. https://github.com/CultistGameDev/GlGame #gamedev#opengl#cpp#opensource
The kidney disease/treatment is still sucking more energy than I expected, so I still get limited progress. I'm trying something new that hopefully won't take years to finish.
I got cubemap blending working now that octahedral cubemaps are stored in a single texture array.
It's very basic, as there is no advanced sorting yet, but it helps test things out. :)
I noticed I haven't posted an update in a while. So where are we ?
I mostly spent September working on cubemap blending and physics.
Regarding physics, with the new wrapper I added, I got basic detection/trigger volumes working.
I also worked on converting my meshes to static collision in my levels. Then I added some refresh to ensure that moving static objects would interact well with simulated stuff (only for the editor side of things).