[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: images.png (5 KB, 347x144)
5 KB PNG
is this shit literal black magic or am i too dumb for it? i was never good at math but holy dude props to the devs in this field
>>
Jurassic Park is literally waiting for the "advanced virtual reality" ass-pull
>>
>>109244518
real-time computer graphics is steeped in clever math
>>
It's kinda really fucking stupid and over-complicated the way APIs like OpenGL and Vulkan handle it. That defeats the entire purpose of abstraction when the abstraction is more complicated than the underlying thing.

The actual math behind 3d rasterizers and raytracers is actually very elegant and understandable. I suggest you start there:
>https://gabrielgambetta.com/computer-graphics-from-scratch/00-introduction.html

It is WAY easier to jump into OpenGL if you know this stuff in my opinion. Then if you aren't already using this resource then obviously this is the next logical choice:
>https://learnopengl.com/

I don't technically need the first link but if you're finding OpenGL to be too complicated, rest assured it actually is.
>>
All the graphics APIs suck
>>
This took me 3 hours and like 30 Claude prompts and 30 Gemini prompts
>>
File: patrick-hammer-fail.jpg (21 KB, 354x242)
21 KB JPG
>>109246304
what did I learn today /g/?
>>
>>109244518
read one of the two good textbooks. foley or angel.
>>
>>109245958
>It's kinda really fucking stupid and over-complicated the way APIs like OpenGL and Vulkan handle it.
It kind of makes sense if you understand how it's evolved between opengl versions along with the hardware, but otherwise it's pretty hard to start out with.
>>
>>109244518
As a field it's only been around for a little longer than 80 years, so still pretty young in the context of mathematics in general
>>
>>109244518
Imagine getting paid $0 to develop this beyond what was thought possible.
>>
>>109244518
I don't know about you, but I for one am probably too fucking dumb for it.
>>
>>109244518
first of all openGL is outdated and no one uses it. it's a toy graphics layer that hides most of the actual graphics work behind function calls that don't really tell you what is going on.
you should start with directX 12, since vulkan might be too much to handle. note that previous versions of directX are totally different and not worth learning.
learning d3d12 will help you get a sense of what's really going on in the GPU since it gives you rather low level control over command queues, allocators, lists, virtual GPU addresses, descriptor heaps, root signatures, graphics pipelines. these can be very difficult to learn and execute on, but they will force you to think about parallelism, memory management, and how to fundamentally accomplish tasks like uploading a texture to the GPU VRAM, generating mipmaps, doing shadows and raytracing, rendering multiple views simultaneously. and how d3d12 uses the command queue interface to achieve this parallelism.
vulkan is quite similar it just has even more stuff.
if you want to do things like RTX, you must use d3d12 or vulkan, openGL simply doesn't integrate with nvidia's hardware accelerated raytracing pipeline.
>>
>>109247267
It was trying to fit different (and ever changing) shapes of native APIs into a a single round hole of unified abstracted API while maintaining some semblance of backwards compatibility (it completely failed at it tough).
It was bound to end up as an unintuitive confusing mess.
>>
>>109245958
If you knew anything, OpenGL was born from hardware first, created by Silicon Graphics.
It's pretty cool and simple for what it is. Only shows that you don't have any idea what you are talking about.
>>
>>109247405
Opengl is fine for learning but you gotta actually use it to learn the concepts and not just vibe code it. If you're just gonna vibe code then yeah use vulkan since it's gonna be able to squeeze out more performance and is more future proof (let's be real though opengl is not going away), but you better pray you don't get into a situation that Claude can't dig you out of.
>>
OpenGL just werks

Vulkan is already outdated. DX12 is microslop platform lock. Metal is good but it's also platform locked.
>>
>>109247405
>DirectX
Opinion discarded.

OpenGL is fine, and contrary to popular belief, it's not FUBAR for novel rendering. See the game Teardown.
There is also the legit benefit of retaining compatibility with hardware that has no business turning into E-waste. Haswell is new enough to support AVX2, yet its iGPU is plagued by poor Vulkan support.
>>
>>109244518
I actually recommend not worrying about the maths too much. You can have a very vague, loose understanding of it and still get shit on screen just fine.
My brain honestly still hurts whenever I try to reason about a matrix at the component level or build one from basis vectors, but usually I can just think of them as black boxes and that's enough. I might get mixed up and multiply matrices in the wrong order, or be unsure about whether I want to sample a texture using y or -y or 1-y, but I just try permutations until it works. (Helps if you have shader live reload working.)

A very rough idea of what a vector is, and of the fact that you can transform them using matrices, is all you really need. Other details can be handled when needed, and again usually you find that a broad grasp of what's going on plus referencing sample code is good enough.
>>
>>109244518
nobody delves into the nitty gritty anymore. they use higher level languages and let compilers figure it out.
>>
>>109250059
>Vulkan is already outdated
in what way lol?
>>
>>109245958
>That defeats the entire purpose of abstraction when the abstraction is more complicated than the underlying thing.
This has basically been the state of all software/programming languages for ~30-40 years now.
>>
>>109250234
https://www.sebastianaaltonen.com/blog/no-graphics-api
>>
File: file.png (50 KB, 428x706)
50 KB PNG
>>109251160
lmao, congrats, you just reinvented vulkan (btw, you can use your own allocator with it)
>>
File: 1779331949492503.gif (756 KB, 255x255)
756 KB GIF
>>109250203
>just dont bother understanding the fundamentals bro
this is your brain on LLMs
>>
>>109244518
I could never get into it. Just creating a window and rendering a triangle is rocket science. Also fuck shaders.
>>
>>109251160
That guy's proposal can't run on a GTX 1660 Ti or RX 5700 XT. Just unnecessary planned obsolescence by an out-of-touch rich kid.
>>
>>109252254
No, I don't use any AI for my gamedev stuff (or any personal projects for that matter). I use it for my webdev dayjob, but that's irrelevant.
The point I'm trying to make is that if OP is currently staring at a linear algebra textbook in despair, I strongly recommend just saying fuck it and get some triangles spinning. You can look up details as you need them and you'll naturally gradually develop a better grasp of vectors/matrices if you're constantly using them to make something.
>>
>>109246322
Hopefully you learned the limits of your intellectual capacity and found a promising career putting the fries in the bag at the drive-thru
>>
File: literallyMe.jpg (27 KB, 416x480)
27 KB JPG
>>109252840
>out of touch rich kid
>tfw me (not that anon) is an out of touch poor kid scrambling to revive 2000s era hardware with jury rigging my pi3 into a homemade laptop case from 3d printed prayers
>>109253138
but anon that's what I already do
>>
>>109253217
Why are you even bothering with graphics APIs? Are the myriad available engines somehow not cutting it for you? Newsflash: you’ll never be a Carmack or Sweeney
>>
>>109253248
Because I get linear algebra geometric algebra grasssmanian brain blasts in my dreams and see ygridasil cons cells and that would be cool to show others my psychadelic POWAH
>>
>>109245466
and even more clever cheating
>>
>>109253092
but the linear algebra is the fun part, wrangling retarded tedious APIs is boring and gay
>>
>>109252840
>Sebastian Aaltonen
>Out-of-touch kid
Retard.
https://www.digitalfoundry.net/articles/digitalfoundry-trials-evolution-tech-interview
>>
>>109247897
>how do I draw some pixels on the screen?
>well first, you initialize the window...
>**20 steps later*** Okay we're ready to draw a TRIANGLE now
You have actual mental illness and severe retardation masquerading as fake-autism.
>https://www.youtube.com/watch?v=k0qmkQGqpM8
>>
>>109250441
99% of what passes for software development is Rube Goldberg machines.
>>
>>109254231
Yes he is a retard who just posts about AI all day working on some irrelevant mobile game engine.
>>
>>109244518
OpenGL is literally the easiest low-level graphics API out there.
>>
>>109254517
Unity refers to Assassin's Creed, not the engine, anon.

https://x.com/SebAaltonen/status/1824020820433195288
>>
>>109254338
>well first, you initialize the window..
Not a part of OpenGL. That was left to platform implementations like WGL. You're supposed to use libraries for that.
EGL arrived later and solved a lot of the issues.
>>
>>109244518
neither
>>
>>109244518
If your goal is to play around rendering graphics, implementing application logic and not developing highly optimized game engine from scratch I would personally suggest raylib as a joyful API that will still let you control over low level details, not sacrificing performance in any ever slightly meaningful way, you should have a blast with that one.
>>
>>109254231
He is an out-of-touch rich kid.
AAA game developers are always given the absolute newest rigs when developing games.
Then they don't bother optimizing for the average PC build.
I spit on all AAA game devs.
>>
File: 1674392357597.webm (2.9 MB, 750x560)
2.9 MB
2.9 MB WEBM
>>109250441
Been semi-blackpilled ever since I put together an abominable compiled forth/macro assembler memelang. the compiler, basic forth words/unix syscalls, tektronix output, and a lib to do 3d calcs with the cpu vector ops and a little wireframe viewer all fit in like 300 lines of code.
there's plenty of good reasons not to, but fuck me it's so simple when you're allowed to just do things directly.
>>
File: 1761396541641117.png (136 KB, 499x499)
136 KB PNG
>>109244518
Yes it's black magic. The underlying maths is relatively tricky, and openGL etc have a lot of cruft and archaisms. The best course of action depends on what you want to achieve/understand.
>>
>>109253138
tfw too White to get hired to put the fries in the bag and too dumb to write opengl rasterization code
>>
>>109261052
name of font? i would like to steal it for my os
>>
>>109261651
i think it was just misc-fixed and xterm's tek emulator was throwing in some extra spacing.
>>
>is this shit literal black magic or am i too dumb for it?
Both. The math behind a spinning cube is simple, and that itself is not too far from rendering basic scenes. But a lot of more advanced shaders and effects introduce some insane math.
>>
>>109253404
it's the art balancing what looks good enough with what is fast enough
>>
>>109247405
>you should start with directX 12, since vulkan might be too much to handle
DX12 is just as verbose as Vulkan.
>>
>>109247405
>opengl a toy graphics layer
are you retarded? cross-platform vulkan and the needlessly platform-dependent d3d12 are both hiding most of the "actual work" being done, too. if you're not writing your own graphics drivers you're not really graphics programming bro
>>
>>109244518
OpenGL is very loose and ambiguous, lots of free functions.
D3D11 is a little more verbose but it's much easier to understand what's going on when you're setting things up. It uses structs to initialize objects (vulkan/mantle is similar) and it encapsulates data and methods in objects making things cleaner.
No wonder devs used d3d11 back then and vulkan is similar in some ways. Microsoft did a good job designing that api.
>>
>>109244518
>am i too dumb for it
too dumb and probably gay



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.