Building a Physics Engine with C++ and Simulating Machines

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

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

  • @theDemong0d
    @theDemong0d 2 года назад +2181

    No sleeping here, there is a huge lack of technical content on youtube at this level, these videos are killer. Keep it up. Would love to see the deep-dive on your fluid sims for your engine project.

    • @Alexander_Sannikov
      @Alexander_Sannikov 2 года назад +23

      I don't think you actually realize how much effort goes into creating a video like this. "At this level" there's extremely little content on the entire youtube.

    • @theDemong0d
      @theDemong0d 2 года назад +45

      @@Alexander_Sannikov I'm not sure exactly how to interpret this, but I never said it was easy. Also, that is not strictly true since there is an immense amount of highly technical content on youtube, just not in the realm of individuals writing interesting things from scratch, and not laid out to present novel experiments, Sebastian Lague-style.

    • @Alexander_Sannikov
      @Alexander_Sannikov 2 года назад +5

      @@theDemong0d what I mean is that 99% of sebastian league style content requires much less knowledge and effort than a video like this.
      UPD nvm, I think I read your original post wrong. I think I read "huge lack" as "huge block", or something like that.

    • @RodyDavis
      @RodyDavis 2 года назад

      +1000

    • @dnull
      @dnull 2 года назад +3

      well, unfortunately, views explain why there's no much tech-focused game dev vids on youtube.

  • @itskittyme
    @itskittyme 2 года назад +2087

    "i wrote this advanced physics simulator"
    "oh and then i ran into some problems with making the video"
    "thus i quickly built my own screen capturing software which works better than this giant open source program that's been around since 2012"
    okay

    • @abeecee
      @abeecee 2 года назад +448

      if this is my competition looking for swe jobs, I might as well give up now lmao

    • @deathTurgenev
      @deathTurgenev 2 года назад +262

      Then proceeds to say, sorry the code isn't optimized, I'm not an expert

    • @EmergencyTemporalShift
      @EmergencyTemporalShift 2 года назад +95

      To be fair, taking a bunch of screenshots is easier than physics

    • @HAWXLEADER
      @HAWXLEADER 2 года назад +59

      Getting a raw image sequence out of your renderer is NOT "better" than this giant open source thing.
      It just does 1 thing and does it really well.

    • @atypicalambience3487
      @atypicalambience3487 2 года назад +24

      He uses ffmpeg which does all the hard work for you. You can literally feed it image files and it will just make it into a video.

  • @AngeTheGreat
    @AngeTheGreat  2 года назад +305

    Useful or pointless video? You tell me :D Thanks for watching 💪

    • @puppergump4117
      @puppergump4117 2 года назад +33

      Very useful, I will surely use it

    • @Dicklesberg
      @Dicklesberg 2 года назад +15

      All your stuff is incredible. You’re going to have a million subs in the next 2 years if you keep it up. My advice is to not abandon your long form content in favor of shorts. Your issue earlier with the car rendering video was that you didn’t have critical mass of viewership. Now that your channel is blowing up, a long term project requiring a lot of work will likely be rewarded even more.

    • @Mocorn
      @Mocorn 2 года назад +4

      I know exactly zero about programming and still watched the whole thing. Physics are fundamentally interesting stuff :)

    • @isuckatthisgame
      @isuckatthisgame 2 года назад +1

      For me, somewhat useless now, but very prompting to revise my old, long-forgotten knowledge and to learn even more.

    • @blackkitty_42
      @blackkitty_42 2 года назад +1

      im learning modeling and simulations next semester and this pretty much hypes me up! thanks for the content man, you just got a new sub.

  • @JubaProductionsStudios
    @JubaProductionsStudios 2 года назад +731

    "OBS was making me nuts, so I made my own screen recorder" this guy is a legend haha

    • @magmacodes9143
      @magmacodes9143 2 года назад +38

      You can do too. FFMPEG has been a fairly straightforward framework for making small screen recorders for a long time now.

    • @vedantkanoujia
      @vedantkanoujia 2 года назад +4

      @@magmacodes9143 ffmpeg is most vulnerable due to multiple support of library

    • @dudearlo
      @dudearlo 2 года назад +1

      xD

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

      @@vedantkanoujia what

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

      Man's living my dream lol

  • @lukewellcash
    @lukewellcash 2 года назад +203

    Your videos should seriously get more attention then they do. Awesome work!

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +20

      Thank you! As long as there are people out there that like my stuff and find it useful, I'm good ✌

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

      @@AngeTheGreat You're truly great.

  • @thierrybeaulieu4403
    @thierrybeaulieu4403 2 года назад +47

    I've studied physics for 2 years and computer science for another 3 years. I'm already thought of doing something like that, but it's very impressive to see how well you've done it. There are so many layers of complexity to what you're showing

  • @Cathal7707
    @Cathal7707 2 года назад +54

    This is incredible. Constraint solving is stuff you do early on in an engineering degree but I never cared for it because I was always into the more computational stuff. Seeing you come at this from the computational side first has given me a whole new perspective.

  • @Alexander_Sannikov
    @Alexander_Sannikov 2 года назад +155

    A note on implementation: your RK solver is very tightly coupled with the design of the system you're integrating. Usually it's best to try to decouple the integrator from the system itself and implement it more generically. For ordinary ODE's you just need a function that calculates a vector of derivatives from a vector of coordinates, and that's all your integrator needs.
    And your physics engine can _index_ into those arrays to access coordinates of any given rigid body.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +56

      Good idea! Might refactor that part, thanks for the suggestion

    • @HilbertXVI
      @HilbertXVI 2 года назад +15

      Ordinary ordinary differential equations

    • @revealingfacts4all
      @revealingfacts4all 2 года назад +2

      He's also using public virtuals which tells me he's not very knowledgeable of c++

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +36

      @@revealingfacts4all I don't claim to know it all and I like to assume that I know nothing anyway. What do you recommend I change?

    • @Alexander_Sannikov
      @Alexander_Sannikov 2 года назад +32

      @@revealingfacts4all I am curious as well as to why you think using public virtual functions somehow reflects his lack of C++ knowledge.

  • @davidmc971
    @davidmc971 2 года назад +4

    RUclips algorithm please! Your content is an absolute gold mine of well explained experience in technical topics!

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

    Interesting to see someone reviving the (at least my) experience of writing a physics engine. It was really a brain crushing journey for me to do this in the 90' with less accuracy, much less computing power, my very immature knowledge of math, let alone internet resources on this topic. But I have strong memories indeed from my eureka moment after real-time simulating a cloth, and a few weeks later seeing the same idea rendered on a Silicon Graphics cluster on a computer fair in Brussels.

  • @Ahsan_Fazal
    @Ahsan_Fazal 2 года назад +32

    You're my new favorite RUclips content creator. WOW! This level of knowledge and expertise is something I rarely see on RUclips. KEEP UP THE GOOD WORK!!!

    • @Alphaa101
      @Alphaa101 2 года назад +2

      Where you are from?

  • @jojodi
    @jojodi 2 года назад +169

    Awesome stuff! Highly recommend you look into iterative techniques (Gauss-Seidel, or more complex Conjugate Gradient). They are probably in fact easier to implement than the Gaussian Elimination, and you can terminate iterative approaches when the error is low enough. Convergence rates are almost always related to conditioning of the system being solved, which will depend on what combination of constraints you have in your simulation. Note that isn't worse than the elimination case: poor conditioning also causes numerical instability in that algorithm as well.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +57

      Excellent suggestion, you definitely know your stuff! I actually did implement Gauss-Seidel but I didn't mention it in the video because I didn't want to confuse people haha... But you're right that iterative approaches are great. Next step will be to implement Conjugate Gradient since that'll be faster and also slightly more robust (for redundant constraints, etc.). Thanks for watching and thanks for the suggestion!

    • @GeorgeTsiros
      @GeorgeTsiros 2 года назад +7

      @@AngeTheGreat i saw no Gauss in the video, in fact, I don't think I saw any weapon of _any_ kind!

    • @GeorgeTsiros
      @GeorgeTsiros 2 года назад

      oooh. nice.

    • @chriswalsh5925
      @chriswalsh5925 2 года назад

      Hey @brandon, what do you think of LevenBerg-Marquadt (probably mis-spelled!). I have read several papers recently where they use that for solving systems (not physics) as it is supposed to be very fast and more 'optimisable', removing zeros etc. Wondering if you thought it would be good for a physics engine?

    • @GeorgeTsiros
      @GeorgeTsiros 2 года назад

      @@chriswalsh5925 there is only one way to find out... code it and test it! :> There _should_ be implementations online, already.

  • @opti12
    @opti12 2 года назад +10

    All this goes far over my head but it's so impressive to see someone make things like this and to share it online, even creating a screenrecorder in the meantime. Crazy!

  • @basile5490
    @basile5490 2 года назад +47

    Just discovered your channel, and i see a lot of advanced, neat projects that really sparks my interest. This physics engine is very cool ! Im impressed to see that you make all that in C++, it genuinely makes me want to make similar stuff on a low level. That's really inspiring (even the nerdy mathematical details ! Along with the sources in the descriptions, those are the crunchy bit for me). Keeps up the awesome work !

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +5

      Welcome to the channel! I try to work on projects that really challenge me and I'm glad that you enjoy my content. Hopefully my channel continues to help/inspire you in your software journey. Thanks for watching!

  • @DBFIU
    @DBFIU 2 года назад +8

    Keep doing good work Ange, this is what youtube was made for.

  • @mastershooter64
    @mastershooter64 2 года назад +2

    4:46 absolute madlad!! obs wasn't working properly and he just became thanos and was like "Fine, I'll do it myself" lmao

  • @TheGiantHog
    @TheGiantHog 2 года назад +1

    I can’t believe how you just glossed over some of the incredible work you did just to make this, easy sub man you’re killing it

  • @physicist1994
    @physicist1994 2 года назад +1

    One of the most underrated channels on youtube. Subscribed immediately with notifications on. Best wishes.

  • @tamp1o
    @tamp1o 2 года назад +1

    Holy hell this is one of the greatest videos I have seen, especially for your sub count. These are better than my uni degree!

  • @actuallydaneel
    @actuallydaneel 2 года назад +5

    every vid you make is just such a joy to watch, from the content to the editing it's just sublime. sincerely, good job.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад

      Thank you, that means a lot to me! Glad you enjoyed it and hopefully I'll put out videos more consistently this year :)

    • @actuallydaneel
      @actuallydaneel 2 года назад +1

      @@AngeTheGreat honestly, consistency isn't something i care about. take it at your own time and i'll enjoy whatever you put out, whenever you put it out.

  • @Alexander_Sannikov
    @Alexander_Sannikov 2 года назад +9

    Some constraints (such as rolling constraint, universal joint, etc) can be represented both as an extra body with simpler constraint attached to the bodies that you want to connect to start with, or with a more involved jacobian and no extra body. I recommend initially not wasting time implementing complex jacobians for joints that are not experiencing heavy load and implement them using just an extra body. If/when they become a problem, you can replace the extra body with a page of code for its jacobian, but they must converge to the same exact result in the limit of the extra body having zero mass.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +2

      Oh I see, might look into that. I think I might have gotten carried away with the rolling constraint, I really wanted to make it work for some reason lol

  • @grevel1376
    @grevel1376 2 года назад +3

    You got a new subscriber. I arrived to your channel by a reddit post with a link to your engine simulation video, and I guess now I'm binge watching all your videos. Amazing work man.

  • @garrettjensen4817
    @garrettjensen4817 2 года назад

    I think 1 of 3 people who got excited when he talked about the Runge Kutta ODE method. One of the best imo

  • @theastuteangler
    @theastuteangler 2 года назад +1

    probably the best video on programming I've seen

  • @krunkle5136
    @krunkle5136 2 года назад +8

    Writing your own screen capture program? Legendary stuff.

  • @NordicFrog
    @NordicFrog 2 года назад +3

    You deserve millions of views.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад

      Perhaps this will be the video that the algorithm blesses 🙏

    • @Turbonuotti
      @Turbonuotti 2 года назад

      @@AngeTheGreat the algorithm will bless your latest engine sound simulator video, it is the most impressive work i have ever seen. Great things and huge potential in your work!

  • @AlexFlorias
    @AlexFlorias 2 года назад +1

    In the best way you’re content reminds me of those calming sessions in college studying on khan academy. Some things go over my head but your approach is so cool to watch, your content is criminally slept on!’

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

    I don't understand a single shit, but this man, THIS MAN IS DESERVE MORE ATTENTION

  • @Skeffles
    @Skeffles 2 года назад +6

    These simulations look awesome! Can't wait to hear about the project you're making this for.

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +1

      Thank you! The follow-up should be out within the next few weeks :)

  • @Aethier-lostwoods
    @Aethier-lostwoods Год назад

    I'm convinced you only uploaded this as a flex. And it worked.

  • @willi00willi
    @willi00willi 2 года назад

    I just got recommended this video today, and I am blown away! Can't wait to explore more of your channel's content

  • @vintyprod
    @vintyprod 2 года назад +2

    Oh god that first animation you showed triggered my rigid body dynamics ptsd
    No but this video is actual gold. Thank you for making this. I’m so glad I found it. Also, thank you for including some of the math.

  • @JoBot__
    @JoBot__ 2 года назад +1

    This is pretty much my favorite kind of content.

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

    Really incredible that these type of information is available for free!

  • @hicham2668
    @hicham2668 2 года назад

    Working on my 3D engine in C++, this level of results was always my dream. Thank you for sharing.

  • @willianvinagre3338
    @willianvinagre3338 2 года назад +7

    That's an amazing project! I loved the video, even though I couldn't understand the mathematical stuff, it was still entertaining. Great job with your content, I think you should get more attention with how good your videos are made!

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +5

      Thank you! Don't worry about not understanding the math immediately, I didn't either. It's one of those things where I had to really sit down and study it seriously before I understood. It's also why I didn't talk about it much in the video 😂

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

    The perfect intersection of Physics, Computer Science and Math

  • @Jamie-il1qu
    @Jamie-il1qu 2 года назад +1

    Man, such a good video, I found it genuinely very exciting. For me, this is like the idealized form of Nova, thanks for making it!

  • @ir3turnz675
    @ir3turnz675 2 года назад +1

    You deserve so much more subs keep it up man

  • @rubixmc7320
    @rubixmc7320 6 месяцев назад +22

    Why is it allways just linear algebra

  • @coopercone4293
    @coopercone4293 2 года назад

    Love this video. You had a great balance between explaining the math deep enough to understand the video, but not too deep to the point where it became a math video and not a physics engine video. I also agree with others that there's a lack of high-quality and highly technical content. I will definitely be going through some of your other videos.

  • @Daekanoid
    @Daekanoid 2 года назад

    When you talked about the difficulty of differentiating the equations without making small mistakes, i got applied mechanics flashbacks. Oh god the hours I've spent trying to find the mistake only to assess that the problem was a misplaced exponent

  • @chriswalsh5925
    @chriswalsh5925 2 года назад

    excellent, I remember trying to understand that witkin paper like 20 years ago, eventually gave up and stuck with rigid body physics for the project I was on. Nice to see someone actually got it working! Great video!

  • @royhouwayek7892
    @royhouwayek7892 2 года назад

    commenting to boost engagement because wow this is awesome

  • @dragonminz602
    @dragonminz602 2 года назад +1

    Absolutly loved the video. Honestly it is great to have some technical explanation. I have been writing some simple physics engines and now i know how to expand them. Many thanks

  • @novidtoshow
    @novidtoshow 2 года назад +1

    Great work!
    Just a small nit, here...
    There are many ways to discretise the vector system:
    dx/dt = f(x,t)
    1 - LHS:
    --------------
    First, we can discretise the lefthand-side using the base definition of the derivative:
    dx/dt = (x(t+dt) - x(t) )/dt
    This one-side difference is the part they call "Euler". It's first order accurate, with errors being proportional to dt^2.
    2 - RHS:
    --------------
    Where in time you choose to evaluate the RHS is also important. The Forward-Euler method evaluates the RHS at t=t, thus:
    (x(t+dt) - x(t))/dt = f(x,t)

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

    This is bloody brilliant, mate. Awesome video. Going through your github right now. Was looking to learn how to make something as complex as a physics engine, and this came in super handy.

  • @marcus9157
    @marcus9157 2 года назад +4

    Awesome high quality video and explanation wise, I hope to see more content like this :)

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +2

      Thank you! There will definitely be more content like this in the future :)

  • @MScienceCat2851
    @MScienceCat2851 2 года назад

    As someone who is learning C++ and is bad at math, this video is really is really giving me motiivation to continue

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

    Honestly, this video is highly inspirational. Heck, I have even started studying derivatives and I hope to begin learning force constraints (like you were talking about in your video) next. thank you for being so inspiring.

  • @teachd.marshal1066
    @teachd.marshal1066 2 года назад +1

    Long time no see, i've been waiting for ur video since i discovered this channel

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +1

      Your wait is over! Thanks for watching 🙏

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

    Wow, this would make a fantastic tool to teach technical mechanics. I would have loved to have an animation showing me this when learning dynamic

  • @deotexh
    @deotexh 2 года назад +1

    Such a genius, ahhhhh, I'll probably never get there if I wanted to
    Good job for your hard work to have gotten to that point!

  • @lorincszabo7411
    @lorincszabo7411 2 года назад

    this was the most informative video on the subject i've ever seen :) triple thumbs up

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

    I'm amazed. I aspire to this level of work.

  • @thebundieaussie8629
    @thebundieaussie8629 2 года назад

    This did make me go to sleep, but it was 12:30 at night, however, I woke up and rewatched it because it was so interesting

  • @miroslavdimitrov5451
    @miroslavdimitrov5451 2 года назад +1

    Great work Ange. Keep it up, definitely a useful video!

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +1

      Thanks Miro, glad it was useful to you and thanks for watching!

  • @rafaellisboa8493
    @rafaellisboa8493 2 года назад +1

    awesome video, I LOVE the mathematical explanations, differential equations are my passion.

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

    I'm sorry but that is so dumb funny. "Well, OBS pissed me off. " C++ programmer turns it into a thread. lol I love it

  • @MrChaluliss
    @MrChaluliss 2 года назад

    Yo this is awesome. I know nothing about simulating physics, and am just now getting through the necessary maths and CS skills, so seeing it happen and actually wrapping my head around things is really amazing. Thanks for the cool video!

  • @CurtisHamilton101
    @CurtisHamilton101 2 года назад

    Really cool to see the math behind it all.

  • @jroseme
    @jroseme 2 года назад +1

    Super interesting and nice visuals to boot. It’s a relief to see an actual software application of this linear algebra stuff I’m learning.

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

    I think you may have broke my brain with this one. However. The fact you made a video encoder cause you needed one to record the video. Casual flex ;)

  • @travezripley
    @travezripley 2 года назад

    This is amazing, This video and the Engine video… Pretty much blew my mind.

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

    the most i've done is remade 3d wireframe projection, and rotation of the camera is still not working, and you can see behind you, etc..
    this is impressive and has blow my mind

  • @JimboMack
    @JimboMack 2 года назад

    Thanks a lot, found your channel today and now im in a C++ rabbit hole for the next 48 hours at least 😂 great video, with down to earth rational explanations 👌

  • @j.j.maverick9252
    @j.j.maverick9252 2 года назад +1

    very useful and really clear explanations. I think you judged the line between enough explanation vs too much maths exactly correct (for me anyhow!)

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +2

      I spent a lot of time trying to determine where to draw that line haha... I'm glad that I got it right for at least some people, thanks a lot for watching and commenting!

  • @ahmedsaadsabit1749
    @ahmedsaadsabit1749 2 года назад

    look i am a youtube viewer since 2012, and my way of selecting which channel to subscribe is really anything but lenient. But this is a rare occasion when just by watching a few seconds of the video I've hit subscribe. NICE WORK DUDE FUCKING NICE HOW DO YOU DO IT

  • @MrLP10o
    @MrLP10o 2 года назад +1

    Dude, elaborate on the math part! It is nice to see the theory I've learned in University applied to create a physics engine! A video on the math explanation would be awesome

  • @syntropy3020
    @syntropy3020 2 года назад

    This is epic. Well done. Look forward to seeing more on this.

  • @David-ng9qh
    @David-ng9qh 2 года назад +2

    "Oh yeah by the wa. On a completely unrelated sidenote, OBS sucks, so I made my own video capture software." legend

  • @henrydane6702
    @henrydane6702 2 года назад

    This was absolutely incredible -- keep it up!

  • @nds6767
    @nds6767 2 года назад

    From someone who doesn’t understand jack shit in math but loves to code. I seriously appreciate this!

  • @sripradpotukuchi9415
    @sripradpotukuchi9415 2 года назад +11

    really cool engine!
    the sims with the rolling constraint look awesome, so the tedious math was totally worth it 😅
    physics aside, i really loved the visuals. great job!

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +4

      I knew as soon as I started this project that rolling constraints were gonna be a thing, no matter how painful it was haha... Thanks for watching and glad you enjoyed it!

  • @iyousef46
    @iyousef46 2 года назад

    So I'm 16 seconds in and already impressed.

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

    You can try using a symplectic integrator such as velocity verlet to increase numerical stability so that the energy/system does not diverge over time.

  • @seesoftware
    @seesoftware 2 года назад +1

    What a madlad, obs didnt work, so he made his own version :D

  • @MrAman47
    @MrAman47 2 года назад

    Great video, hope to see more of you!

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

    This is an awesome video for introducing computational methods in dynamics ❤

  • @Tantandev
    @Tantandev 2 года назад +1

    This was super entertaining!
    really cool project

    • @AngeTheGreat
      @AngeTheGreat  2 года назад

      Thank you! I've seen some of your videos too and love your work.

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

    This guy is a good coder

  • @kloude_a4528
    @kloude_a4528 2 года назад +1

    awesome content! gets me inspire in a big way
    keep on keeping on!)

  • @resolversoftware5088
    @resolversoftware5088 2 года назад

    Man this is tremendous!! It will be great if you make some tutorial series explaining in detail how build similar engine at least on basic level! Amazing information on your channel!

  • @thatgaming1940
    @thatgaming1940 2 года назад +1

    It's almost midnight I'm tired and I'm watching someone build a Physics Engine but then he drops the word "Jacobian" and my mind shoots awake for a few minutes.

  • @eustoliafukuyo6481
    @eustoliafukuyo6481 2 года назад +1

    I started to learn Vim at one work experience (who used also Linux like I did privately) and managed to finally code only with Vim. Then I got mocked on my second work experience where they hate everything except the only one thing they use (Windows and just shortcuts in IDEs) and said that I know nothing and Linux is not for Professionals (It's the first time I saw such a dirty code in a company).
    It felt great to watch this video and seeing that Vim is used.

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

    And this is why you need to learn code kids....this is wizard level

  • @bigthought6351
    @bigthought6351 2 года назад +1

    I don't understand why my English is week but you are explained is amazing 😃😃😃

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

    great video, i was looking into setting up a simulated double pendulum as a learning exercise, but after thinking it through for a bit i realized i would need to know more math.

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

    4:48 so i “just” made my own version, this guy is a god

  • @clonkex
    @clonkex 2 года назад

    2:02 In my experience the timestep for physics engines is _very rarely_ just the length of each video frame in games. A fixed timestep is standard practice because it's so much more consistent and reliable.

    • @josephmellor7641
      @josephmellor7641 2 года назад

      Fixed timesteps are also necessary for symplectic integrators (e.g. semi-implicit Euler and Verlet Methods) to work properly.

  • @deathTurgenev
    @deathTurgenev 2 года назад

    Great video, please do more content like this, it's entertaining and inspirational

  • @saritasahu6293
    @saritasahu6293 2 года назад

    C++ Developer are so cool.
    I don't think any Physics teacher of my shool could ever imagine, something like this can be done with, what they teach at school.

  • @LovelyBozo
    @LovelyBozo Месяц назад

    I love when I randomly stumble upon another software dev content creator that uses vim

  • @ezzzzie
    @ezzzzie 2 года назад +1

    floored at the casual mention of a c++ mp4 capture software being created because obs was dropping frames

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +1

      It's actually not that hard, I just used the same encoder used in OBS and did some basic thread synchronization to get it to work in real-time. Thanks for watching!

    • @ezzzzie
      @ezzzzie 2 года назад

      @@AngeTheGreat just the fact that you've given yourself all the prerequisite knowledge necessary to to look at up, and understand exactly how to implement it in your own project is still flooring me. you've like minmaxed for useful coding skills and creative problem solving.
      incredible stuff, great job, looking forward to your next upload!

  • @gavinscience4146
    @gavinscience4146 2 года назад +1

    “OBS was really annoying me, so I just *made my own*”
    “What?”
    “You heard me”

  • @h-a-y-k4149
    @h-a-y-k4149 2 года назад

    This is actually a great tool for schools.

  • @kdashi5747
    @kdashi5747 2 года назад +1

    I'd love to see a video about your Vim setup!

  • @lylesloth1275
    @lylesloth1275 2 года назад +1

    subscribed, epic guy, likes learning things, good at sharing things, good at explaining, epic, video liked.

  • @xsense2012
    @xsense2012 2 года назад +1

    If someone clicks on a video with this title and is bored with technical details, its their problem, 100%.

  • @sanderbos4243
    @sanderbos4243 2 года назад +2

    This is epic, and the video encoder program you wrote on the side is also very useful! I am sure you know about the Phun/Algoodoo physics simulation program, man I spent so many hours in there. If you make a game that uses physics I'd love to see the same kind of features in there, like different shapes, gears & water!

    • @AngeTheGreat
      @AngeTheGreat  2 года назад +1

      Thank you! Not gonna lie, my encoder library is probably the only project I've made that could actually be useful to people lol... I can think of a lot of uses for it, especially for content creators. Regarding the use of this physics engine for a game, that may or may not already be happening... There will be a few follow-ups to this video which I'm pretty excited about. Thanks for watching!

    • @sanderbos4243
      @sanderbos4243 2 года назад

      @@AngeTheGreat Your encoder library reminded me of .kkapture, you should look it up! It was written by the people behind the famous .kkrieger game demo. Look up "kkrieger: Making an Impossible FPS | Nostalgia Nerd" if you haven't seen that yet!