Learning VULKAN by Rendering a GALAXY

  Рет қаралды 37,719

frozein

frozein

Күн бұрын

Пікірлер: 131
@namef
@namef 3 ай бұрын
Bro really doxed all of us with in a single thumbnail…
@madbanana22
@madbanana22 5 ай бұрын
Easiest way to learn Vulkan:
@nite_owl_was_here
@nite_owl_was_here 9 ай бұрын
i followed the vulkan-tutorial the past week. apart from the single file structure and some modern c++ not working, it was a great thing to see that triangle on screen. tough experience, but one that I'll take with me for the rest of my life.
@TheScreamingFedora
@TheScreamingFedora 11 ай бұрын
I made a pretty similar tutorial in Three.js, but I did not know about the concentric ellipse bit, or that the red spots were called H2 regions. Yours is a lot more scientifically accurate!
@BalintCsala
@BalintCsala 11 ай бұрын
Since you want to continue using Vulkan, I have a couple of recommendations: - Assuming you use C++: Use the official c++ headers, they make most parts of the API at least bearable (e.g. No more double query memes, the enumerate functions return a vector, no sType, etc.) - Look into the extensions that make Vulkan easier to use (e.g. Dynamic rendering). They are usually free to use on PCs (only tiled mobile gpus might suffer from them a bit), have great support and make the experience a lot better.
@frozein
@frozein 11 ай бұрын
Thanks for the advice! Though I plan to do most of my work in C so I wont use vulkan.hpp
@ShocooYT
@ShocooYT 11 ай бұрын
Hello master Balint !
@MrEnsiferum77
@MrEnsiferum77 11 ай бұрын
That's the problem with today developers, instead of doing it, they trying to look smart, hey why don't u do it in React?
@BalintCsala
@BalintCsala 11 ай бұрын
@@MrEnsiferum77 Not sure what you mean, none of those extensions make vulkan easier, they just reduce the amount of bullshit you have to deal with. If you want to write a ton of boilerplate code to get to the exact same point as someone who did it in the smart way (even in terms of performance) then that's a you problem.
@MrEnsiferum77
@MrEnsiferum77 11 ай бұрын
@@BalintCsala tha'ts called npm, and u will call it smart way, until u find similar one and than u will say now this is what i was looking for...
@nocivofrank
@nocivofrank 3 ай бұрын
I've recently tried doing this in OpenGL and i though it was a challenging task but this this is on a different level I'll give this a try later in the future when i get better.
@minetomek
@minetomek 11 ай бұрын
"With just some magic we have some particles. Now some movement, bigger particles aaannd... we have a galaxy!"
@frozein
@frozein 11 ай бұрын
I didn't want to dive too much into the implementation details as they aren't too interesting. You can read the referenced article for more info: beltoforion.de/en/spiral_galaxy_renderer/?a=spiral_galaxy_renderer
@jacksaenz2591
@jacksaenz2591 11 ай бұрын
Super cool video! I love the style you've got going on!
@rmt3589
@rmt3589 11 ай бұрын
This is amazing! I needed a tutorial like this so bad. Thank you! Now to implement it in OpenGL! Eventually...
@Finding_Fortune
@Finding_Fortune 11 ай бұрын
Loved it, what a way to start learning Vulkan!
@thephoenixsystem6765
@thephoenixsystem6765 2 ай бұрын
Great, now everything in my view is spinning in the opposite direction of the galaxy lol Cool video ~
@fah1007
@fah1007 11 ай бұрын
This is amazing bro . Good job . I wish u a amazing journey this year (:
@publicalias8172
@publicalias8172 11 ай бұрын
So.. I see you've decided to become a legend.
@ChipboardDev
@ChipboardDev 11 ай бұрын
This is really cool! The info on the ellipse will help me in my own project!!
@JoeTheis
@JoeTheis 9 ай бұрын
Hats off to you, sir. I hear vulkan is quite the beast, so congratulations on conquering it! Sometimes I wish I had the patience for this kind of low-level technical wizardry. But I think at my heart I'm a higher-level gameplay guy. Still, seeing this kind of thing gives me inspiration and motivation to keep ploughing ahead on my own projects. Can't wait to see what you do with this!
@benrex777productions9
@benrex777productions9 9 ай бұрын
I'm a mid level type of guy. I don't have the grit to learn stuff like vulkan but I also don't just go into the higher level where you actually see progress and can make games.
@vilian9185
@vilian9185 11 ай бұрын
god tutorial in creating the universe
@PatrickFrom
@PatrickFrom 11 ай бұрын
The new spore lookin' fresh.
@trashman7072
@trashman7072 11 ай бұрын
welcome back, its better to focus on your projects then pumping out content. take your time - we appreciate it
@dottormaelstrom
@dottormaelstrom 11 ай бұрын
The ellipses are a genius hack! A nice exercise for the future could be to implement an actual gravity simulation in vulkan
@kr1sso
@kr1sso 11 ай бұрын
Best thing about this is reading the comments while your eyes adjust and everything is rotating like those galaxies :D
@FREAKBAlT
@FREAKBAlT 6 ай бұрын
I bought the vulkan programming guide book, I’ve just read through the physical and logical devices bit, and enumerating them. I like the book and I’d definitely recommend it if you’re looking to learn vulkan.
@vilian9185
@vilian9185 11 ай бұрын
1:55 the operational system don't have any APi to tell you what graphic card to use?
@frozein
@frozein 11 ай бұрын
No, you have to pick it yourself in Vulkan!
@kerch00
@kerch00 11 ай бұрын
Didn’t think I’d hear this c418 song here
@streetware-games
@streetware-games 11 ай бұрын
Very nice. Will steal this technique
@frozein
@frozein 11 ай бұрын
Check the article in the description, it goes a little more into the details!
@arushford
@arushford 3 ай бұрын
3:20 because it's low level control and meant to be spread amongst your code... imgui docking example is 2000 lines as an example.... but any good application will be after 2024
@florinbaciu2325
@florinbaciu2325 4 ай бұрын
I have the impression that it was harder to code the triangle from scratch than do the galaxy from the triangle bit
@MultsElMesco
@MultsElMesco 4 ай бұрын
This is awesome man! I've been thinking about trying vulkan for a while. I think this video finally convinced me. Great job!
@madscientistmikhail
@madscientistmikhail 4 ай бұрын
This is amazing! Nice job! I am no where near your capibilities yet... Very inspiring.
@4D_Bug
@4D_Bug 11 ай бұрын
live long and prosper 🖖
@dottedboxguy
@dottedboxguy 11 ай бұрын
new vid, pog
@slava_in3757
@slava_in3757 11 ай бұрын
Beautiful
@sehzadeselim863
@sehzadeselim863 11 ай бұрын
Im going to implement my own galaxy system right after finishing the current project, so im lucky to find your video 😊 (actually, i didn't find your yt channel, it found me itself)
@dimaryk11
@dimaryk11 2 ай бұрын
Looks awesome! Perhaps try more particles?
@frozein
@frozein 2 ай бұрын
Thanks! With too many more particles the performance starts to suffer. I didn't optimize too well
@PP-ss3zf
@PP-ss3zf 3 ай бұрын
Why do we use a compute shader and not another type of shader?
@MisterCallox
@MisterCallox 7 ай бұрын
Hey nice video I'm really looking forward on reading how you implemented it! But I wanted to talk about the build of your code on windows 11; I almost never used visual studio and mostly build things on the cli with .bat files or makefiles, so I'm probably doing something wrong. I did use Cmake and I managed to get the .sln file to open on visual studio -> Problem is that the shader won't compile properly and prevents the .exe to launch and sometimes even using your .bat or .sh files would'nt work. So I found the solution by compiling these shaders myself using glsl provided by the vulkan SDK and then I had to manually move the whole "assets" folder to put it next to the .exe (which is buried in build\bin\debug, thx VS) because the only way to compile it on windows is through this mess of a software with this config !!! Cmake is supposed to be "easy" and just makes things worse. Ok I stop it with the rant and I'll add that checking the return value of "fopen_s" with perror in vkh.c:350 would have made this easier somehow.. (I ended up adding it to be sure if that was one of the problems, and it was because it would dereference a NULL pointer later!) Sorry for this big text lol I really enjoy your videos and am grateful that you provide the source code !!! Hope to see more from you in the future
@frozein
@frozein 7 ай бұрын
Sorry you ran into so many issues :( I dual boot windows 11 and ubuntu, so I tested the build scripts for both throughout development, and never experienced any issues myself. Not sure what could be different about your setup. CMake does tend to make a mess of things lol.
@diamondore9643
@diamondore9643 11 ай бұрын
I want to make a simulation of the universe with ascii graphics, and the way you implemented scaling is very similar to what I want to do. I hope your project will help me
@art_cg
@art_cg 11 ай бұрын
That's awesome bro! Loved how smooth the dust cloud looked. I am starting to study computer graphics rn, where did you start learning all this general graphics stuff? Do you have any material recommendations? thanks!
@frozein
@frozein 11 ай бұрын
If you want to learn Vulkan, there are some tutorials in the description. However I would recommend starting with OpenGL as it is easier, here's a great tutorial: learnopengl.com/ Once you've learned one of these APIs just pick a project to attempt and learn as you go!
@art_cg
@art_cg 11 ай бұрын
@@frozein nice, thanks man!
@Sif-x4l
@Sif-x4l 2 ай бұрын
If I decide on learning Vulkan at some point, I want to make it an early goal to render a vulcanic eruption.
@frozein
@frozein 2 ай бұрын
Ooh, sounds cool. Good luck!
@myrmatta1
@myrmatta1 11 ай бұрын
Great video! (what is happening)
@taishi-sama-tfc
@taishi-sama-tfc 11 ай бұрын
Awesome video! Have you looked on alternative modern graphical APIs such as WGPU(not to be confused with WebGPU)?
@frozein
@frozein 11 ай бұрын
No, so far I only know Vulkan and OpenGL, but I'd like to try the others in the future.
@LineOfThy
@LineOfThy 11 ай бұрын
Very cool :D
@Fuscao_Preto
@Fuscao_Preto 11 ай бұрын
I've been trying to learn vulkan for a while, but man does it miss tutorials.
@frozein
@frozein 11 ай бұрын
Yeah, there really aren't any tutorials that go beyond just a triangle.
@cyancaelus6456
@cyancaelus6456 11 ай бұрын
I Wonder What Game Engine is "Space Engine" Game is Created in
@TheMiniatureRobot
@TheMiniatureRobot 11 ай бұрын
yo, what vs code theme are u using? It looks sick
@frozein
@frozein 11 ай бұрын
It's called gruvbox
@blacklistnr1
@blacklistnr1 11 ай бұрын
I have just one question: How hard was debugging non-errors? e.g. too slow/too much cpu when zooming into the galaxy or a random graphical glitch when looking at a specific angle
@frozein
@frozein 11 ай бұрын
I didn't really run into any issues aside from Vulkan-specific ones, but I assume fixing this issues wouldn't be much harder in Vulkan than in other APIs.
@10bokaj
@10bokaj 11 ай бұрын
now you just need some small creatures and then you have spore
@arushford
@arushford 3 ай бұрын
how much has terra toy made? is it worth doing smaller projects along my INSANE pathway?
@frozein
@frozein 3 ай бұрын
I won't disclose the exact amount, but Terra Toy has only made a few hundred dollars. I didn't make it for the money, just enjoyed the process. I would say making smaller projects is absolutely worth it! I wouldn't have been able to finish Terra Toy had I not previously made 5+ smaller games (they were so bad I never posted them on yt haha) and gained valuable experience.
@arushford
@arushford 3 ай бұрын
@@frozein thank you I just wanted to get an idea of the success rate because I know that some games are not much more than terra toy in the long run and make a lot more money than that so I just want to get an idea and a feel for what people actually want and what I can actually get away with along the way because you know money makes the world go round and without that it's hard to develop anything so
@grandiozny
@grandiozny 3 күн бұрын
How you draw a fog?)
@frozein
@frozein 2 күн бұрын
I just draw a bunch of particles, each one is a semi-transparent circle.
@nikitawew6087
@nikitawew6087 7 ай бұрын
damn. vulkan's hard
@DaminGamerMC
@DaminGamerMC 11 ай бұрын
can you do a tutorial on the 3d infinite grid? not the vulkan part more the shaders and transforms magic
@frozein
@frozein 11 ай бұрын
I likely won't do a tutorial, but the codebase is open source if you want to take a look: github.com/frozein/VkGalaxy
@gustavojoaquin_arch
@gustavojoaquin_arch 3 ай бұрын
impressive very nice
@Biggest-Ounce
@Biggest-Ounce 11 ай бұрын
Care to share your editor, and configurations? 😮😅
@frozein
@frozein 11 ай бұрын
I'm using vscode with the "gruvbox" theme.
@Biggest-Ounce
@Biggest-Ounce 11 ай бұрын
@@frozein I love Gruvbox too, I guess that means we’re kinda basic-but hey 🤷‍♂️ it’s a nice theme
@George-bc7ej
@George-bc7ej 11 ай бұрын
Coool!
@karanahlawat9106
@karanahlawat9106 11 ай бұрын
Hoooooly shit my guy.
@sjoerdev
@sjoerdev 9 ай бұрын
which linux distro are you using and how do you make sure it runs on windows too?
@frozein
@frozein 9 ай бұрын
I'm dual-booting Ubuntu 22 and Windows 11. I do most of my development on Ubuntu but I occasionally switch to Windows to make sure it works there too.
@sjoerdev
@sjoerdev 9 ай бұрын
@@frozein is there a reason you choose ubuntu over debian?
@frozein
@frozein 9 ай бұрын
@@sjoerdev Not particularly, I used ubuntu a bit before so there was some familiarity I guess.
@mldy1
@mldy1 11 ай бұрын
good video, next time maybe 1440p or 4K for higher bitrate
@frozein
@frozein 11 ай бұрын
Yeah KZbin compression didn't play well with this video haha
@wlockuz4467
@wlockuz4467 11 ай бұрын
Bro did some building off camera 💀
@luigidabro
@luigidabro 11 ай бұрын
Are you using gruvbox for vscode?
@frozein
@frozein 11 ай бұрын
Yes, love this theme
@luigidabro
@luigidabro 11 ай бұрын
@@frozein it is truly beautiful. My entire arch-suckless config is based on it!
@arl-t8d
@arl-t8d 11 ай бұрын
No way 😲
@lelordiii8702
@lelordiii8702 11 ай бұрын
Nice
@first9279
@first9279 11 ай бұрын
I would love to work with Vulkan, but sadly my pc doesnt like it.
@eduardoroth8207
@eduardoroth8207 11 ай бұрын
same. my gpu has absolutely no clue of what """vulkan""" is
@first9279
@first9279 11 ай бұрын
@@eduardoroth8207 mine knows it, but doesnt like it when I want to use it. Idk whats the problem it just doesnt work. It cant compile shaders i think... Cute Cat btw
@zdspider6778
@zdspider6778 11 ай бұрын
I read that Vulkan works on graphics cards as old as 2010 (GTX 500 series, "Fermi" architecture).
@carlosmanuel7160
@carlosmanuel7160 11 ай бұрын
Almost as much code as a Java "Hello world!"
@frozein
@frozein 11 ай бұрын
Haha
@Voidptr0403
@Voidptr0403 11 ай бұрын
are you the gigachad?
@artificiyal
@artificiyal 11 ай бұрын
he is
@JustYesntMan
@JustYesntMan 4 ай бұрын
ok zoomer just kidding, thats beautiflul :D
@MAKiTHappen
@MAKiTHappen 11 ай бұрын
THIS IS INCREDIBLE I have done quite a lot of things in vulkan myself but never even gotten close to this level. You are not only skilled, but also extremely talented, and it's really refreshing to finally hear someone use vulkan and appreciate the fact that it's low-levelness is an upside not a downside And so even though I am fully aware that I'll sound completely childish, I have to ask, would you like to work on a project together?
@frozein
@frozein 11 ай бұрын
Thank you so much! I've always found it more enjoyable to work at a lower level. And I appreciate the offer, but I already have a few projects I'm working on myself so I don't have time for anything new.
@MAKiTHappen
@MAKiTHappen 11 ай бұрын
@@frozein Reasonable, thanks for considering and I really would like to reiterate just how talented and skilled you are. Keep doing what you're doing because it's outstanding
@fanzaii
@fanzaii 11 ай бұрын
That's really neat! I really like how refined everything looks.
@andrewpoison
@andrewpoison 11 ай бұрын
I basically learned nothing apart from that I don't want to try it out :D
@frozein
@frozein 11 ай бұрын
Yes it's quite difficult. This video wasn't meant to be a tutorial as that would take far too long, just an update on what I'm working on.
@andrewpoison
@andrewpoison 11 ай бұрын
@@frozein I didn't mean to sound harsh towards you, I basically just brain-farted :D
@frozein
@frozein 11 ай бұрын
@@andrewpoison No worries, glad you enjoyed the video!
@PK-we6vk
@PK-we6vk 11 ай бұрын
I thought we'd be learning the language...
@frozein
@frozein 11 ай бұрын
Check the description if you want some tutorials, they're quite lengthy unfortunately.
@PK-we6vk
@PK-we6vk 11 ай бұрын
​@@frozeinI meant the vulkan language from Star Trek lol
@frozein
@frozein 11 ай бұрын
@@PK-we6vk Ohhh, makes sense haha
@zdspider6778
@zdspider6778 11 ай бұрын
@@PK-we6vk Vulcan and Vulkan are different things.
@gloryjaw4327
@gloryjaw4327 2 ай бұрын
Now render the observable universe
@NeroDefogger
@NeroDefogger 11 ай бұрын
I knew before the start that it wouldn't be about the galaxy code and about how to render using vulkan.... yeeet I'm still somehow disappointed, you did in fact not say literally anything about how you are doing that galaxy, it is such a complex topic for physicists right now and you didn't even care to explain how you did your obviously not attempting to be precise version, like you couldn't give me even that, and as I said I knew, but still... I guess I hoped to be wrong...
@スペース-o2h
@スペース-o2h 11 ай бұрын
OpenGL is easier.
@frozein
@frozein 11 ай бұрын
Agreed, but Vulkan is much more modern so probably a better choice for the future.
@vilian9185
@vilian9185 11 ай бұрын
@@frozein and faster too
@gustavojoaquin_arch
@gustavojoaquin_arch 3 ай бұрын
based, btw i use arch
@erennosurname8607
@erennosurname8607 4 күн бұрын
why did you blur the background?
@frozein
@frozein 2 күн бұрын
What do you mean?
@erennosurname8607
@erennosurname8607 Күн бұрын
@@frozein you blurred the coding screen on background
ALL IT TAKES... A Vulkan Story
29:10
The Cherno
Рет қаралды 133 М.
Coding Adventure: Rendering Fluids
58:41
Sebastian Lague
Рет қаралды 470 М.
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,8 МЛН
How to treat Acne💉
00:31
ISSEI / いっせい
Рет қаралды 108 МЛН
The Vlang Drama
43:35
ThePrimeTime
Рет қаралды 103 М.
Introduction to Vulkan Compute Shaders
21:39
İlker
Рет қаралды 12 М.
Real-time Trumpet Simulation [C++/Vulkan] [WARNING: Flashing Lights]
22:02
Brutally Honest Advice for my younger C++ gamedev self
9:14
Low Level Game Dev
Рет қаралды 11 М.
What P vs NP is actually about
17:58
Polylog
Рет қаралды 140 М.
An introduction to Shader Art Coding
22:40
kishimisu
Рет қаралды 1 МЛН
Teaching myself C so I can build a particle simulation
11:52
Gradience
Рет қаралды 325 М.
What Is A Graphics Programmer?
30:21
Acerola
Рет қаралды 461 М.
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,8 МЛН