Devlog (Finlay once again tries and fails to learn C++ graphics libraries)

If this can't keep me invested in following through on the idea I don't think anything will

15/04/2025
I downloaded and tested a bunch of libraries


g.png888998.1000000238_image.png

This is the design document as it currently stands; It's an SS13 ripoff
 

Attachments

  • sassenach.txt
    6.3 KB · Views: 18
If this can't keep me invested in following through on the idea I don't think anything will

15/04/2025
I downloaded and tested a bunch of libraries


View attachment 56129View attachment 56130

This is the design document as it currently stands; It's an SS13 ripoff
Learn Rust.
 
16/04/2026
All I learnt how to do today was render isometric quads; Tomorrow I'll try and figure out the orthographic transformation matrix for the different vertices so it can spin around or something

1776382161411.png
1776382369868.png


I don't know how to get OpenGL to render by nearest neighbour - I'd rather have it look sharp with no aliases than soft
 
16/04/2026
All I learnt how to do today was render isometric quads; Tomorrow I'll try and figure out the orthographic transformation matrix for the different vertices so it can spin around or something

View attachment 56165 View attachment 56166

I don't know how to get OpenGL to render by nearest neighbour - I'd rather have it look sharp with no aliases than soft
hello is this using glfw or sdl2?

You can use the glm math library for camera projection/and or orthographic matrices.

I forgot about setting up mipmapping and texture pixel filtering however this website should show you everything you need to know about opengl.


Best of luck brochacho!
 
hello is this using glfw or sdl2?

You can use the glm math library for camera projection/and or orthographic matrices.

I forgot about setting up mipmapping and texture pixel filtering however this website should show you everything you need to know about opengl.


Best of luck brochacho!
At the moment windowing is handled by freeglut interfacing with OpenGL and the textured quads are handled by loading images using DevIL inage library. If I want a sound system I'm probably going to have to learn how to use SDL though, unless there's a way of using SDL to play sound inside a freeglut rendered window. I don't know if freeglut is just open source glfw or not which I probably should by now; Presumably different ways of interfacing with the same graphics library?

I should look into this; I've heard some good things about Learn OpenGL - Thank you for pointing me to it again
 
Because it's poorly written; I can't write, I'm hoping building on the premise in other mediums will inspire the narrative or something really
Oh, I thought the mollusks perhaps had some special abilities such as a snail’s slime greasing mechanical parts to reduce friction. But then I realized that snails are quite heat averse and may encounter extreme difficulties when working in an environment that produces small stars. And then I realized that all mollusks need either an aquatic or damp environment to live in and I was left wondering what types of specialized space suits they would need to wear to survive working in a factory that produces artificial stars.
 
Oh, I thought the mollusks perhaps had some special abilities such as a snail’s slime greasing mechanical parts to reduce friction. But then I realized that snails are quite heat averse and may encounter extreme difficulties when working in an environment that produces small stars. And then I realized that all mollusks need either an aquatic or damp environment to live in and I was left wondering what types of specialized space suits they would need to wear to survive working in a factory that produces artificial stars.
it was more of a speculative evolution of bivalves or cephalopods than gastropods such as snails - I realized that they also breathe anaerobically which to me made more sense given the vast discrepancies that would be present between the atmospheric composition of distant planets - It seemed more feasible that if life evolved there the evolutionary niche it would fit into would be drastically different from our own I didn't put much thought into it beyond that, and of course they'd be heat averse - Maybe they'd program something that could assemble a production line or factory remotely like a robot, I don't know.
If I can avoid incorporating it then I probably will because I'm not a biologist and I'm not trying to make something scientifically accurate. It isn't really essential to the central concept either, being a generation ship almost depleted of its fuel budget far away from any stars
 
At the moment windowing is handled by freeglut interfacing with OpenGL and the textured quads are handled by loading images using DevIL inage library. If I want a sound system I'm probably going to have to learn how to use SDL though, unless there's a way of using SDL to play sound inside a freeglut rendered window. I don't know if freeglut is just open source glfw or not which I probably should by now; Presumably different ways of interfacing with the same graphics library?

I should look into this; I've heard some good things about Learn OpenGL - Thank you for pointing me to it again
oh my goodness, you’re using glut? Are you using render draw calls by using glBegin() and glEnd() haha wow, the late 90s called, they want their graphics api back :D
 
17/04/2026 - 18/04/2026
Still trying to intuitively figure out rotation in an isometric perspective; at an extreme orthographic angle I can see it becoming a problem where the visible portion of the map tiles, the plane on the top, all get bunched together into a bunch of very wide and narrow tiles which is probably why this is never done

1776514895175.png


Turning off the colour buffer clearing is probably the least intuitive way to test the transform, but I'm glad the math seems to be working as intended at least
 
oh my goodness, you’re using glut? Are you using render draw calls by using glBegin() and glEnd() haha wow, the late 90s called, they want their graphics api back :D
There's probably a better way of doing all of this yeah - I got CMake to work for the first time yesterday and used it to compile the glm library you were talking about. The floating points it generates seem to be accepted by the calls to draw a quad in openglut though
 
There's probably a better way of doing all of this yeah - I got CMake to work for the first time yesterday and used it to compile the glm library you were talking about. The floating points it generates seem to be accepted by the calls to draw a quad in openglut though
Ooh cmake nice nice. Yeah if this is your first time with opengl then using freeglut (i.e. opengl before shaders) should be fine. Lighting is gonna be a pain, you’re going to need to push and pop the camera projection and model matrices manually.
 
17/04/2026 - 18/04/2026
Still trying to intuitively figure out rotation in an isometric perspective; at an extreme orthographic angle I can see it becoming a problem where the visible portion of the map tiles, the plane on the top, all get bunched together into a bunch of very wide and narrow tiles which is probably why this is never done

View attachment 56285 View attachment 56288

Turning off the colour buffer clearing is probably the least intuitive way to test the transform, but I'm glad the math seems to be working as intended at least
Oh I didn’t see this. Very nice, make sure you are at least clearing the depth buffer bit.
 
it was more of a speculative evolution of bivalves or cephalopods than gastropods such as snails - I realized that they also breathe anaerobically which to me made more sense given the vast discrepancies that would be present between the atmospheric composition of distant planets - It seemed more feasible that if life evolved there the evolutionary niche it would fit into would be drastically different from our own I didn't put much thought into it beyond that, and of course they'd be heat averse - Maybe they'd program something that could assemble a production line or factory remotely like a robot, I don't know.
If I can avoid incorporating it then I probably will because I'm not a biologist and I'm not trying to make something scientifically accurate. It isn't really essential to the central concept either, being a generation ship almost depleted of its fuel budget far away from any stars
Those are good points. A cephalopod such as an octopus might be a decent choice because they have fairly large brains and have an ability to process some higher level information and make somewhat intelligent decisions. Perhaps in their alien world they evolved to live partially on land and they developed finger-like digits on the ends of their many arms which would allow them to press buttons and turn knobs in a factory that makes artificial stars. But what if they decide to unionize?
 
19/04/2026
Extremely slow-going because of my mental retardation but I learnt something crucial about radians thanks to my friend while tweaking the maths that allowed me to render the tiles on the same axis. I like to think that if I get this right out the gate it'll save a lot of fucking around later on but probably not
Tomorrow I have a job interview but then I need to try and extend the equation across the other plane; Then I'll look at a proof of concept for map storing and loading or perhaps user input and refactor the code

ezgif-44816cb8771c6916.gif

Various other attempts where I failed to understand a rudimentary mathematical concept

ezgif-27297df159ba2a14.gifezgif-4f7e65019ccd5e65.gifezgif-8c90f1bd172b0481.gif

I feel like memory management could be handled in a similar way to most roguelikes; Maybe there is more lenient memory allocation in C++ than C because of classes as well
 
19/04/2026
Extremely slow-going because of my mental retardation but I learnt something crucial about radians thanks to my friend while tweaking the maths that allowed me to render the tiles on the same axis. I like to think that if I get this right out the gate it'll save a lot of fucking around later on but probably not
Tomorrow I have a job interview but then I need to try and extend the equation across the other plane; Then I'll look at a proof of concept for map storing and loading or perhaps user input and refactor the code

View attachment 56380

Various other attempts where I failed to understand a rudimentary mathematical concept

View attachment 56381View attachment 56382View attachment 56383

I feel like memory management could be handled in a similar way to most roguelikes; Maybe there is more lenient memory allocation in C++ than C because of classes as well
You can look into smart pointers if memory allocation is becoming an issue. Hahaha yeah radians and degrees can be a pain in the ass, don’t get me started on quaternions ;(

Looking dope so far, love the spinning plane at the lol.

Best of luck on the job interview, also might want to look and see if backface culling is causing any issues (glEnable(GL_CULL_FACE) i believe).

Ciao :)
 
Back
Top Bottom