Visualizing Collision Detection -- Separating Axis Theorem Explained with a Minecraft Datapack

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

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

  • @sonofmeh3182
    @sonofmeh3182 10 หลายเดือนก่อน +525

    What's crazy is that I started watching Sethbling when I was very young. Now I'm an engineering student and I can actually understand the math he's talking about now! How time flies.

    • @meowjustme6865
      @meowjustme6865 10 หลายเดือนก่อน +9

      How do you feel now that you understand the math?

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

      Same 😂❤

  • @Coael
    @Coael 10 หลายเดือนก่อน +1071

    bro sethblings return has fed my need for these videos

    • @Cuestrupaster
      @Cuestrupaster 10 หลายเดือนก่อน +12

      If you want more videos that are kinda like this I recommend WhiteStoneJazz specially his video about why mobs tend to go up and the pattern series.

  • @triq0
    @triq0 10 หลายเดือนก่อน +408

    i have never encountered this subject in my life but now i feel like i understand it completely, this was very well explained

    • @codinghuman9954
      @codinghuman9954 10 หลายเดือนก่อน +27

      I have and this is the best explanation ive seen

  • @DonnaPinciot
    @DonnaPinciot 10 หลายเดือนก่อน +373

    Huh, rotated cuboid collision detection is exactly the sort of thing I've been trying to learn recently.
    Maybe this will help!

  • @Nsta1
    @Nsta1 10 หลายเดือนก่อน +232

    Very nice visualization of projections and the Separating Axis Theorem. Well done!

  • @NeunEinser
    @NeunEinser 10 หลายเดือนก่อน +18

    "Hope you learned something new".
    In fact, there was nothing in this video that I already knew, everything was new to me. And it was very nicely explained to, so while I definitely understand the basics of what was said.
    Nice video 😊

  • @josephgoldsborough9138
    @josephgoldsborough9138 10 หลายเดือนก่อน +26

    I miss watching sethbling videos i barely comprehend, feels like old times

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

      Ikr. Man this guy is singlehandedly responsible for me getting into IT

  • @cubeoi
    @cubeoi 10 หลายเดือนก่อน +58

    interesting, there's barely any videos on youtube covering collision detection with this so thank you for making this

  • @Poly_0000
    @Poly_0000 10 หลายเดือนก่อน +188

    How cool that the math just works out like that

    • @zackbuildit88
      @zackbuildit88 10 หลายเดือนก่อน +21

      That's what makes it math :]

    • @boltstrikes429
      @boltstrikes429 10 หลายเดือนก่อน +11

      You're encouraged to dig into it and find out *why* it works out like that :D

  • @kaihang4685
    @kaihang4685 10 หลายเดือนก่อน +22

    For those of us who began our engineering journey with Redstone, I acknowledge Sethbling as my first professor and Etho as my second.

  • @dylaann
    @dylaann 10 หลายเดือนก่อน +104

    This 5 minute video just taught me more about 3d physics and collision detection than any of my college game dev courses so far lmfao
    SethBling can't be stopped

  • @DiggoryJiggory
    @DiggoryJiggory 10 หลายเดือนก่อน +24

    Insane how you explained this in an actually understandable manner

  • @Seedx
    @Seedx 10 หลายเดือนก่อน +29

    Minecraft + physics + math + programming. Love it

  • @henryfleischer404
    @henryfleischer404 10 หลายเดือนก่อน +24

    Nice. I've been getting into game development in the Godot engine, and this has helped me understand why concave collisions don't work as well as convex ones.

  • @haydoge
    @haydoge 10 หลายเดือนก่อน +98

    The return of the return of the king

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

    thank you for incidentally giving me the clearest, most concise definition of cross product i've ever heard

  • @OliBomby
    @OliBomby 10 หลายเดือนก่อน +6

    This is the first time I understand the separating axis theorem. That's so useful!

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

    Sethbling using advanced calculus and differential equations in redstone. This man has ascended to new levels. From making computers in mc to full physics engines. If mumbo is redstone jesus, sethbling is the redstone god.

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

      I knew that datapacks would make him too powerful

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

    Wow this was surprisingly easy to understand and really clear.
    Well done!! Physics engines are incredibly fascinating.

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

    These have been banger videos breaking down parts of the engine. Super cool.

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

    I had no idea how much I needed Sethbling to come back until now

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

    I love how much you are enjoying making these

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

    HE'S REALLY BACK
    THIS IS THE BEST THING TO EVER HAPPEN TO TH-cam

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

    Nice video, good explanation! My master thesis dealt with this problem but for general concave shapes, which makes everything way harder.

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

    HOLY SHIT! quick and simple explanation of collision detection between blocks for easy implementation
    And you prefectly demonstrated how well you know this subject!

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

    Excellent explanation and visualization!
    PS. The outro was so comforting, probably thanks to the added nostalgia.

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

    This is amazing
    I never thought i would see something this complicated in minecraft before today but here we are

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

    I'm so glad I took linear algebra, this video makes so much sense now.
    Great video as always!

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

    First sethbling video ive watched in literal years and i immediately learn something new. You never changed, brother. ❤

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

    is this the sethbling renaissance???? im HERE for it!!

  • @baconator8804
    @baconator8804 10 หลายเดือนก่อน +12

    Do I understand any of these videos that he has recently posted? No. Do I care? No. I'm interested and happy that this guy has come back to youtube.

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

    Never thought I’d see the day. My childhood returns. Keep up the work Seth!!!

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

    The visuals are just the best I have ever seen to explain collision axes

  • @300PIVOTMASTER
    @300PIVOTMASTER 10 หลายเดือนก่อน +1

    one of the best explanations of SAT i’ve seen

  • @JohnKerrashVirgo
    @JohnKerrashVirgo 10 หลายเดือนก่อน +14

    Thanks Seth. I have only ever used AABB before, this was new to me.

  • @jakeboiyes
    @jakeboiyes 10 หลายเดือนก่อน +31

    SETHBLING KEEP UPLOADING!!!!

  • @JohnSmith-oc6mr
    @JohnSmith-oc6mr 10 หลายเดือนก่อน +2

    I forgot this guy existed! Welcome back.

  • @coltynstone-lamontagne
    @coltynstone-lamontagne 10 หลายเดือนก่อน

    That's a super cool trick! They must've been very pleased with themselves when they created it!

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

    I'm glad you're back

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

    Thanks for the awesome visuals!
    Made it so much easier to grasp the concept.

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

    watching this comeback is so much fun!!

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

    I love this kind of physics solutions, thank you for the showcase!

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

    Really well explained. I was surprised that the 15 axes can also give the smallest possible movement to separate the cubes.

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

    yessss, there isn't much stuff about physics in TH-cam than there should be ❤

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

    Congrats on 2m subs!!

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

    Finally another educational video from the goat himself!! , thank you so much for these types of content!!

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

    you make me cry tears of nostalgia

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

    This comment section fills me with so much love and joy! So many peers having the same nostalgic experiences

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

    Thx for the video, it was very interesting !
    Eager to see the next ones !

  • @Peter-tq1hr
    @Peter-tq1hr 10 หลายเดือนก่อน +3

    Keep it up Seth, love it

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

    im so happy youre back

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

    I am learning. Thanks mr. bling.

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

    Congratulations on 2m subs 🎉

  • @Lexi_Sharp
    @Lexi_Sharp 10 หลายเดือนก่อน +9

    I don't have notifs for you, how the hell did I know you posted.

  • @arandominternetuser5614
    @arandominternetuser5614 10 หลายเดือนก่อน +7

    woo more sethbling

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

    "welcome back, sethbling here" BOY DOES THAT FEEL GOOD

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

    So cool to see the math underlying game development!

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

    ooh! i was wondering about the separating axis theorem, honestly thank you!

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

    Congrats on 2m btw 🎉

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

    Sethbling living 25 updates ahead as usual

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

      Glad to know that this never changed

  • @Hero.S
    @Hero.S 10 หลายเดือนก่อน +3

    I love vectors, they are just so cool

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

    Neat! I've only ever learned about aligned axis cuboids, general squares, and fully general 3D (convex but you can stitch multiple together for concave) shapes (via GJK - Gilbert-Johnson-Keerthi algorithm)

  • @e2cc2
    @e2cc2 27 วันที่ผ่านมา

    Hi, physics engine dev here: GJK, especially with the augmentations done to it in 2017, tends to converge faster than SAT for larger polyhedra and can be more numerically stable. Would love to see you look into it and hear your take on it.

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

    i love vectors, geometric algebra, and physics engine stuff: this is so cool! thanks for explanation!

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

    2024 and SethBling is still breaking the laws of Minecraft.

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

    Sethbling, Man, myth, Legend, Minecraft god.

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

    This is achely really helpful have trying to figur out how to do this and this video helps

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

    We are witnessing an era of Thomas Edison, Nikola Tesla, Benjamin Franklin of Minecraft.

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

    Math sure is magical

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

    For those curious, this theorem generalizes to any n-dimensional euclidean space, where if two convex subsets are disjoint, there exists an (n-1)-dimensional hyperplane separating them

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

    This is insanely imformative. Thanks!!!

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

    sethbling i love you

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

    looks, amazing!

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

    I would be interested in the proof for the separated axis theorem, perhaps another video idea?

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

    This is the best resource I've found for SAT in 3D so far 😂

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

    same outro and everything 😭 i might cry from happiness

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

    When your math teacher tells you you'll need this later in life, this is that moment.

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

    This definitely went over my head

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

    Very well explained, thank you for the video!

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

    wow I had no idea it was that easy once you lay it out like that. Just 2x 3x2 plane projections for the face -> corners and 2x 3x3 for the edge collisions. The dot is then the distance.

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

    I wonder if there will be a C.S project or something involving this creation.

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

    that outro song gives me NOSTAGIA.
    YO....

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

    Just learned more in 5 minutes than I did during my 4 year CS degree.

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

    sethbling the goat

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

    I love the separating axis theorem

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

    Sheesh why learn physics from school when you can learn physics from Sethbling

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

    how exactly do you determine the length of each axis for each cube? do you just take the vertices, place them on the line of the axis and interpolate between?

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

    if you were to generalize your physics engine to include different shapes (like tetrahedrons or icosahedrons, maybe), could the separating axis theorem be used the same way?

    • @SethBling
      @SethBling  10 หลายเดือนก่อน +4

      The math works out fine, but you end up with an extremely large number of cross product axes, which makes it impractical. There are other, more efficient algorithms for more complex convex shapes.

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

      One such algorithm is GJK (Gilbert-Johnson-Keerthi) for convex shapes/hulls, the ingeniousness of this is by using the shape's Minkowski difference for comparison.

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

    @SethBling Are you performing any sort of optimizations like binary space partitioning or using spherical bounding boxes?

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

      Yeah, my physics engine uses bounding sphere checks before doing any SAT calculations between colliders (but no BSP). For world geometry, it's an AABB, and no BSP is necessary because I can directly query voxel coordinates via /execute if block.

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

    thanks for making math cool seth.

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

    Question: You mentioned that there are only two types of collisions. Corner-face collisions, and Edge-Edge collisions.
    Why can't there be other collisions? Why can't there be corner-edge, face-face, or edge-face collisions?

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

      All of those cases are either degenerate cases that are extremely likely to come up and don't last for more than a single frame with moving objects, or they're handled sufficiently by corner-face + edge-edge cases.

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

    My engineering classes actually coming in handy

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

    Thanks, this might come useful sometime!

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

    I didn't know the SAT could be applied to 3D objects, neat. Does it work for convex hulls too? I suppose it should, but idk what the axes to check would be

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

    Bros is so back

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

    This is brilliant

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

    This would be so much easier to explain if we could see in 4 dimensions

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

    thank you, seth "macfarlane" bling

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

    Watching these videos makes me feel like I’m in middle school again

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

    That's neat, but I assume there are limitations if multiple overlaps occur? It seems they'd want to push in different directions.