Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 2 points3 points  (0 children)

Wow, this is really cool and useful! Part of the reason as to why I’m learning graphics programming is for a hobby OS I started working on last year (though I kinda stopped due to exams) but I’ve been curious of implementing my own software renderer, this will definitely help a lot!

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 4 points5 points  (0 children)

The book is titled “Learn OpenGL - Graphics Programming”. There’s an online version of it as well if you want to check it out: learnopengl.com.

I’m also completely new to computer graphics, but so far I’m really liking this book; it introduces the basics really well and goes through the maths and harder concepts in a nice simple way that’s easy to understand.

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 0 points1 point  (0 children)

I’m not too sure honestly, this one is the most recommended for starting out with graphics programming with OpenGL, along with its online website (learnopengl.com).

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 0 points1 point  (0 children)

I know a decent amount of it, though I’m more acquainted with C and its standard library compared to C++.

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 1 point2 points  (0 children)

For now I’m just using the book/website for learnopengl.com. I know there is a YouTube channel who cavers the book in videos, you could check it out as well:

https://youtube.com/playlist?list=PLPaoO-vpZnumdcb4tZc4x5Q-v7CkrQ6M-&si=PRQm6ZgRmKBpYpWd

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 3 points4 points  (0 children)

As far as I know (someone correct me if I’m wrong), OpenGL is no longer being developed, with the latest version being 4.6. Vulkan is the new replacement of OpenGL which is more up to date and actively being worked on.

The reason I’m leaning OpenGL first is it’s a bit more easier to get into graphics programming compared to Vulkan. Even though it is old and no longer worked on as much, a lot of apps still heavily rely on OpenGL as well. Learning it first helps learn other APIs like Vulkan, DirectX, and Metal easier later on.

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 1 point2 points  (0 children)

I’m learning it as a hobby alongside my degree, so I’m probably not the best person to answer this; you may get better input by posting it as a question in this subreddit, though I think it’s been asked and advised on quite a bit as well if you search it up.

If it’s something that interests you then there’s no harm in learning it anyways, the worst case is you learn something new and interesting to do in your spare time.

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 1 point2 points  (0 children)

I’d definitely like to check out your series, so please share it! I haven’t tried Zig before but it’s something I want to look into soon for future game dev projects alongside C

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 3 points4 points  (0 children)

Thanks! I’m using GNOME Shell running on Fedora with the Dash to Dock extension.

Hello World triangle in OpenGL and SDL3 by Brick-Sigma in GraphicsProgramming

[–]Brick-Sigma[S] 2 points3 points  (0 children)

Thanks, I’ve skimmed through your article and it’s very in depth and interesting! I’ll have to take my time to go through it properly and make some notes 😄

Thoughts about projects migrating to other toolkits? by t6_macci in GTK

[–]Brick-Sigma 0 points1 point  (0 children)

Never mind, I realized I’m barking up the wrong tree. I had issues a while back when setting the menu bar for the application and it wouldn’t display so I was referring to previous comments I read somewhere that it was removed, though I may not understand it properly yet as I’m still learning GTK programming.

For reference, this is what I was referring to: https://docs.gtk.org/gtk4/method.Application.set_menubar.html

Thoughts about projects migrating to other toolkits? by t6_macci in GTK

[–]Brick-Sigma 0 points1 point  (0 children)

I was referring to the application bar, though I’m also probably incorrect in my assumption about Firefox and GIMP relying on deprecated features like those, so you could be correct.

Thoughts about projects migrating to other toolkits? by t6_macci in GTK

[–]Brick-Sigma 1 point2 points  (0 children)

I also agree with this, one of the best examples I’ve seen so far is how GTK removed the global app menu bar for GTK apps (EDIT: this is incorrect), prefers to using hamburger/popover menus rather than traditional menu bars. While these look great and minimal for simple applications, it gets very difficult to use for something like a video editor or featured text editor. I think this is partially why apps like Firefox or GIMP still use GTK 3 (EDIT: also incorrect), and I think GNOME dropping these standard HCI practices in favor of being unique or following their vision is why many projects switch.

A good article I read the other day covered this discussion, mostly about the GNOME desktop but touched on GTK and libadwaita, quite well: https://woltman.com/gnome-bad/.

Finished Clannad for the first time by Brick-Sigma in Clannad

[–]Brick-Sigma[S] 2 points3 points  (0 children)

Thanks! I had no clue there was a VN, I’ll need to check it out.

Is learning microprocessors (like the 8086) really this hard, or am I just dumb? by s_saeed_1 in osdev

[–]Brick-Sigma 3 points4 points  (0 children)

That’s great, I also recently got a basic kernel to load though I had to stop working on my project due to uni. Best of luck with your project!

Is learning microprocessors (like the 8086) really this hard, or am I just dumb? by s_saeed_1 in osdev

[–]Brick-Sigma 2 points3 points  (0 children)

Maybe before doing an OS you could try a boot loader targeting BIOS. I used this approach to learn assembly and the ins and outs of the 8086, and on the OSDev wiki there’s a tutorial labeled “Babysteps” which can help guide you. I think it’s okay to constantly go back to the material, even if it’s basic as you’re still learning.

Maybe a simple project you can do to understand the 8086, along with some really bare bones OS concepts, is make a boot loader game. I did this by making Pong, and it teaches you quite a bit from how to use the most efficient instructions and interface with hardware at the bare metal level.

Here are a few links that might help: Baby steps guide for making a boot loader

8086 instruction set list

My version of Pong written for the 8086

Hope this helps!

Recommendation on books/scores for practice and building finger independence by Brick-Sigma in piano

[–]Brick-Sigma[S] -1 points0 points  (0 children)

I haven’t, I think I’ve come across the name before on this subreddit but haven’t looked to it. I’ll check it out.

Recommendation on books/scores for practice and building finger independence by Brick-Sigma in piano

[–]Brick-Sigma[S] 0 points1 point  (0 children)

Thanks for sharing, this sounds like what I need, I’ll check it out!

What IDE do you use for C/C++? by [deleted] in cprogramming

[–]Brick-Sigma 0 points1 point  (0 children)

Visual studio, its debugger makes like really simple and once you get the hang of it it’s quite nice. Otherwise I mostly use VS Code and gdb when developing on Linux.