#OpenGL C++
Explore tagged Tumblr posts
Text


“The breeze was cold, and the waves danced along his feet as he walked. Ejnar missed home. Missed the sea where he belonged. Brindleton Bay was quiet, tranquil, warm and welcoming, but it was not home. He continued walking, lost in thought. In the blink of an eye, he stumbled into somebody. Taller, stronger, his fingers calloused, and his markings an untold story. Blueish, glass-like eyes stared at his own. A turning point in his life.”
@strangegrapefruit, them. 🩵 | @raccoonium, this hair belongs in a museum. You’re such a talented and wonderful creator. Thank you for feeding us well. 🦝💛🌻✨ | Thank you all CC creators. ♡
#tags loading…#but if you want to know#these images have been my comfort for opengl#400+ lines of c++ code and the lighting in my scenes is still sad#here lies miss pepeshi’s emotional and mental state 🥲#classes aside#i am soft for ejnar and his protective rottweiler of a boyfriend#now i will be back to my hermit self and work behind the scenes#sending love to everyone 💙✨
29 notes
·
View notes
Text
Little ad moment. I'm not paid or anything, I just really like this library I thought I'd share.
This is fuckin huge.
Fuck electron apps loading up your 8Go of ram with a single one open, embrace real GUI in C, C++, Odin and many more to come with Clay
I'm so in love with this. It's C99 style, single header, very elegant and nice to use. Works with raylib, opengl, sdl, vulkan, and ANY OTHER RENDERING ENGINE.
Video tutorial and presentation under the cut:
youtube
#cool retro term#linux#linuxposting#programming#c++#c programming#c++ programming#gui#gui programming#odin programming#raylib#sdl#sdl 2#sdl 3#opengl#vulkan#Youtube
18 notes
·
View notes
Text
A-star pathfinding in action
youtube
#gamedev#indiedev#creative coding#coding#pathfinding#game development#programming#c++#c++ programming#opengl#Youtube
13 notes
·
View notes
Text
OFF Zone 0 in OpenGL - 2nd Year Project
Finally, my first graphics programming project ever!
It was the first time I learned about the concept of graphics programming and OpenGL. Although now I use DirectX, OpenGL was great for learning from scratch, since there's lots of tutorials online.
For this project, I recreated Zone 0 from the Indie RPG game OFF. There's stuff that's not from the game, like the moons and the teapot, but they were requirements for the brief.
Made with OpenGL.
Translating the 2D map into the 3D one and writing that code by hand was the most entertaining part of the project. Here's what it looks like in the game:
The complete report describing this project can be read here.
3 notes
·
View notes
Text
Some updates for the little physics sim I call boop. I've been curious how far I can push using solid BSP trees to do collision detection. In order to do this the models had to be redesigned so the engine can understand the volume those models occupy. I've manage to speed things up enough to get some more detailed models working too! A modern game engine typically uses basic colliders like boxes and spheres, which I'll probably need to add eventually. But I just find this way really fascinating. I also figure I can switch to hidden and simplified physics models to speed things up without changing much. I also tweaked the shaders a bit so the lighting looks a tiny bit nicer. The lighting is less yellow, and the shadows are softer. Using the code I added for the cube mapped reflections on the windows, I was also able to add a skybox too. You can see a hole in the front of the dumpster, this is because my rendering pipeline doesn't have a path for transparent textures. The shadows are also jagged due to the low resolution shadow map and distance to the light source. Something I'll need to work on.
8 notes
·
View notes
Text
Back at it again!
It's been a while since I worked on this. I basically stopped after the last post. I have some new animations for my little guy over here (very wip 🥺) that I'd like to show off.
4 notes
·
View notes
Text
Unity fucking did what
4 notes
·
View notes
Text
Incresur Game!
I am creating a game Incresur Game! this is a sandbox in C with Opengl, this is 1 of my public development
----------------------------------------------------------
Trailer | ver pre-classic-alpha
youtube
dowload game?
1 note
·
View note
Text
It's stupid.
I started Project Special K in raw C++ with OpenGL, only extra libraries are GLFW and GLM, because systems like Godot don't make sense to me.
Now, there are so many things behind me and so many more things ahead of me that still don't make sense.
It feels like I just traded one set of absolute bullshit I don't understand for another.
1 note
·
View note
Text
can an LLM write a demo?
ongoing LLM probing efforts: I tried giving them a challenge to "write code for a 4k demo to render an ocean scene".
note, in demoscene parlance, a '4k demo' refers to a demo that fits in 4 kilobytes, not one that renders to a 4k monitor. this is a stupidly difficult high-context problem and I didn't expect to really get perfect output. well, shocker, the output was largely not all that impressive in human terms.
Here's the best result I was able to get after a fairly extended dialogue with DeepSeek R1 70b, a 300kb demo using opengl:
many wave, very ocean
I'm kind of wondering why I did this at this point, but I think the main reason was that I started to buy a bit of the hype and wanted to reassure myself that LLMs are still a bit daft?
first I tried two LLMs on lmarena.ai but the site bugged out when I rated them rather than tell me which bots I was talking to.
Both generated what looked like a valid OpenGL program (though I did not attempt to compile either), however, looking closer the output was flawed in various ways. The left one decided to do some limited raytracing in the fragment shader rather than displace a mesh. It claimed to be using Gerstner waves, which would be cool, but a closer look at the output showed it was actually just sines. I'm also not sure quite what it thinks it's doing with the projection - it just seems to take the fragment position as if it were the 3D position.
The second AI does better, generating a plausible-looking vertex and fragment shader file with sine-based vertex displacement. There are some oddities, though, like the fact that it doesn't actually use the generated vertex and fragment shaders as external files, writing them out again as strings in the actual program. Overall, I could believe that if I compiled this it would look like a basic sinusoidal ocean with Phong shading. Old-school but reasonable. Unfortunately I closed the tab so I can't actually test it anymore.
Curious about what might be going on inside these models, I tried asking DeepSeek R1:14b the same challenge. Predictably this smaller model did worse. Its chain of thought prompting gave it a pretty coherent description of how you would write a demo like this, but also revealed some interesting confusions, for example multiple times referring to 'example code' that didn't exist, or quoting things I didn't say ('the user mentioned OpenGL and Vulkan').
When it came to output, though, it only gave me a list of steps to follow and omitted actual code:
There is no 'detailed response provided'.
After issuing some clarifications, DeepSeek R1:14b came up with the idea of creating a text-based demo instead, and generated some plausible-looking code in C++. I figured I might actually compile this, but it used a header file conio.h without explanation. Asking it to clarify led to it figuring out this is an old Windows header, replace it with standard library code, and actually spontaneously add a conditional compilation check for a Windows/Linux difference.
I tried compiling the provided code and ran into some missing libraries. A little coaxing gave a lot of blather to tell me 'you need to #include <cmath>'. A little more coaxing got it to tell me what compiler flags would be needed.
Thus I can present to you Deepseek R1:14b's demo:
Beautiful. Sure to win first place. The 'press q to quit' thing doesn't work. And the compiled binary definitely doesn't fit in 4kb (though it might if I stripped it etc.). But... it tried?
For fairness sake, I'll flood my RAM to try the 70b version as well. To its credit, its 'think' block immediately understands what a '4k demo' is supposed to be. Unfortunately it then goes off the rails and decides to do it in pygame, which is... babe you ain't gonna make a 4k demo in pygame lmao. As the output continued, it forgot that 4k referred to binary size rather than resolution, resolving to test the pygame program which is... not something an LLM can do.
Curiously (and this is something I have noticed a couple of times with DeepSeek), the 'actual' answer after the <think> block basically ignored all that Python stuff and wrote me a basic 'hello triangle' OpenGL program in C. So what was the point of all that thinking? Apparently when it maps from the 'think' LLM path to the 'final output' LLM path, DeepSeek can just... ignore what it was thinking about? The shaders it generated were pretty limited, it basically generates one big triangle over the screen with a scrolling sine wave on it, but I decided to see if it would compile anyway.
I tried asking it for advice on setting up GLFW and GLEW with MinGW and its answer was mostly quite good... but garbled some details (suggesting inconsistent places in where to put the libraries), which luckily I know enough to be able to spot. In the end we get this as the resulting demo:
I've lowered my expectations a lot by this point, but I will give DeepSeek a lot of credit for helping me get a working MinGW/OpenGL build environment. Given that it's a long time since I've fucked about with C/C++, and there's nothing so nice as cargo in this ecosystem, it was a lot faster than figuring it out from the docs.
The executable was more like 400kb than 4kb, so I thought I'd see if I could coax DeepSeek R1-70b to make it smaller. The chain of thought generated here was a genuinely solid discussion of sizecoding techniques, but the real proof would be whether DeepSeek could apply the ideas it pulled out concretely. In the end it gave me a list of ideas to try, including a couple of compiler flags - with this I shaved off 100kb, but it's still far too large.
(Ironically it suggested using "minimalistic frameworks often found in demoscene communities".)
I think I've spent as much time investigating this as I want to. Overall, DeepSeek R1 70b did a pretty good job of understanding what I wanted and generating relevant output, and tbh I could definitely imagine a LLM being useful if I needed to quickly reference info while writing a demo, but evaluated on the original question of 'can this LLM write a 4k demo depicting an ocean scene', the answer is a pretty emphatic no.
Running this on my computer, this took ages to generate the full output token by token - the full interaction ended up taking a couple of hours. But if I did this from scratch, having to look up docs and everything with zero experience with the APIs, I think it would probably take me about the same time to get a working OpenGL program.
Could the 'full size' models do better? Quite probably, but I ain't spending money on this shit.
24 notes
·
View notes
Text
About Me
thought i would make this post because why not
My online pseudonym is Cerulity32K, casually Cerulity. Though, my preferred name is Kali, and my alternate username is Kali the Catgirl.
Though my mental conditions are mild, I do have ADHD (inattentive) and am seeking an autism evaluation. I am also trans (she/they).
But let's get to the good stuff. I excel in computing, especially low-level stuff and graphics (webdev scares me) and math, advanced functions, calculus and linear algebra being the most useful to me. I like to intersect math and computing, and it leads to some pretty fun results, especially when dealing with graphics. My main languages are Rust, C, C++, CUDA, C#, and Python, though I am trying to understand Assembly for a few systems (my laptop [x86_64], NES [6502], and the Atari 2600 [6507]). The main libraries I go to are Raylib and Macroquad for 2D games, and for 3D I go for wgpu, Vulkan, or OpenGL, though wgpu may be the main one I use from now on.
I also do music. My favourite types of music are either loud, distorted songs (FREE.99), literally noise (Portal 2 OST), or electronic-jazz fusion (Creo). I also sometimes make music. It's usually remixes or covers, as I suck at melody crafting, but I have made a couple original songs. I specialize in industrial chiptune and what I like to call "rustcore". My two music environments are LMMS and Furnace, though the latter is the main one I use nowadays.
My favourite game genres are automation, puzzle, and platformer. Factorio, Exapunks, and Celeste are my favourites in those genres respectively.
Other than that, I like to do procedural or subdiv modelling in Blender.
All in all, I'm just a software catgirl :3
#about myself#programming#rust#coding#software engineering#c#c++#software#math#music#chiptune#factorio#exapunks#celeste#lgbtq#lgbt#lgbtqia#queer#trans#nonbinary#assembly#6502#x86_64#nes#atari 2600#furnace tracker#furnace#lmms#industrial music#6507
46 notes
·
View notes
Text
The little creature in my head that dictates me ideas is asleep, so I went on a sidequest. I got back to an old obsession and designed a library that renders stuff in 3D with opengl and sdl, and it is now done (not complete but done ;-;)
It can somewhat load obj files, manage shaders, basic materials, and instancing. I have so much more ideas... gotta get back to other projects to get them done© too !
So it was an old old craving from me to just use opengl to make a basic 3D engine. I am so proud I got it out in 2 weeks I had so much fun going back to C (my beloved)
5 notes
·
View notes
Text
How in the everloving fuck do people make a program these days?
I don't get it. I open a project in Visual Studio, I go to install the library I want to use, but I can't just download the files and put it in a folder, I have to use some weird specific command line thing called "NuGet", but when I use that, it fails every time. It tells me the version I'm trying to install isn't the right version.
No matter what I do, even though the version numbers line up with the .NET framework I'm using, it keeps failing.
I download Cmake, but that fails every time I use it too. I don't understand how I'm supposed to set things up so that they work? And everything I find on the internet doesn't help. I can't find anything that explains why these things work the way they do and how to make them actually work.
It feels like everything is in its own specialized format and I'm trying to get them all to talk and communicate with each other but they won't because they all rely on very specific versions of each other.
It's like you have to force the stars to align just to get a project off the ground, and even if you accomplish that, somewhere down the line an update or just nothing at all causes it all to break and there's no way to fix it and you just give up and throw it in the trash.
TLDR:
I want to make a basic 3D rendering engine with OpenGL or one of its millions of knockoff libraries. I'd like to do it in c++, or c#, or hell, even c. But all the people who make these libraries are unable to make clear concise instructions.
I'm so tired of 99% of my programming endeavors just being me looking up why I can't even get the setup to begin programming to work.
3 notes
·
View notes
Text
hey you wanna make a game thats so cool. youre using godot? then you'll need to write your code in GDscript! that's like Python, so look up some lessons for that. maybe look into some JavaScript while you're at it. and if you're making a game, why not make a website for it! just takes a little HTML and CSS. oh by the way, that game, you realized you need shaders to do something? awesome, awesome, well you'll need to use GLSL to make those, that's a type of openGL which is kind of like C. by the way this is trigonometry
#m.txt#i dont save memes but imagine the bloodied stick figure of your choice here#im going insane#wanting to do ONE little thing is like. ok learn and apply all the knowledge in the known universe now#my past month has been a continuous cycle of getting into something trying to learn a code language and bouncing hard off of it#over and over and over lmao#i need to be applying myself a little more to specifics but what can i say im a floater. im a drifter. i go where i please
25 notes
·
View notes
Text
I am the graphics programmer guy now. OpenGL is like almost fun.
3 notes
·
View notes
Text
Bisection
I've encountered several otherwise-capable software developers who apparently don't know how to use bisection to locate regressions (=bugs that were introduced recently into a software project).
The basic idea is, you identify a (recent) commit A that exhibits the bug and another (older) commit B where the bug is not present. Then you pick a commit C about halfway between A and B and determine whether the bug is present there. If it is, you pick D between C and B and repeat the process. If not, you pick D between A and C.
In this way, by running a dozen or so tests, you can often identify a single commit from among thousands. It's an example of a "divide and conquer" strategy.
I spent a pleasant half hour today using bisection to locate a 3 year-old performance regression in one of my projects. Said project has 1427 commits. Back in 2022 I added code to check for OpenGL errors. For one particular workload, those changes cut the graphics frame rate by a factor of 4.
All I need now is a simple mechanism to bypass OpenGL error checking, one that won't cause me to forget that those checks are available!
#war stories#binary search#opengl#software development#coding#accomplishments#divide and conquer#workload#performance
3 notes
·
View notes