Building a Particle Simulation Physics Engine in C++ from Scratch

แชร์
ฝัง
  • เผยแพร่เมื่อ 21 ม.ค. 2025

ความคิดเห็น • 92

  • @akdk-productions
    @akdk-productions 2 หลายเดือนก่อน +218

    I'm 110% sure m not understanding a single thing in this video but m still going to watch it

    • @Jack-so1hz
      @Jack-so1hz 2 หลายเดือนก่อน +2

      Same😂😂

    • @Rohit-cj6eb
      @Rohit-cj6eb 2 หลายเดือนก่อน +2

      Why not you understanding it?

    • @Brekstahkid
      @Brekstahkid หลายเดือนก่อน +3

      It's like taking your vitamins. Its good for you.

    • @miftakhulhuda7743
      @miftakhulhuda7743 หลายเดือนก่อน +1

      I stay here watching till the end due to the relaxing music

    • @AlexeyNapechkin
      @AlexeyNapechkin หลายเดือนก่อน

      @@Rohit-cj6eb ну типо, код перепечатать ещё можно, видимо в визуал студио, а где отображать напечатанное, а ну в ней наверное, раз визуал
      Формула ещё в начале надо по словам переводить,что он там описал

  • @goncalomarques7022
    @goncalomarques7022 3 หลายเดือนก่อน +49

    man that's impressive the math and coding skills

  • @lorenzocanepa9274
    @lorenzocanepa9274 หลายเดือนก่อน +8

    Congrats !! An intuitive and very good spot of light when talking of physics and c/c++
    Thanks for sharing !
    Lorenzo

  • @gulyasgyorgy
    @gulyasgyorgy 5 หลายเดือนก่อน +38

    This video, and the whole channel is hidden gem. Absolutely amazing. And I'm proud to be one of 29 people who subscribe to this channel and understand this video and even enjoy it.
    Thank you very much!!

    • @FelipesCoding
      @FelipesCoding  5 หลายเดือนก่อน +1

      Thanks for watching, really appreciate it!

    • @Malunus_coin
      @Malunus_coin 2 หลายเดือนก่อน

      So true,

  • @SacherPunch
    @SacherPunch 2 หลายเดือนก่อน +9

    Please please please keep making videos like this, it's invaluable being able to see the whole process of making a program and the reasoning behind the choices made

  • @Andreas.r2
    @Andreas.r2 27 วันที่ผ่านมา +1

    I'm jealous, as I'm not even started learning but find your skills are needed in unreal engine simulation. ❤

  • @felomleron.ml101
    @felomleron.ml101 หลายเดือนก่อน +3

    In the middle of the video, I got distracted by another tab on the browser and forgot about this video at all, thinking that it's just another calm background sound I used to play meanwhile I work. I don't even know C++ or game/graphics development but still watched again till the end. Thanks anyways.

  • @vedantsingh1801
    @vedantsingh1801 หลายเดือนก่อน +1

    I use to do leetcode with the c++ , after seeing this video i am encouraged to do high level object oriented programming with c++ while writing own header file and input stream handling .
    Hats off to this dude great work , very inspiring .
    ⚡⚡⚡⚡⚡⚡⚡⚡

  • @ultsen96
    @ultsen96 3 หลายเดือนก่อน +57

    Man im jelous of your coding skills and understanding and amazed at the same time

    • @sparrow243
      @sparrow243 2 หลายเดือนก่อน +1

      Try hard :)

    • @Dungeon_Synth_Enjoyer
      @Dungeon_Synth_Enjoyer หลายเดือนก่อน +5

      This person did NOT code that at the top of their head. It’s not how it works. He got all the code on second monitor and just typing it back on his main monitor for the video. Cool video though, but don’t be naive.

  • @hodayfa000h
    @hodayfa000h 2 หลายเดือนก่อน +9

    That is cool!
    Edit: i actually just learnt how to solve a coding problem i had just from this!

    • @FelipesCoding
      @FelipesCoding  2 หลายเดือนก่อน +2

      Thanks, amazing to hear this..

  • @preguica_net
    @preguica_net 3 หลายเดือนก่อน +8

    I've already had problems with the 4th order Rugge Kutta, and to this day I haven't found out why. It lowered the temperature of my Lennard-Jones gas. I didn't have this problem with the Verlet. Very nice video!

  • @astokum7
    @astokum7 หลายเดือนก่อน +1

    Really awesome!
    I understood form this video...
    that each of point (vertex) of cloth simulation respond to gravity individually. Constraints among points makes it attachable to each other.

  • @sama32lambda
    @sama32lambda 5 หลายเดือนก่อน +8

    Love the chill music

  • @alizohaibibn
    @alizohaibibn หลายเดือนก่อน +1

    This is impressive bro. Amazing channel.

  • @BlyatifulButter
    @BlyatifulButter 2 หลายเดือนก่อน +2

    I'm trying to make a simulation engine in C++ as well, but from OpenGL. Thank you for these insights!

  • @angquocvuong8534
    @angquocvuong8534 หลายเดือนก่อน +1

    This project impressed me, thank you for sharing

  • @tosmanhype9419
    @tosmanhype9419 หลายเดือนก่อน +1

    beautiful and soothing

  • @scubather
    @scubather 3 หลายเดือนก่อน +19

    I admire ppl who stick to c++ and a specially physics simulation
    every time I've tried to take a look to any c++ project I've faced enormous amount of compiling problem and environment issues with libraries and headers (skill issue)
    and I go back to my web dev routine :)
    thanks for sharing your great experience

    • @okie9025
      @okie9025 3 หลายเดือนก่อน +1

      you know c++ has a bad module system when even web developers say it's bad lol
      deno masterrace

    • @BruceMaximusLee
      @BruceMaximusLee 2 หลายเดือนก่อน +1

      take ur time and watch a cmake tutorial without skipping and figure out how to link libraries dynamically and statically and so on then everything will make sense hopefully

  • @席郭亮
    @席郭亮 2 หลายเดือนก่อน +2

    Thanks for sharing, your video really helped me

  • @abnereliberganzahernandez6337
    @abnereliberganzahernandez6337 2 หลายเดือนก่อน +1

    I did a view on opengl but this simulation is great, gravity and interaction is very real feels so intuitive

  • @MathPhysRadi
    @MathPhysRadi 5 หลายเดือนก่อน +3

    Great video , I hope you will post more

  • @theangriestcrusader
    @theangriestcrusader 28 วันที่ผ่านมา

    any particular reason why the particles were able to bounce slightly along the X axis at 03:49? If GRAVITY is just a force of 10 on the Y axis, then how is there a bounce? also, at what point did the particles become bouncy?!?! I must've missed a few things!

  • @kalukhan4676
    @kalukhan4676 หลายเดือนก่อน

    So amazed yrrr lots of love hats offf

  • @SpinyDisk
    @SpinyDisk 19 วันที่ผ่านมา

    1:19 the vertex knows where it is because it knows where it isn’t

  • @yumingliu7403
    @yumingliu7403 2 หลายเดือนก่อน +1

    Amazing, learning differential equation by coding this

  • @mehdinh4986
    @mehdinh4986 3 หลายเดือนก่อน +2

    Great video

  • @HussainAli-zk6nk
    @HussainAli-zk6nk 2 หลายเดือนก่อน +1

    Very beautiful code!!!!

  • @AlexZyablov
    @AlexZyablov หลายเดือนก่อน +1

    Inspiring.

  • @andremyszko
    @andremyszko หลายเดือนก่อน +1

    amazing

  • @eternalnerd_
    @eternalnerd_ 2 หลายเดือนก่อน +1

    Awesome vid

  • @robertmoore119
    @robertmoore119 22 วันที่ผ่านมา +1

    I am one of the viewers that really has minimal idea what is going on at all. However, though the program did work just fine. Which was really cool to watch being created, there were spelling errors. I thought to myself, how did it function properly with spelling errors. But its your program, so a name is a name I suppose.

    • @MathnLogic22
      @MathnLogic22 วันที่ผ่านมา

      as long as the logic works, my python students' apps work too

    • @robertmoore119
      @robertmoore119 22 ชั่วโมงที่ผ่านมา

      @@MathnLogic22 Oh

  • @christiangualteros36
    @christiangualteros36 2 หลายเดือนก่อน +1

    Great video buddy might you please used formulas that describe the movement of a object?

  • @Narblo
    @Narblo 3 หลายเดือนก่อน

    5:03 how did you implement springs if the constraint code, apparently, didnt change?

  • @godlyradmehr2004
    @godlyradmehr2004 2 หลายเดือนก่อน +1

    Very interesting ❤❤❤

  • @DiegoHinrichs
    @DiegoHinrichs 5 หลายเดือนก่อน +6

    Nice video, im working on a nbody simulation using the Barnes Hut algo.
    I suggest you explore that field, its very interesting :)

    • @FelipesCoding
      @FelipesCoding  5 หลายเดือนก่อน +4

      Yes, it's really nice. I'm looking forward to reading more about it and maybe implementing some cool stuff. Thanks for watching and your suggestion

  • @juanhurtado35
    @juanhurtado35 5 หลายเดือนก่อน +2

    Great!

  • @RealSiViX
    @RealSiViX 5 หลายเดือนก่อน +1

    How does the simulation still work when you misspelled distance on line 29 at 7:32?

    • @jkf16m96
      @jkf16m96 5 หลายเดือนก่อน +3

      because he kept misspelling it.
      as you can see, he doesn't use an already defined variable.
      He does define a new variable named "distatnce"
      and each time he used that variable, he kept using that name, never correcting it, but despite that, the variable is correct, because it exists.

    • @RealSiViX
      @RealSiViX 5 หลายเดือนก่อน +1

      @@jkf16m96 - I see my mi8stake now, I didn't realize he was calling a variable until I went back and looked at it again, I thought he was calling a function, sorry for the confusion...

  • @sem_the_man
    @sem_the_man 2 หลายเดือนก่อน +1

    thats sick, makes me wanna make it myself as well but ill probably fail

    • @FelipesCoding
      @FelipesCoding  2 หลายเดือนก่อน

      Thanks, it's not that hard ;)

  • @VulgoGS
    @VulgoGS 20 วันที่ผ่านมา

    I am a beginner at C++ (my first programming language), I don't get it, how a language that only compares something, verifies something, and loops something could do almost everything ? Even when I see the code I don't understand it clearly.

  • @DHARMA252
    @DHARMA252 2 หลายเดือนก่อน +1

    Nice very nice.

  • @TheDariosouza
    @TheDariosouza หลายเดือนก่อน +1

    incrível

  • @weezyentertainment3319
    @weezyentertainment3319 2 หลายเดือนก่อน

    How do you get the star extension to appear while ur coding?

  • @ArIyan_yt
    @ArIyan_yt 21 วันที่ผ่านมา

    Is it usable with game engines, such as Unity or Unreal?

  • @hbb21st
    @hbb21st หลายเดือนก่อน

    49 Star 8 folk, good

  • @SatvikkGuptaa
    @SatvikkGuptaa 3 หลายเดือนก่อน +2

    DAMNNN cool

  • @InfurnoHDRotmg
    @InfurnoHDRotmg 2 หลายเดือนก่อน

    Writing the implementations in a header file?

  • @geopolitik-dunia
    @geopolitik-dunia หลายเดือนก่อน

    7:33 float distatnce

  • @parisrealife
    @parisrealife หลายเดือนก่อน +1

    wow

  • @xoxogamewolf7585
    @xoxogamewolf7585 3 หลายเดือนก่อน +3

    makes me think of Pezza

    • @PezzzasWork
      @PezzzasWork 9 วันที่ผ่านมา

      Yes me too

  • @rfyorfyo5022
    @rfyorfyo5022 หลายเดือนก่อน +1

    extreme iq required for this task

  • @unknownpng650
    @unknownpng650 หลายเดือนก่อน

    please serious question , did the ai help you in the different problems you faced or you build this from scratch

  • @bridiro
    @bridiro 4 วันที่ผ่านมา

    well, I have to say that seeing implemented methods in the header file is really painful, you should have a dedicated cpp file.

  • @morgziliuz1972
    @morgziliuz1972 2 หลายเดือนก่อน +1

    Background music made me fell asleep mid video

  • @netfri25
    @netfri25 2 หลายเดือนก่อน +1

    6:27 you should have used == instead of = in the condition

  • @endergame8267
    @endergame8267 3 หลายเดือนก่อน +3

    bro why do i understand code better than math them selves

  • @allansmart5358
    @allansmart5358 5 หลายเดือนก่อน +2

    Honest question, is C++ better for coding this than python and why?

    • @FelipesCoding
      @FelipesCoding  5 หลายเดือนก่อน +12

      The reason behind it is that I like writing code in c++, but to be honest:
      C++ generally offers better performance than Python because it's a compiled language. In physics simulations (like Verlet integration), which involve a lot of mathematical calculations, performance is crucial. C++ gives you control over memory management, which can lead to optimized, faster code.

    • @allansmart5358
      @allansmart5358 5 หลายเดือนก่อน

      @@FelipesCoding thank you for your answer. I appreciate it. I tried learning c++. Do you have any tips or courses I could try to master the basics?

    • @FelipesCoding
      @FelipesCoding  5 หลายเดือนก่อน +4

      What always worked for me was finding a project that interests you (one that's not too easy compared to your programming level but also not too hard) and learning programming (c++) while working on it.

    • @allansmart5358
      @allansmart5358 5 หลายเดือนก่อน +3

      @@FelipesCoding thank you for your recommendation. I will give it a go. I will think I will start with just a random number calculator project and then go from there. I mainly use Python for statistical analysis, but I am interested in getting more into programming and creating interesting things like you created.

    • @KillKRT
      @KillKRT 3 หลายเดือนก่อน +1

      You can also try Rust, is a little faster than C++ and in my opinion is more enjoyable than C++

  • @calm694
    @calm694 2 หลายเดือนก่อน

    idk if you enjoy it, you enjoy doing this ?

  • @zanagi
    @zanagi หลายเดือนก่อน

    damn i cant even make a simple 3d physics work

  • @varshneydevansh
    @varshneydevansh หลายเดือนก่อน +1

    sbbed

  • @ВладиславГришин-ш7ш
    @ВладиславГришин-ш7ш 2 หลายเดือนก่อน

    это невероятно сложно

  • @engineer0111
    @engineer0111 2 หลายเดือนก่อน

    I don't agree 😃

  • @gustavojoaquin_arch
    @gustavojoaquin_arch 2 หลายเดือนก่อน +2

    I use Rust btw

  • @DaBeanBro
    @DaBeanBro 2 หลายเดือนก่อน

    I don't think SFML counts as "from scratch"... but great video!

    • @eternalnerd_
      @eternalnerd_ 2 หลายเดือนก่อน

      SFML is purely to draw the graphics primitives to the screen and handle input. The particle simulation physics engine code, the focus of the video, does not rely on this library. If you wanted him to use no graphics library, he would be using os-specific API to create the window, draw graphics, handle input, etc. I think that would have been silly and a waste of time since then only users on the OS he developed on would be able to run his code. But nice comment man.

    • @DaBeanBro
      @DaBeanBro 2 หลายเดือนก่อน

      @@eternalnerd_
      that is one of the most Redditor replies I've ever seen... nice comment man

    • @eternalnerd_
      @eternalnerd_ 2 หลายเดือนก่อน

      ​@@DaBeanBro lol