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

Поделиться
HTML-код
  • Опубликовано: 19 янв 2025

Комментарии • 173

  • @TheCherno
    @TheCherno  Год назад +58

    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 Год назад +2

      Legend :))

    • @nerdastics3987
      @nerdastics3987 Год назад +1

      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 Год назад

      @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  Год назад +1

      @@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 Год назад

      @@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.

  • @KDSBestGameDev
    @KDSBestGameDev Год назад +142

    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 Год назад +12

      Cherno: "I don't imagine professional engineers watching this"
      Me: *sweating profusely*

  • @forbiddensongs
    @forbiddensongs Год назад +97

    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 Год назад +6

      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 Год назад

      Thanks! :D@@LeadyvashKC

    • @Illmare
      @Illmare Год назад +2

      Same here I never got any chance to learn graphics so anything related is like arcane magic to me lol.

    • @brendandower9021
      @brendandower9021 4 месяца назад

      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.

  • @nestor1208
    @nestor1208 Год назад +8

    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

  • @NickDirtyDolce
    @NickDirtyDolce Год назад +31

    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 Год назад

      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 Год назад

      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.

    • @leoferaderonugraha1930
      @leoferaderonugraha1930 2 месяца назад +1

      @@NickDirtyDolce i'm surprised to see the developer of a game i often play in this comment section. shout out to you for creating such an enjoyable game, it’s awesome!

    • @NickDirtyDolce
      @NickDirtyDolce 2 месяца назад

      @leoferaderonugraha1930 Haha heck yah! I'm happy to hear and thanks!

  • @LetsDark
    @LetsDark Год назад +125

    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 Год назад +13

      There was a lot to fix, comment on, and understand before getting into the project.

  • @mrslade510
    @mrslade510 Год назад +38

    Damn, at 15 I couldn't even write a for loop properly

    • @blazbohinc4964
      @blazbohinc4964 11 месяцев назад +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 11 месяцев назад +6

      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 8 месяцев назад

      same, agreed

  • @Eduard_0110
    @Eduard_0110 Год назад +50

    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 Год назад +4

      Прикольний проект! Я теж Українець, і теж в 16 побудував схожий рей трейсер, але по функціональності, він далеко від твого 😅

    • @Sk4Le3
      @Sk4Le3 Год назад +3

      Класно вийшло) Я в свої 19 нічого подібного так і не зробив

    • @anthonysteinerv
      @anthonysteinerv Год назад +6

      You're a beast of a 15-year-old mate! Keep grinding, you will be doing crazy things in few years!

    • @acestandard6315
      @acestandard6315 Год назад +2

      Я тільки почав займатися графічним програмуванням, як і місяць тому, хоча воно повністю відрізняється від інших аспектів програмування, я думаю, що мені це дуже подобається.
      Used google translate btw. 😁

    • @Eduard_0110
      @Eduard_0110 Год назад +4

      @@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)

  • @star_man
    @star_man Год назад +22

    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 Год назад +3

      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

  • @sumikomei
    @sumikomei Год назад +1

    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.

  • @mrcrackerist
    @mrcrackerist Год назад +2

    Professional programmer in C and C++, always fun and informative to watch others code and opinion.

  • @FS-fx1it
    @FS-fx1it Год назад +7

    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 ;)

  • @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 Год назад +2

      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 6 месяцев назад

      ​@@the_real_aristotle same man I feel like I've already wasted my life and I'm not even 18 yet

  • @oystercatcher943
    @oystercatcher943 Год назад +24

    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

    • @calengo454
      @calengo454 Год назад +8

      i wish my parents also liked the stuff we do

    • @QmVuamFtaW4
      @QmVuamFtaW4 Год назад

      how old is he?

    • @oystercatcher943
      @oystercatcher943 Год назад +7

      @@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 Год назад

      damn, that is great. @@oystercatcher943

    • @mrwalter1049
      @mrwalter1049 Год назад

      @@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.

  • @MYNAME_ABC
    @MYNAME_ABC Год назад +4

    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 Год назад +1

      I'll modify the path tracer to draw in the console, Ascii art. I once did it in python

  • @CatzHoek
    @CatzHoek Год назад +2

    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.

  • @quizcanners
    @quizcanners Год назад +3

    Very impressive work Eduard. Someone needs to hire that kid)

  • @The1RandomFool
    @The1RandomFool Год назад +3

    If this is what someone with not much C++ experience can do, I must be an infant.

  • @MrSofazocker
    @MrSofazocker Год назад +1

    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...

  • @PrestonThorpe-d1x
    @PrestonThorpe-d1x Год назад +4

    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

  • @GRHmedia
    @GRHmedia Год назад +3

    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 Год назад +1

    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 : )

  • @kamil_atakan
    @kamil_atakan Год назад +5

    congrats on the new office🎉

  • @0jinZ
    @0jinZ Год назад +8

    Only 15 years old. Impressive.

  • @barefootfunk
    @barefootfunk 6 месяцев назад

    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

  • @istvanszennai5209
    @istvanszennai5209 2 месяца назад

    to be fair even the DirectX SDK samples mostly consist of just the main.cpp file, probably because they are supposed to be tutorials and not an "engine". I follow a similar structure in my own public codes as well, mainly because the beginners just want to see the OpenGL code and don't want to bother with OOP stuff. I could of course organize it into an engine but that would be like rewriting my private engine yet another time (did it three times so far as part of my job).

  • @yairlevi8469
    @yairlevi8469 Год назад +4

    Cherno even optimizes the camera angle. Oh, good ol' optimization habits...

  • @oystercatcher943
    @oystercatcher943 Год назад +2

    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

  • @y4ni608
    @y4ni608 Год назад +1

    Haha he also just had the .sln file, im glad i took ur advice and built a nice project structure using CMake

  • @rydmerlin
    @rydmerlin 6 месяцев назад

    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.

  • @overcommon7662
    @overcommon7662 Год назад +3

    I love the code reviews. Excited to watch!

  • @Alkanen
    @Alkanen Год назад +2

    "next year, things are gonna happen"

  • @sadunozer2241
    @sadunozer2241 Год назад

    I watch your videos, because I became a professional by watching your videos. You are absolutely amazing to watch for every skill level!!!

  • @petertamas6397
    @petertamas6397 Год назад +4

    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 Год назад +1

      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!

  • @ViktorBudylin
    @ViktorBudylin Год назад +1

    Back when I was 15 years old I haven't even heard a thing about Arduino and couldn't write a Hello World.

  • @harywhiteproductions
    @harywhiteproductions Год назад +1

    Please do the architecture series!!

  • @ZettaiKatsu2013
    @ZettaiKatsu2013 7 месяцев назад +1

    6:19 why I hate computer science sometimes.

  • @debbyda
    @debbyda Год назад

    Hell yes, do we need this application/game engine architecture series!!! 🔥🔥

  • @spotnag6854
    @spotnag6854 Год назад

    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 Год назад +2

      He was just joking. Although I did spend about 8 hours of work on some days)

  • @ufffd
    @ufffd 5 месяцев назад

    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

  • @Oxxyjoe
    @Oxxyjoe Год назад +1

    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 Год назад +1

      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

  • @CODEDSTUDIO
    @CODEDSTUDIO Год назад +2

    Can start making Vulkan series too, please

  • @Ross-ng4xl
    @Ross-ng4xl Год назад

    Architecture series would be amazing

  • @copilou2
    @copilou2 Год назад

    just had to tell you that you are an amazing human being

  • @BenBE1987
    @BenBE1987 11 месяцев назад

    At 34:31 on line 127 the condition should be (framesStill % 2 == 0).

  • @Sk4Le3
    @Sk4Le3 Год назад

    We need series about software architecture :)

  • @F1nalspace
    @F1nalspace Год назад +1

    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 ;-)

  • @steveafanador6441
    @steveafanador6441 Год назад

    Your a beast cherno. This kind of stuff is so hard to even learn to do. 👍👍

  • @jfftck
    @jfftck Год назад

    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.

  • @practicaltheory6604
    @practicaltheory6604 Год назад

    Can you do a new C++ guide for this year ? :D

  • @bananacomputer9351
    @bananacomputer9351 6 месяцев назад

    what theme do you use in vscode? thanks

  • @anthonysteinerv
    @anthonysteinerv Год назад +4

    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 Год назад

      I think you're right these things need more planning

    • @brandongregori995
      @brandongregori995 3 месяца назад

      100% this. Couldn't agree more

  • @fazin85
    @fazin85 9 месяцев назад

    as a 14 year old developer I feel inspired

  • @jell0goeswiggle
    @jell0goeswiggle Год назад +1

    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.

  • @LG-bb5zq
    @LG-bb5zq Год назад +1

    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.

  • @notflask
    @notflask Год назад

    can you share settings of vs2022 and visual assist please?

  • @mikebrown9051
    @mikebrown9051 Год назад

    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.

  • @SwedishviKingohnoes
    @SwedishviKingohnoes Год назад

    Actually, spot on observation on professionals who watch this during lunch. LOL

  • @heclaire2898
    @heclaire2898 Год назад

    Thank u cherno,u are so intelligent

  • @iXenox
    @iXenox Год назад +2

    They might intentionally be using OpenGL 3.3 for hardware compatibility

  • @mithadis
    @mithadis Год назад

    Wait, am I missing something, or is this check "(framesStill % 2 == 2)" never going to be true..?

    • @Eduard_0110
      @Eduard_0110 Год назад +1

      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

  • @zanagi
    @zanagi Год назад +1

    Actually the only channel i cannot watch while eating cause i would've understand zero thing lol

  • @thymme7508
    @thymme7508 Год назад

    what keyboad do you have? sounds smooth as fuck

  • @Netryon
    @Netryon Год назад

    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.

  • @OleZZ222
    @OleZZ222 Год назад +1

    ..yes, mostly for entertainment while understanding about 70 - 80% of what you talking about.

  • @erickoavenada969
    @erickoavenada969 Год назад +1

    Im 15 and learned htmlCssJs, Php, python and cpp also lua and but cant make a simple project

    • @mrsnup
      @mrsnup Год назад +1

      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 Год назад

      @@mrsnup I already made some projects like time, some math equations but i feel like its not enough

    • @scion911
      @scion911 Год назад +1

      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 Год назад

      @@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 Год назад +1

      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

  • @MrMariozzz78
    @MrMariozzz78 8 месяцев назад

    it mean the boy made a render engine ? "homemade" engine?

  • @stalkerkk
    @stalkerkk Год назад +1

    It took me months understand shitty shaders and vao, vbo and 15 years writing pathtracer.... 😢

  • @Xenthera
    @Xenthera 9 месяцев назад

    Lmao this person was 1 when the OpenGL version they’re using was released

    • @Eduard_0110
      @Eduard_0110 9 месяцев назад

      Everything new is well-forgotten old

  • @GameGevUA
    @GameGevUA Год назад

    16:02

  • @jonforhan9196
    @jonforhan9196 Год назад

    i see cherno i click

  • @lanchanoinguyen2914
    @lanchanoinguyen2914 Год назад +1

    Ray tracing,path tracing are easiest method of shading.

  • @alainfreedom3159
    @alainfreedom3159 Год назад +1

    so what if you took the poison vazzinnnne

  • @The14Some1
    @The14Some1 Год назад

    That Lybrary is sooo cute:) Hype for ukraininan developers!

  • @anispinner
    @anispinner Год назад

    15 year old, forty years of age aye

    • @Eduard_0110
      @Eduard_0110 Год назад +2

      I was actually 14 when I almost finished the project

  • @boyohoyo1569
    @boyohoyo1569 Год назад

    at least you stopped doing the thing where you throw your hands in the air, man i would always cringe seeing that

  • @u28OO
    @u28OO Год назад

    Did the same thing in Vulkan when I was 16 -3-

    • @Eduard_0110
      @Eduard_0110 Год назад

      Have you still got the project? I would like to look at it!

  • @depralexcrimson
    @depralexcrimson Год назад

    Nice

  • @pavliv
    @pavliv 11 месяцев назад

    I lyke it)

  • @ixyops
    @ixyops 10 месяцев назад

    Ok, umm, yeah ok yeah, ok, ok.

  • @jonathanfaller1894
    @jonathanfaller1894 Год назад +1

    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 Год назад +1

      Windows has much lower entry point and not everyone wants to setup Linux environment

    • @Eduard_0110
      @Eduard_0110 Год назад

      I also use my laptop for school, I can't imagine doing a power point about something on Linux

    • @scion911
      @scion911 Год назад

      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 Год назад

      Дуже гарний проект вийшов)

    • @Eduard_0110
      @Eduard_0110 Год назад

      Дякую!@@shauas4224

  • @yanononopon
    @yanononopon Год назад +1

    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 Год назад

      Why?

    • @scion911
      @scion911 Год назад +6

      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 Год назад

      @sids911 I also use my laptop for school, with Linux it would be much harder to even create a simple powerpoint

    • @ShredST
      @ShredST Год назад +1

      Visual C++ is a better debugger than gdb. Plus, he's a game developer. Most people play games in Windows

    • @not_ever
      @not_ever Год назад

      @@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.

  • @00xero
    @00xero 5 месяцев назад

    You still use google? 😖

  • @ProkerKusaka
    @ProkerKusaka Год назад

    )

  • @gsestream
    @gsestream Год назад

    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 Год назад

      what library, just pure language features, cut the bloat from the floats, and executable sizes

    • @gsestream
      @gsestream Год назад

      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 Год назад

      defaults people defaults, must always be the best, not needing configuration by default, avoid needing configuration at all costs

  • @mildheadwound
    @mildheadwound Год назад

    Open G Lame.

  • @whwahhdsh
    @whwahhdsh Год назад

    i love cherno