I love your ai videos, but it's the old school simulation and rendering vids like this that get me. I remember when I thought SSGI was the most futuristic thing to look forward to, and now we have papers upon papers about it
Hey there! First author of the paper here, and sorry for being late to the party :D A big thank you to Dr. Károly for the publicity, and to all of you for your enthusiastic feedback. I'm not sure how many are still watching the video now, but here are just some quick(-ish?) answers to some of the questions in the comments: [Can I use it?] Sure, if you can bear the code quality. The project page Karoly put in the description should link to the source code, MIT licensed and all. Keep in mind that it only compiles on Linux though and, since I've moved on to other projects, it won't be actively maintained. I otherwise tested on multiple computers, and they all compiled without too much effort if you follow the readme. All the scenes in the video are included in the repo, along with some instructions on writing your own scene files, as well as a small script to import the simulated results to Blender. [Explanation? / What are you solving? / How is it different from previous methods?] It was hard to cut out the jargon without being incomprehensible, but I tried my best: The simulation contacts with friction usually falls into two schools: the first school of thought directly solving for contact forces, but can be unstable when big objects drop on small objects (the blocks example), or when objects share too many contacts (the screw and chain mail examples). The second school of thought, which is gaining popularity in graphics these days, directly solves for object velocities or positions by modelling contacts as stiff springs, but cannot accurately solve for friction as contacting points are always required to slip. Think of it this way: in this framework you only know the direction of friction if you let things slip a little bit and then compute a force opposing the sliding. Naively reducing how much slipping is allowed can lead to bad convergence (the hourglass example). So no, the previous method shown in the video wasn't a single method, but multiple with their own pros and cons. The main point of our paper is to show that, through some combination of math, you can surprisingly have it both ways. That is, you can have the more accurate friction of the first school of thought and the stability of the second at the same time, via an optimization technique called the primal-dual interior point method. It turned out to be decently fast too! Keep in mind that by “friction”, I'm referring to the kind you learn in high school physics; namely, it is proportional to normal force, and can cause objects to either stick or slide. Trying to satisfy both conditions within a simulation is surprisingly difficult, and I'm not going to pretend my paper solved everything about the subject either. On the other hand, there are multiple efficient ways you can make objects slow down with a satisfactory appearance. It's just that trying to do friction as correctly as we can was something we wanted to try out at the time. [Real time?] Sadly not :( [Haven't I seen the screw example before?] You're likely thinking of Rigid-IPC, which was also featured on Two Minute Papers some time ago: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-CfJ074h9K8s.html As it happens, the chain mail at the beginning was also directly modeled after an example scene in its follow-up, Affine Body Dynamics (Lan et al. 2022). The two works belong to the "second school of thought" above. The examples on the other hand were more to demonstrate the stability part of the "having it both ways" by recreating results of previous methods, rather than to come up with a scenario that was previously undoable. [Why do old methods suck so much?] They don't. If they did, they wouldn't be published or widely circulated in the first place. But all tools - including ours - have some sort of specialization that brings about some kind of compromise. You want it to run in real time? Then you'll sacrifice accuracy; you want no clipping? Then scenes where everything is contacting all the time can cause problems, etc. etc. So as more use cases emerge, new tools get developed. There generally isn't a one-size-fits-all solution, and this paper is no exception. I just hope all these comparisons demonstrated some of the pros and cons, and didn't come across as one-upping or mean-spirited in any way… [Then there must be some flaws?] Sure there are, and I'm not too shy to list them :P (they're also listed in the paper anyway) - It's unstable if your friction coefficient is excessively small (< 0.04, but not zero), or excessively large (> 10). - As someone mentioned, the algorithm does allow some clipping of objects to happen, and there isn't any continuous collision detection like in some other solvers. It is *in theory* possible to integrate it into our solver, but this wasn't properly explored. - Sometimes (especially with sliding contacts) it's hard to converge to the right friction. This is in contrast to some other solvers, where sliding contacts are easy but static contacts are hard. - Some idiosyncrasies from external libraries are inherited, especially some quirks with collision detection. I'm sure you can find more flaws if you try out the code. The only ones that have thoroughly tested it so far are us after all, rather than the graphics community at large / practitioners with practical considerations / Josh from Let's Game It Out. It of course pains me a bit to publicly admit that our method isn't the best in the world in every scenario, but hopefully that will help you find the right tools if you ever need some rigid body dynamics. I hope that answered some of the questions and wasn't too long and boring. Cheers!
i used to love two minute papers but it became like those stim videos with minecraft parkour and subway surfers. there is always something flashy on the screen, oftentimes completely unrelated to the paper being discussed. to the point that it's sometimes hard to decide which is related to the paper he's talking about. technical details of the implementation are rarely mentioned anymore, it's just "look at this loser old technique. and now look at this spectacular new technique." it feels like it's all about the spectacle. szomorú!
Yeah, this video was rather disappointing. 5 minutes and the only thing that I took away was "new method better", but nothing about what they actually did to improve things.
Károly, the standard of these videos is really hurting lately. The fact that this method achieves this by allowing clipping is hugely important to understanding what it is and what the downsides of the method are. But you didn't even make a mention of it.
Whole video is just "look at how better it is", nothing of value was added. It's just a repost of visuals from the papers. Sadly, TMP is turning into a reaction channel.
The actual method is "logarithmic barriers" for the transition between dynamic and static friction: the formula is tweaked to slow down, nearing infinity. Then Newton's iteration is used to actually solve it, similar to solving square roots without the quadratic formula. Or something like that. I guess in the end it's a clever hack of avoiding precision loss.
I don't see this being cost effective for games but given that they've been training AI to use robotic bodies within simulations this would permit training within a true phyics environment. Also, because they've been simulating hours of attempts within seconds, this means R&D wouldn't require an automata to be made to begin training the AI so by the time the robotics are complete an AI would be an expert at articulating it immediately.
that looks amazing! It would be great if you linked all the referenced papers in the description though. Please make it easier for us to read more details. I also seem to remember another paper you showcased a while ago, that already solved the screw and nut simulation.
klang is a limitation of the old havok system while unlisted keen software showed the new havok system for their new engine that largely avoids the issues that cause "klang" phantom forces and unstable connector chains ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-eVNxF8KG8wQ.html also i dont remmember if this video had it but they at some point showed off some of their voxel (the v in vrage) tech which would allow ships to crash and pile up sand using voxels. hopefully this makes it into a game or an updatw to space engineers eventually
@@mightguy911 Could you point me to where it says that in the paper? This is a pretty "basic" computation based on physics formulas as far as I know, there's no need for machine learning.
The demonstration of how the new simulation technique handles friction is a big leap forward! Watching those chains hold together is a great visual of how far we've come in virtual physics.
These papers are good, but I wish there was more focus on efficient (real time) physics engines. Currently the most used ones like Bullet, PhysX are quite old and dont support gpu or multithreading, and werent designed for large scenes with many objects
Jolt is the most popular modern one I think, but personally I'm a fan of bepuphysics. The problem with GPU physics stuff as far as I can tell is that the GPU is usually full with rendering tasks but there's often threads with free space on the CPU now that modern processors have so many. It's also hard to parallelize scenes that don't have many objects, and you have to worry about the time bringing data between the CPU and GPU. There's definitely some cases where its a lot better though.
Now STORY is more important than special effects, because once you have perfect simulation, it’s the quality of creativity in the story that now matters
It may be odd, but I'm just looking forward to this being able to generate realistic moving water; animated films and games always look like they are moving through some sort of thin oil when you get water scenes. Amazing tech, and all I can think about is passing water! :)
FLIP is still probably the best method that I've actually seen used anywhere, but there are some other techniques and people trying their own things (ex: Grant Kot on youtube) It's really hard because for a true 3D fluid you need a number of particles or grid cells equal to the size of any axis cubed, which gets out of hand really quickly. This is mostly being gotten around by smart level of detail systems and keeping the worlds or bodies of water relatively small. This method is focused on accurately simulating friction between hard surfaces, which is pretty different from what happens in water.
@@theneonbop I know this will be different as it's only a surface-level sort of thing compared to the depth and physics of these models, but some of the text-to-video platforms do an amazing job of creating realistic-looking water. So I wonder if it would be possible to add a sort of surface layer created using the techniques of Kling etc. to add a finished surface detail, i.e. the model creates the water and the image-to-text uses it like a controlnet to add the detail? Anyway, I just hope someone finds an answer because it always "breaks the illusion" for me. :)
Interesting that this specific simplification is hidden behind lock and key. Nicely done. The potential of order of magnitude simplifications is valuable, but not possible to patent.
with the cubes dropping on each other, it feel like the cubes have a lot of weight, crushing each other, but they dont feel, massive. it feels like theyre heavy, but they dont have any mass. its hard to explain but it just feels a bit wrong. like there isnt power behind all that weight
0:23 uh, or you could just say they're simulations; because that's what they are, aren't they? Also finally glad to see something here aside from A.I. stuff from Nvidia.
Someone needs to fix animation-driven clothing deformations in games (or just completely simulated). It bugs me to an irrational level. Examples: ru-vid.comUgkxrz6kjVW5e9nZffnolYsQJEba0-3qcqnM?si=JNTGfH4l8I8jk0qY and ru-vid.comUgkxqKOZDCgircTYGJeiYNgcwwnXgTZZzU8y?si=v5kXQU80zJZCTocE
What’s the state of the art when it comes to simulating sound? For example, taking in precise 3D models of acoustic guitars and virtually strumming the strings?
I remember seeing "Toward wave-based sound synthesis for computer animation" but that was from 6 years ago so I'm sure some advancements have or could be made
@@theneonbop that’s a very neat demo (on a Stanford page related to the research)! Now, we just need to have contrastive autoencoders to replay realistic physics simulations with sound. Why aren’t 3D models for bodies (as done in AAA games) used for generative video? That is still a bit puzzling to me. (I guess that labs with billions to spend on compute have no choice but to go all in on “the bitter lesson”? I still believe there will be a point where making neural architecture improvements will be considered a “good” use of resources. But the opportunity cost equation still seems to favor the bitter lesson approach.)
@@mshonle I've seen some 3d model AIs and they aren't that good, none are even close to the point of generating PBR textures or models with decent topology, I think video is just generally an easier problem. Actually, the 3D model making AIs are relatively architecturally similar to the video ones because they first generate a series of images of the same object from different directions, and then use that to create the model.
He's been doing that for years. It got on my nerves right away and I have been steering clear of any videos from this channel. I just looked at this one because maybe he improved, but he didn't.
ok, fascinating collision calculations! I'm struggling though to find out where to approach this tool to experiment with. Where can i find this tool? CGI nerd here
They link to the git repository with instructions in the project website, but there's no GUI or anything afaik, although they did create a python script to import the results into blender
Thank you Dr Kalroy. It's good to see all the different papers come together. After watching thr channel for so log, these improvements seem more significant as I've learnt that most of these papers affect consumer grade products in a very real way. I can't wait to see more applications. BTW: what did you think of spacex's latest self landing rocket system? 😅
Its been a while since I've watched, but it feels like the quality of these videos got lower, with less information and constant talking that overloads your brain.
and background b-roll completely unrelated to the actual video... definitely quantity over quality, it feels like he's gotten used to only needing to read project pages so he never reads the actual papers anymore Never once in this video did I hear what this paper is actually doing differently, why its better, what its problems are, etc... I know it would require some math and maybe that's asking too much but I wish there were videos that actually explained the papers instead of saying 'look, isn't this cool!'
Whole video is just "look at how better it is", nothing of value was added. It's just a repost of visuals from the papers. Sadly, TMP is turning into a reaction channel.
This specific implementation is intended for offline rendering, but it could work in video games probably. It's also more focused on friction so it actually does let things intersect sometimes. Honestly what we have now is good enough though, aside from a few cases the clipping i've seen is from buggy character controllers or just the devs not adding collision to things
@@theneonbop l don't think what we have now is good enough, just look at clothes and weapons on characters, it's so bad in many video games including AAA titles
Amazing! Mindblowing! The prospect of being able to use this (soon ???) in VR by voice control, is blowing my mind right now! ...WOW ! Happy colored greetinx
0:10 "What you are seeing here is not reality" - are you kidding? Basically all of your videos are computer-generated, and you just showed us an especially glitchy simulation. What possible viewer could think that they were watching reality?
You've found the right comment! 🎉 1. Understand that traditional physics simulations have limitations that can cause glitches and unrealistic behavior. 2. Look for games and simulations that utilize Position-Based Dynamics (PBD) for a more realistic experience. 3. Experiment with interactive simulations that allow you to manipulate physics parameters. 4. Stay updated on the advancements in PBD by following researchers in computer graphics, physics, and engineering. 5. Explore the provided resources to delve deeper into the technical aspects and applications of PBD.
The explanation comes from you reading the paper. That's literally the point of this channel. You get a high level overview of a paper that would otherwise not be seen and now you know it exists so you can go read it
@@vectoralphaSec the only thing this video provides that the project video doesn't is that it's in a place i'll actually run into. There wasn't much overview of the paper either, just the basic level of what it does better, without even surface level information about how it does better, how it compares to others, what it's problems are or what could be improved, etc
The cannel is called two minute papers for a reason: It gives you an overview what papers are out there that are interesting and provides a quick overview.