Тёмный

PATH TRACER made by 15-YEAR-OLD in C++ OpenGL! // Code Review 

The Cherno
Подписаться 661 тыс.
Просмотров 72 тыс.
50% 1

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 168   
@TheCherno
@TheCherno 9 месяцев назад
I want to wish you all a VERY Merry Christmas and a Happy New Year! Thank you for watching my videos this year, I hope you've enjoyed them and I'm excited for the new year to come as I finally settle into my new (and more permanent) office! ❤ Also see if you can use these holidays to learn something new! You can try everything Brilliant has to offer-free-for a full 30 days, visit brilliant.org/TheCherno. The first 200 of you will get 20% off Brilliant’s annual premium subscription!
@jordanmusicandotherstuff2526
@jordanmusicandotherstuff2526 9 месяцев назад
Legend :))
@nerdastics3987
@nerdastics3987 9 месяцев назад
just a minor thing here, its fine to use OpenGL 4.0 and up, but 3.3 is the most compatible with older platforms and hardware. So if you want to have the possibility of expanding beyond people with the most recent stuff, then 3.3 is the way to go, just make sure you don't use immediate mode. But 4.0 is the best option if your only target is the most recent hardware and drivers
@Eduard_0110
@Eduard_0110 9 месяцев назад
@nerdastics3987 In any tutorial on OpenGL, I always noticed that they tend to use opengl 3.3, so I decided to use that without much thinking about it
@TheCherno
@TheCherno 8 месяцев назад
@@nerdastics3987 I disagree. OpenGL 4.0 was released in 2010, are you really going to be supporting drivers that go further back than that? That's almost 15 years old. At this stage, nobody should be that out of date (unless using retro hardware etc.). Especially if you're an independent developer with no real reason to, I think that's really bad practice and preventing you from doing things in a more modern, beneficial way. I could see this being a potential argument if the year was 2015, but it's 2024.
@nerdastics3987
@nerdastics3987 8 месяцев назад
@@TheCherno the main argument I make here is because 3.3 is the most neutral version. And using it along with extensions such as ARB_buffer_storage, ARB_map_buffer_range, etc. can actually open it up to a more 4.5 style api. There is a gain to using more modern versions, but using 3.3, or well any version that doesn’t cut out older hardware/drivers, is a better practice. There is also significantly more help and documentation and support around 3.3. The extra features of 4.5 aren’t almost at all different from the extensions you can use in 3.3. So in effect they operate with the same features, but 3.3 has more old hardware supportability.
@NickDirtyDolce
@NickDirtyDolce 9 месяцев назад
I have been writing game engines professionally for 15 years and would love a series on it! I am a self taught engineer who is always looking to improve on all fronts. Being open minded to new solutions is a great learning tool.
@MrSofazocker
@MrSofazocker 8 месяцев назад
Wow! I imagine you must pick up all sorts of things. Do you have a favorite thing you discovered or learned? Oh.. and is there any commercial product you worked on, or just closed source?
@NickDirtyDolce
@NickDirtyDolce 8 месяцев назад
Ages ago I made a game called Brawlhalla. I am currently working on an unannounced project. My favorite topics are graphics programming and memory management. A large portion of my passion and day to day involves working on tools and pipelines for artists. My actual degree is in art so I suppose it comes more natural.
@mrslade510
@mrslade510 9 месяцев назад
Damn, at 15 I couldn't even write a for loop properly
@blazbohinc4964
@blazbohinc4964 8 месяцев назад
Well, sentence structure doesn't look Ukrainian at all so if this was written by one, they're very proficient in English - C1 at least. I suspect bait mail by someone either significantly older and/or not Ukranian (name is Anglo-Saxon derivative and not common in UE at all..) idk, might be wrong.
@half_invisible
@half_invisible 7 месяцев назад
Ehhhh, as another, non-native speaking 15-year-old programmer I feel like he definitely could've pulled off a professional mail like that. Clues like the capitalization of certain acronyms also feel like they've been written by a teen.
@mrglick5050
@mrglick5050 5 месяцев назад
same, agreed
@forbiddensongs
@forbiddensongs 9 месяцев назад
i'm a professional engineer watching this - but my field is fully unrelated to everything you do so i still learn a good amount most episodes :D
@LeadyvashKC
@LeadyvashKC 9 месяцев назад
Same i think i could write something like this while looking at this, but at the same time I don't have enough time spare and it's outside my expertise field. It's fun to watch that 15 years old boy wrote this and i'm amazed of his progress and understating of the topic, wish him good career and his peers will be scared if he's a person that people be scared of if they are in same recrutation process XD
@Eduard_0110
@Eduard_0110 9 месяцев назад
Thanks! :D@@LeadyvashKC
@Illmare
@Illmare 9 месяцев назад
Same here I never got any chance to learn graphics so anything related is like arcane magic to me lol.
@brendandower9021
@brendandower9021 Месяц назад
I'm in the same boat. I dont do anything to do with games or game engines. I do work with video, but on the hardware side. I usually come away learning something.
@quizcanners
@quizcanners 9 месяцев назад
Very impressive work Eduard. Someone needs to hire that kid)
@FS-fx1it
@FS-fx1it 9 месяцев назад
Yes, you are indeed wrong! I'm a professor in computer science :) I do not watch it (just) for entertainment ;) There is always something you can learn from others! Hence I check out your stuff to see new ways to solve a problem. In this case I'm impressed what a 15y old can do! Those ppl are exactly what we need at our universities ;)
@barefootfunk
@barefootfunk 2 месяца назад
I’m a pro engineer of 10y in webdev/webgl wanting to do more C++ and I’m both watching for fun at lunch AND trying to learn-so I think you’ll find people all over that spectrum lolol
@GRHmedia
@GRHmedia 9 месяцев назад
OpenGL makes is a good place for someone to start learning about graphics pipelines. Like you said Vulcan is heavy. The only real difference between using opengl 3.3 and 4.5 is what is made available to you. If you aren't going to use the features in 4.5 it won't make the least bit of difference. The same drive is used for both. It won't improve performance or anything like that. It does provide one massive benefit though using opengl 3.3 over 4.5 it runs on more hardware. If you put that 4.5 in there and the system isn't compatible it may not run at all on the system. So using the lowest version you can get away with is generally a best practice.
@nashiora
@nashiora 9 месяцев назад
13:39 While I watch your channel at this point mostly for entertainment, I try to constantly practice "never stop learning" mentality. Sure I may be beyond a lot of your educational content, but I do still learn from your videos often enough. Professional or not, never assume you can't learn more : )
@overcommon7662
@overcommon7662 9 месяцев назад
I love the code reviews. Excited to watch!
@harywhiteproductions
@harywhiteproductions 9 месяцев назад
Please do the architecture series!!
@The1RandomFool
@The1RandomFool 9 месяцев назад
If this is what someone with not much C++ experience can do, I must be an infant.
@CODEDSTUDIO
@CODEDSTUDIO 9 месяцев назад
Can start making Vulkan series too, please
@ZettaiKatsu2013
@ZettaiKatsu2013 3 месяца назад
6:19 why I hate computer science sometimes.
@iXenox
@iXenox 9 месяцев назад
They might intentionally be using OpenGL 3.3 for hardware compatibility
@SwedishviKingohnoes
@SwedishviKingohnoes 9 месяцев назад
Actually, spot on observation on professionals who watch this during lunch. LOL
@thymme7508
@thymme7508 9 месяцев назад
what keyboad do you have? sounds smooth as fuck
@GameGevUA
@GameGevUA 8 месяцев назад
16:02
@depralexcrimson
@depralexcrimson 9 месяцев назад
Nice
@anispinner
@anispinner 9 месяцев назад
15 year old, forty years of age aye
@Eduard_0110
@Eduard_0110 9 месяцев назад
I was actually 14 when I almost finished the project
@jonathanfaller1894
@jonathanfaller1894 9 месяцев назад
I feel like cmake and autotools should be an early port of call for learning c/c++ development. Also, why are these projects always in Windows? You get such better system control, customibility, etc. using Linux. Its also then easy to create Windows builds with small edits to the build files (since I know people come at Linux cause "but most users use windows". I just feel like the dev process is much easier to control in Linux, nothing is done in the background for me, so I get to actually decide what happens)
@shauas4224
@shauas4224 9 месяцев назад
Windows has much lower entry point and not everyone wants to setup Linux environment
@Eduard_0110
@Eduard_0110 9 месяцев назад
I also use my laptop for school, I can't imagine doing a power point about something on Linux
@scion911
@scion911 9 месяцев назад
I have been using linux for development for a long time although I agree with the sentiment, windows is pretty good for game dev believe it or not because of its target being mostly windows. I still don't like daily driving linux for entertainment and mundane tasks, its by far the worst at it ( although I stick to it because I don't consume enough content to justify the productivity negatives of switching to windows other than games). I would spare the kids lol for this.
@shauas4224
@shauas4224 9 месяцев назад
Дуже гарний проект вийшов)
@Eduard_0110
@Eduard_0110 9 месяцев назад
Дякую!@@shauas4224
@KDSBestGameDev
@KDSBestGameDev 9 месяцев назад
Cherno: "I don't imagine professional engineers watching this content" Me: Developing Software for over 2 Decades and over 15 years professionally. Watching! *shocked pikachu face* Cherno: "for anything other than entertainment or eating lunch..." Me: "Okay yeah that is correct. Eating Popcorn while watching and thinking about my current programming issue"
@hoggy077
@hoggy077 9 месяцев назад
Cherno: "I don't imagine professional engineers watching this" Me: *sweating profusely*
@anthonysteinerv
@anthonysteinerv 9 месяцев назад
Yeah man you repeat yourself like crazy. Which should not happen, 80% of the code reviews videos are you just reading the main, downloading, reading the mail, sponsoring brilliant, and talking about how you should distribute and architect some stuff, when for years you didn't have a video on these topics, and still to this day we still have to watch the same, because you haven't finished that yet. Without being harsh but please for god's sake stop with this pattern, download the code before, (should work) but if not fix it before, go through the project, instead of reading it live for at least an hour before doing the video, then you can write what stuff you want to do for the specific video for example in past videos talking about the physics, and just go there and debug, fix, talk about that specific stuff. I know you are pretty dam good at reading code and shit, but we are not that good so you just reading through the main is not that good as a source for learning. I think a lot of us could benefit from these changes! P.S. also stop with the nit picking on stuff that are not that important i.e. how people name variables, or how they instantiate stuff, when it doesn't make an impact on performance.
@edwin5145
@edwin5145 8 месяцев назад
I think you're right these things need more planning
@LetsDark
@LetsDark 9 месяцев назад
I watch this videos for fun, but yes you are repeating yourself a lot. I'm 24 min in and we haven't looked at anything specific for this project. Just setup, GL and main function. What about the "problems" you saw in the demo, like the brightness?
@buchnejf
@buchnejf 9 месяцев назад
There was a lot to fix, comment on, and understand before getting into the project.
@Eduard_0110
@Eduard_0110 9 месяцев назад
The problem with brightness can be fixed if you use about 15 - 20 samples per pixel, because the default is 5. And it also might be because of the too bright HDR image that is set as the default. In that app you can change the skybox. Thanks a lot for the review!
@breachbase
@breachbase 9 месяцев назад
Прикольний проект! Я теж Українець, і теж в 16 побудував схожий рей трейсер, але по функціональності, він далеко від твого 😅
@skal3802
@skal3802 9 месяцев назад
Класно вийшло) Я в свої 19 нічого подібного так і не зробив
@anthonysteinerv
@anthonysteinerv 9 месяцев назад
You're a beast of a 15-year-old mate! Keep grinding, you will be doing crazy things in few years!
@acestandard6315
@acestandard6315 9 месяцев назад
Я тільки почав займатися графічним програмуванням, як і місяць тому, хоча воно повністю відрізняється від інших аспектів програмування, я думаю, що мені це дуже подобається. Used google translate btw. 😁
@Eduard_0110
@Eduard_0110 9 месяцев назад
@@acestandard6315 I think it is different form most aspects of programming because of how much maths it involves. Honestly, I don't think that my project is hard in terms of the code, its structure. However, I think that the maths part of it is what makes look good and look as a good project as a whole. Computer graphics is hard and complicated in some parts, but this is why I love it, and spent about 5 months studying it, spending about 10 hours on some days just to understand how refraction works and how to implement it in my project. So, overall, I think computer graphics is different from everything else because of its maths behind it, but machine learning is also full of maths for example but is not as interesting to me as computer graphics. P. S. I didn't use google translate)
@0jinZ
@0jinZ 9 месяцев назад
Only 15 years old. Impressive.
@thomaslechner1622
@thomaslechner1622 9 месяцев назад
I have no idea how a 15 year guy can do things I cannot even understand fully! I am a senior hardware engineer, never got into that software secrets.... My knowledge of C++ is limited to functions, variables and classes. I have absolutely no idea about vulcan, Open GL, frame buffers, drivers, ... I cannot even draw a window using C++. My C++ programs run within the console only ;(😢
@Eduard_0110
@Eduard_0110 9 месяцев назад
I'll modify the path tracer to draw in the console, Ascii art. I once did it in python
@star_man
@star_man 9 месяцев назад
At 15 years old I made a Reversi/Othello game in BASIC on an Amstrad 6128 that you played against the computer... I'm extremely impressed with this 15 year old.
@lemonk1230
@lemonk1230 8 месяцев назад
it IS super impressive, but in your defense the difference in toolsets is sort of like comparing a sloop to a modern aircraft carrier :P
@hex697
@hex697 9 месяцев назад
This is pretty sick! I'm 16 and made a voxel raytracer of my own last year, (I was planning on making it into a pathtracer but ran into trouble when I was trying to do some smart modified DDA stepping through my octree. I might revisit it once I have my laptop working again and finish the fluid physics engine I've been wanting to work on.
@the_real_aristotle
@the_real_aristotle 8 месяцев назад
i need to get my shit together ive been telling mself i need to code way more often for 2 years now im 17 now 💀💀 big ass waste of time
@ExFabian
@ExFabian 3 месяца назад
​@@the_real_aristotle same man I feel like I've already wasted my life and I'm not even 18 yet
@PrestonThorpe-d1x
@PrestonThorpe-d1x 9 месяцев назад
also professional engineer watching this, in the backend web and systems space so nothing to do with games or graphics. I watch these to learn (I don't do much with c++, mostly Rust) and for entertainment. But I always learn a lot even though I understand very little of the graphics stuff :D
@nestor1208
@nestor1208 9 месяцев назад
I'm a middle C++ SE, and I am watching these videos mostly because of your wisdom on architecture and optimization. Very useful when we dive into that. And mostly out of habit, because I've grown as a specialist practically solely on your videos. Thanks for that, btw
@MrSofazocker
@MrSofazocker 8 месяцев назад
25:00 the TauStep is a single step of the combined Tausworthe generator. The implementation looks like carbon copy of Chapter 37 of GPU Gems 3. so nothing wrong with it perse...
@yairlevi8469
@yairlevi8469 9 месяцев назад
Cherno even optimizes the camera angle. Oh, good ol' optimization habits...
@CatzHoek
@CatzHoek 9 месяцев назад
I love how in literally every video you have a "which is linked up here" moment where you point into the top right corner and there is NEVER a link. You forget every single time.
@oystercatcher943
@oystercatcher943 9 месяцев назад
Very impressive. Funnily enough my son has just completed his A level project in C#, a ray marching path tracer. It’s not GPU so it’s much slower but lovely to see him learn this stuff
@sournois90
@sournois90 9 месяцев назад
i wish my parents also liked the stuff we do
@QmVuamFtaW4
@QmVuamFtaW4 9 месяцев назад
how old is he?
@oystercatcher943
@oystercatcher943 9 месяцев назад
@@QmVuamFtaW4 a full 17. I’m impressed with his friends too. One is training neural networks coded from scratch and one has developed a message app which the teachers are using. We underestimate young people
@QmVuamFtaW4
@QmVuamFtaW4 9 месяцев назад
damn, that is great. @@oystercatcher943
@mrwalter1049
@mrwalter1049 9 месяцев назад
@@oystercatcher943 The company I work at hired a 17yo as an engineer part-time. He's worked on multiple active enterprise projects so far. I'm really proud our company is investing in young developers uni grads, students and High schoolers. If you can do the job and do it well, you are worth hiring, no matter where you are in life.
@Alkanen
@Alkanen 9 месяцев назад
"next year, things are gonna happen"
@mjthebest7294
@mjthebest7294 9 месяцев назад
Hopefullyyy
@mrcrackerist
@mrcrackerist 9 месяцев назад
Professional programmer in C and C++, always fun and informative to watch others code and opinion.
@kamil_atakan
@kamil_atakan 9 месяцев назад
congrats on the new office🎉
@ufffd
@ufffd Месяц назад
i love trusty openGL 3.3 mac only supports up to 4.1 afaik, and the new features id want are in 4.3+ so i haven’t seen a good reason to update projects yet
@oystercatcher943
@oystercatcher943 9 месяцев назад
I previously followed tutorials on GPU path tracing and had similar accumulation issues accumulating samples. A lot of care is needed about the RGBA formats used of course. Floating point RGBA doesn’t immediately save you as you might simplistically think and quantisation/saturation leads to high contrast/colouring
@OleZZ222
@OleZZ222 9 месяцев назад
..yes, mostly for entertainment while understanding about 70 - 80% of what you talking about.
@ViktorBudylin
@ViktorBudylin 9 месяцев назад
Back when I was 15 years old I haven't even heard a thing about Arduino and couldn't write a Hello World.
@rydmerlin
@rydmerlin 2 месяца назад
As soon as I saw my first of your videos I knew you were grammar school educated. What was your strongest subject at school since your articulation is fantastic.
@F1nalspace
@F1nalspace 9 месяцев назад
This project is really cool and it would be a perfect candiate to use my single -header-file platform-abstraction (libFPL) and OpenGL-loader library (Final Dynamic OpenGL Library), so you dont need any libs, any dll's, anymore it just works ;-)
@stalkerkk
@stalkerkk 9 месяцев назад
It took me months understand shitty shaders and vao, vbo and 15 years writing pathtracer.... 😢
@LG-bb5zq
@LG-bb5zq 9 месяцев назад
I created the sponsor block, usually someone else has blocked the segment but this time I was first, so I submitted the sponsored segment (brilliant sponser) so now if you have the extension yo dont have to watch the sponsor thanks to me.
@mithadis
@mithadis 8 месяцев назад
Wait, am I missing something, or is this check "(framesStill % 2 == 2)" never going to be true..?
@Eduard_0110
@Eduard_0110 8 месяцев назад
yeah, you are right, thanks for pointing at it. I fixed it, but it really doesn't change anything because the variable 'last_texture' is not really used
@y4ni608
@y4ni608 9 месяцев назад
Haha he also just had the .sln file, im glad i took ur advice and built a nice project structure using CMake
@BenBE1987
@BenBE1987 7 месяцев назад
At 34:31 on line 127 the condition should be (framesStill % 2 == 0).
@sumikomei
@sumikomei 9 месяцев назад
I just want you to know that I absolutely love when you go into the weeds of things. There's actually so much to learn it's insane, and I'm all for it so yes please.
@MrMariozzz78
@MrMariozzz78 4 месяца назад
it mean the boy made a render engine ? "homemade" engine?
@Xenthera
@Xenthera 5 месяцев назад
Lmao this person was 1 when the OpenGL version they’re using was released
@Eduard_0110
@Eduard_0110 5 месяцев назад
Everything new is well-forgotten old
@bananacomputer9351
@bananacomputer9351 2 месяца назад
what theme do you use in vscode? thanks
@fazin85
@fazin85 5 месяцев назад
as a 14 year old developer I feel inspired
@jfftck
@jfftck 9 месяцев назад
I am curious if you have projects for game development in Linux, macOS, or mobile that you can demonstrate. That way you can point out the differences to watch out for when writing for other platforms.
@mikebrown9051
@mikebrown9051 9 месяцев назад
Do you still do game reactions? Was wondering what's your thought's on all 3 of the Hellblade "gameplay" trailers. Hope to see em' & thank you.
@sadunozer2241
@sadunozer2241 9 месяцев назад
I watch your videos, because I became a professional by watching your videos. You are absolutely amazing to watch for every skill level!!!
@00xero
@00xero Месяц назад
You still use google? 😖
@boyohoyo1569
@boyohoyo1569 8 месяцев назад
at least you stopped doing the thing where you throw your hands in the air, man i would always cringe seeing that
@Eesasx
@Eesasx 6 месяцев назад
Ok, umm, yeah ok yeah, ok, ok.
@Oxxyjoe
@Oxxyjoe 9 месяцев назад
I wanted to see the shapes reflect/diffuse(etc) with the background at least So, your experience and stuff is really great, I'm just a short-attention-span guy who wants something visual to tie to the verbal. Way cool stuff for a young person to already be doing! I believe that when I was young, and assuming I had been more proactive back then, I would have been much more likely to hack something together of very questionable safety and quality
@Eduard_0110
@Eduard_0110 9 месяцев назад
You can try to build the project yourself, I fixed some of those bugs so it has to now build correctly, if you are on windows
@The14Some1
@The14Some1 9 месяцев назад
That Lybrary is sooo cute:) Hype for ukraininan developers!
@Ross-ng4xl
@Ross-ng4xl 9 месяцев назад
Architecture series would be amazing
@erickoavenada969
@erickoavenada969 9 месяцев назад
Im 15 and learned htmlCssJs, Php, python and cpp also lua and but cant make a simple project
@mrsnup
@mrsnup 9 месяцев назад
So you didnt really learn it then? Maybe its better to stick to one for a long time before jumping on to something new
@erickoavenada969
@erickoavenada969 9 месяцев назад
@@mrsnup I already made some projects like time, some math equations but i feel like its not enough
@scion911
@scion911 9 месяцев назад
its ok, just keep trying new things. You have a ton of time, I started when I was 13. Exploring while making small projects along the way that interested me (although I always thought, I was becoming jack of trades master of none). You can start specialising later on in life. Have fun, people forget why they like programming later on in life.
@y4ni608
@y4ni608 9 месяцев назад
@@erickoavenada969 Iam pretty sure you didnt really "learn" them eventually you know the basics, but try to really get into a language and create something like a "mini-gameengine" in for example C++ its easy and doesnt take alot of t ime, it doenst evene need a GUI or somethng
@Eduard_0110
@Eduard_0110 9 месяцев назад
Just with the knowledge of the syntax of a language does not make you a good programmer. You can try tens of different languages, but you have to choose 1 or a few and stick to them. C++ is good for game development, for example. Then try learning things like algorithms and make simple projects like some games. I began with learning python, and I used to love making simple games with pygame. Might be a good start for you
@debbyda
@debbyda 9 месяцев назад
Hell yes, do we need this application/game engine architecture series!!! 🔥🔥
@spotnag6854
@spotnag6854 8 месяцев назад
Although he says he has been working on it for 5 months i don't think you can say 3600 hours, I doubt he was working on it for 24 hours a day 7 days a week for 5 months with no sleep. Just mentioning as it shows how even more impressive this work is. Great series, keep up the videos.
@Eduard_0110
@Eduard_0110 8 месяцев назад
He was just joking. Although I did spend about 8 hours of work on some days)
@skal3802
@skal3802 9 месяцев назад
We need series about software architecture :)
@lanchanoinguyen2914
@lanchanoinguyen2914 9 месяцев назад
Ray tracing,path tracing are easiest method of shading.
@ShredST
@ShredST 9 месяцев назад
lol
@Eduard_0110
@Eduard_0110 9 месяцев назад
Which ones are harder?
@kalisticmodiani2613
@kalisticmodiani2613 9 месяцев назад
​@@Eduard_0110a basic rasterizer has usually more parts than a basic ray tracer.
@Eduard_0110
@Eduard_0110 9 месяцев назад
I disagree
@notflask
@notflask 8 месяцев назад
can you share settings of vs2022 and visual assist please?
@pavliv
@pavliv 7 месяцев назад
I lyke it)
@petertamas6397
@petertamas6397 9 месяцев назад
26:54 in the section on using the uniform buffer, you mentioned that we cannot upload textures (sampler2D) to the uniform buffer. I recently came across the phenomenon of bindless textures in OpenGL. With this technique we can create a 64-bit handler for textures, which can then be loaded into shader buffers and then used for texture sampling. From here on, we can achieve an almost "infinite" number of textures in the shader. My question is, why is this technique not widely known? Why isn't this talked about much and doesn't seem to be used?
@yas1945
@yas1945 9 месяцев назад
My understanding is that Bindless, DSA, multidraw indirect, etc. that were added post 4.0 are specifically targeted to reducing driver overhead of the state and validation-heavy nature of an OpenGL driver. The reason it isn't more widely used IMO is that most projects that need to overcome that barrier are better served with vulkan/DX12/Metal. OpenGL is still very useful for learners or for projects which will never have to deal with driver-related bottlenecks. My observation is that there isn't a ton of overlap between the two, which may be why it isn't widely used. Still, I think for someone who knows core OpenGL, but finds newer lower level API's very heavy and daunting, I can see how learning the new 4.x techniques might be a good "on ramp" that sets them up to more easily transition to vulkan if they want... I'd be interested to hear if others with more experience agree/disagree. Cheers!
@steveafanador6441
@steveafanador6441 9 месяцев назад
Your a beast cherno. This kind of stuff is so hard to even learn to do. 👍👍
@copilou2
@copilou2 8 месяцев назад
just had to tell you that you are an amazing human being
@practicaltheory6604
@practicaltheory6604 8 месяцев назад
Can you do a new C++ guide for this year ? :D
@heclaire2898
@heclaire2898 9 месяцев назад
Thank u cherno,u are so intelligent
@jonforhan9196
@jonforhan9196 9 месяцев назад
i see cherno i click
@ProkerKusaka
@ProkerKusaka 9 месяцев назад
)
@jell0goeswiggle
@jell0goeswiggle 9 месяцев назад
As an engineer: mostly entertainment, but it's been like 15 years (... oh, God, as old as this kid!) since I last coded in C++ so there's an element of picking up tidbits of information here and there, too.
@zanagi
@zanagi 9 месяцев назад
Actually the only channel i cannot watch while eating cause i would've understand zero thing lol
@alainfreedom3159
@alainfreedom3159 9 месяцев назад
so what if you took the poison vazzinnnne
@yanononopon
@yanononopon 9 месяцев назад
Hi I've been using C/C++ as an everyday programing language, for my studies at uni, and for my PhD now, but I can't understand why, for the love of God, you would still use windows, this is a garbage OS for anything.
@Eduard_0110
@Eduard_0110 9 месяцев назад
Why?
@scion911
@scion911 9 месяцев назад
I feel like you should know the answer if you have a PhD. don't think it really matters which tool you use, specially gamedev is mostly related to windows.
@Eduard_0110
@Eduard_0110 9 месяцев назад
@sids911 I also use my laptop for school, with Linux it would be much harder to even create a simple powerpoint
@ShredST
@ShredST 9 месяцев назад
Visual C++ is a better debugger than gdb. Plus, he's a game developer. Most people play games in Windows
@not_ever
@not_ever 9 месяцев назад
@@Eduard_0110 This is a skill issue not a Linux issue. You can use the online version of Office 365, Libre Office/a FOSS alternative, write your slides in one of the many available markdown/javascript frameworks, etc. etc. etc. Also people are talking about development environments for C++ and you're here talking about Powerpoint...💀 To the OP of the comment thread, Windows in not garbage for Windows dev or game dev. That much should be obvious to someone doing a PhD. To the person who truly believes "Visual C++ is a better debugger than gdb", I strongly doubt you have the experience with GDB to correctly assess this, but even so GDB is not the only debugger or debugging tool available on Linux.
@u28OO
@u28OO 9 месяцев назад
Did the same thing in Vulkan when I was 16 -3-
@Eduard_0110
@Eduard_0110 9 месяцев назад
Have you still got the project? I would like to look at it!
@mildheadwound
@mildheadwound 9 месяцев назад
Open G Lame.
@Eduard_0110
@Eduard_0110 9 месяцев назад
whats wrong with it?
@Netryon
@Netryon 9 месяцев назад
I'm sure there is lot's of math behind that software, but that's why you should try blueprints.- they just asking if it's college because they need quality prove and Star Citizen insurance and wish to be considered as European Capital of Culture. You were wrong they waiting for Strunraan, but it phased because somebody had Instance ID in the open world - that's then somebody clicked ctrl+s. This is that work behind the scenes, but it's where should say I want to do some real work because I see that picture as a painter and hear the birds in the spring. It's not fixing some old website - so why just don't go with latest opengl? If they give you girls you would learn anything 17:00. And here is that 6:26 should I write php artisan update or composer update - why won't just have that rebuild button? Should not search for that at the recent work place.
@emperorpalpatine6080
@emperorpalpatine6080 9 месяцев назад
are you okay ?
@joedartonthefenderbass
@joedartonthefenderbass 9 месяцев назад
What the fuck 😭
@Netryon
@Netryon 9 месяцев назад
@@emperorpalpatine6080 I promise
@QmVuamFtaW4
@QmVuamFtaW4 9 месяцев назад
bro what the hell are you talking about?
@Eduard_0110
@Eduard_0110 9 месяцев назад
okay
@gsestream
@gsestream 9 месяцев назад
or why visual studio does not make all paths relative by default... user experience - -. every package, tool, IDE, is a new language to learn, keep it simple. interface is a language, to talk to with. darn those quarts. if next level means more complex less intuitive then darn them. holy c/c++ is complex with the features. language designers darn. Java templates support is not finalized if you cant array default all types of objects. the point is you are not in a hurry in all cases. hurry releases makes bad quality assurance. so much generational burden, in vain. if it can fail it will fail. btw that style of scene, or any scene, would be cheaper to just raster the whole scene from a point, instead of tracing the rays. understanding and making everything yourself is usually better than just using a library or gpu routine, like loading/saving models and doing the cpu ray/plane tracing intersection math etc. yep diy lets you make them again when ever required, and be broadly skilled to do everything, not having to copy from anyone.
@gsestream
@gsestream 9 месяцев назад
what library, just pure language features, cut the bloat from the floats, and executable sizes
@gsestream
@gsestream 9 месяцев назад
about the Java generic/template objects, Objects[] array can bypass the specific array allocation of generic objects limitation, with an unchecked cast when dealing with the array, c/c++ style. I mean you can do IndexSort[] testarray = (IndexSort[]) new Object[5]; (
@gsestream
@gsestream 9 месяцев назад
defaults people defaults, must always be the best, not needing configuration by default, avoid needing configuration at all costs
@whwahhdsh
@whwahhdsh 9 месяцев назад
i love cherno
@18PregnantAndProud
@18PregnantAndProud 9 месяцев назад
is your main computer a mac or windows ?
Далее
Don't Make This Mistake! // Code Review
29:21
Просмотров 53 тыс.
▼ КАПИТАН НАШЁЛ НЕФТЬ В 🍑
33:40
Просмотров 260 тыс.
Hazel - My Game Engine // Code Review
40:59
Просмотров 116 тыс.
I HAD to fix this immediately // Code Review
31:47
Просмотров 30 тыс.
2000 HOUR 2D Game Engine! // Code Review
32:01
Просмотров 87 тыс.
How I Made My Game Engine MUCH Faster...
24:29
Просмотров 101 тыс.
GTA3 Code Review: Weapons, Vehicles, Cops and Gangs
15:00
The Home Server I've Been Wanting
18:14
Просмотров 154 тыс.
What Is A Graphics Programmer?
30:21
Просмотров 426 тыс.
I tried coding my own graphics engine
4:23
Просмотров 203 тыс.