Teaching myself C so I can build a particle simulation
Vložit
- čas přidán 26. 06. 2024
- Pezzza's video: • Writing a Physics Engi...
Verlet Algorithm: www.algorithm-archive.org/con...
Verlet Integration: physics.drexel.edu/~valliere/P...
Icospheres: en.wikipedia.org/wiki/Geodesi...
This codebase is a mess but if you're curious about the implementation or what libraries I used:
C Version :: github.com/marichardson137/Ve...
Python Version :: github.com/marichardson137/Py...
Thanks for watching!
Timestamps
0:00 Introduction
0:25 Python Version
1:17 Verlet Integration
2:37 Implementation
3:29 Collisions
4:17 Issues
4:55 Optimization 1
5:43 Optimization 2
6:45 Optimization 3
7:45 Coloring Particles
8:52 Linking Particles
11:24 Outro
Music sourced from Epidemic Sound
Sonar - David Celeste
Radiance - Amber Glow
Watercolor Motion II - Trevor Kowalski
A Gentle Pulse - Imprismed
Hi everyone! Glad to hear you're enjoying the video, it means a lot. I added the source code in the description for those who asked (it's kind of a mess). My semester just ended so I should have some time to work on another graphics project. Let me know what you guys wanna see below! - Cheers
heyy, i really enjoyed your video about computer graphics. Im currently researching sources for my Bachelor Thesis from computer graphics and i would like to ask you, if you could share some insights on how you research topics. It would be really helpful, couse i have no idea where to find sources and mainly what to search for.
@@simonzanta1403 Public code repositories were certainly my best friend during this project! If I ever needed inspiration for some feature or felt myself getting stuck, I would do a quick search on CZcams or Google for something similar and that was usually enough to get me through. Another tip is to try breaking down your research into smaller pieces that will be easier to source (ie. "OpenGL instance rendering" as opposed to "OpenGL particles"). Hope that helps!
third
hello there, really liked your video! I'm a first year computer science student, I would like to know more about what you do and how you got here, I'd love if you'd upload a video talking about yourself, your work and your journey, it would really help and inspire me! Thank you for this great video!
i love the work, why dont u make gravity simulation using nueton's thurd law of motion, i tryied to do it in unity, it kinda works but somehow the particles after attracting to each other and colliding they start to repeal each other (using barn's hut algorithm , no error in my code) , maybe u can do a simulation and explain the optimization method u choose.
Super cool video! Always funny to see we all encounter the same bugs along the way :D
first
yeah!
The editing in this video is incredible
You can achieve the same using an open source python library called manim
I know what I'm doing in summer now. Thanks for the inspiration!
me too gonna start college in august so im gonna learn C and make this happen good luck to you too
@@_Rie_Good luck! C is a tough language in the beginning, but it's so satisfying to use once you've conquered the main pitfalls.
this was an awesome video! C is my favorite programming language and I love seeing graphics programming projects like these :)
This is pure art. Amazing work bro.
This is a great video, and it is surprisingly well edited! I am not interested at all in physics simulation but the way you explained it really made me start paying attention and it was interesting how you used each optimisation technique to achieve even better results!
This is super impressive! Casually glossing over the fact that you taught yourself *not just C* but also how to render things with openGL is no small feat. Your in-depth knowledge of particle simulation is also pretty impressive, requiring at the very least knowledge of relatively advanced calculus and physics. And, on top of all of that, this video was very well written and edited. Overall great job, keep it up!
Good luck for your success on yt. We need more content like this.
Yay another channel with my favourite type of content
Engineers make a small number of good CZcams videos then dip back into the void to do their job. This is the good shit.
dude, you're so incredible. I'd like to see more videos. keep doing them :3
Amazing, can’t wait to see more videos!
Awesome! Thanks for sharing your journey.
Very nicely done! I like that you said what you did and kept it rather high level for the video. Whereas, if needed, and if you haven't already, then you can make a more detailed video for the code and maths. Great paste and keep at it!!
Mesmerizing! You did a fantasic job with this program and video, keep it up :)
Instantly subscribed! My god this is good.
Another awesome programmer I have to subscribe xD
Great work
Absolutely stunning, more videos using C please😮
Yoooooo amazing video!! I learned so much from it
Awesome video, Man I could watch this stuff all day 😅
hello. i am a beginner in all those things and have just found this channel....can't say how grateful I am to you. You, my friend, are an inspiration. You are Knowledge. You are Greatness. You hold the Power.
Thank you so much. Thanks. Would like to see more of these simluations, math-physics-chemistry-related programs and such.
Thank you.
I am here with you also a noob
Gradience, this video is absolutely astonishing. Putting aside the great editing and video structure, the flow of your story and the way you tell it is both fascinating, and so intriguing. I adore computer science as a whole, and this is possibly one of my all time favorite videos now. What a masterpiece you've made. Subscribed, and hope to see more of what you do! :)
Man it's a fantastic video, it's just great, love this
Now i have another reason to keep studying. You're an inspiration for me :D.
I clicked because of C!
this video is amazing
it feels like it's been made by a channel with at least a few hundred thousand subs
keep it up !!
Very cool and informative video. Thanks for the effort.
Amazing Video! Definitley learned something new :)
that's great c code if you've really just learned it! good job
Fantastic work!
Great video and very interesting project, will try to do it on my own. Also, I’m impressed for the quality of the video!
This channel is going to be massive
Very cool video, top notch editing
Love this!
This is such an awesome project! Glad to see a fellow NC State student doing cool things!
Great video, thank you for sharing.
I took a graduate level numerical methods course (my prof contributed to some popular CFD software) and it was very cool to see the different algorithms used. Great job !
this is a great video mate. this video remainds me of sabastian lague's videos. when ever i have thoughts about why i chose programming as a career i think of these kind of videos which boost my happiness and i say to myself that this is why i chose programming as a career to build cool stuffs.
thanks mate. Great job !!
Awsome work!
This is the best video I've seen all year
Great video!
love the video! good stuff
That's simply amazing
The new Sebastian Lague!
Excellent video!
subbed and notified so I can view more of your awesome project.
Cool Bro!
Nice Video Dude !
That was awesome! My favorite part was when you found the linear algebra text and got your change of basis on.
Good job, man!
Great video! Keep it up!
I literally just stumbled on this video, amazing and very fun to watch. Made want to actually learn C and take a break from JS for while lol
Very interesting, thank you!
Very good video !
really beautiful video . i can now see the importance o mathemetics in programming
Cant wait for more videos😊
great work
Excellent video
I have had this as a future project in my mind for years. I never went to third dimension due to the fear of linear algebra. This is really impressive and inspirational. Thanks for sharing.
this was amazing :)
You got my sub sir!
Good work man!!
Awesome bro 🫡
good job b!
Mesmerising
very enjoyable video
Amazing 😍
super cool job. Very inspiring i wish i could do something like this
This is soo cool
amazing video
Amazing 😮
Very nice video ! You might want to also look at fluid simulation using particle called Smoothed Particle Hydrodynamics. Basically you replace the collision algorithm with a constraint on the density modulated by a kernel. It sound bad like this but you already did 90% of the work there. Keep up the good work ! See you next video.
Amazing Work ! Post more content.❤
Great channel potential, subbed
this video deserves much more than 2.7 k views
Just what I was looking for
so that face pull in Mario 64 is a masterpiece of my childhood.
Great video
thats so cool bro
love it!
awesome possum my guy
A new Sebastian Lague!
Keep going!
its amazing
Really Enjoyed the video
Very cool!
I had the same vibe from you as 3Blue1Brown.
Sick good work man. Makes me remember why I chose computer science
And here I am, struggling with a simple pyramid c code
Feel you
me fr fr
Its okay, I'll get harder in arrays, and pointers 💀💀
انا
@@wardingward4884 linked lists is where I gave up willingly
When you realise that math class was not just a class
Fantastic good job
Great video, graphics engine, and physics engine :)
This is going to be a fantastic springboard for my own physics sim ideas! Starred, will fork when this makes it to the top of my project queue (it's about number 3 I'd say, but full disclosure, it might also never happen 😛)
Now I want to do this by myself.
I hope this isn't going to be one of those channels that uploads 3 fire videos and then disappears for years
Keep going bro 💯
great content keep going
we need the long version of this please
Very good
Nice!
Inspiring, makes me want to drop all my JS projects and return to low level.
I have studied physics in 1991-1995, and I had a semester on Fortran in the university. Then at 2004 I learned a little C, and the following years I was slowly reading a few books on C and C++ (mainly I was reading stuff about networks and linux for my jobs) . Since late 2023 I became a junior C++ developer. A few weeks I started learning OpenGL (I can give suggestions to who ever is interested). But I know that I am nowhere near the level to make such simulations! I am so impressed that you are still a university student and can produce those videos!
sugestions please
Can you pls open-source this
In the description now
Gotta pay for all the spilled sweat
dang you're a legend if you used a physical Linear Algebra textbook to solve your problems. Subbed!
Halfway through this video i feel kms cuz I don’t see myself getting this good anytime soon. Man you’re awesome.
naw bruh you can get this good - its possible for any of us. if u wanna build something like this just fuckin believe in urself dawg u can do it. do that, and videos like this produce nothing but inspiration and excitement for your future work :)
@@kylerchen2385 its not possible for everyone, but we cant know without trying