 4 p.m. stack let's start so welcome to my talk metabolism to going deeper with meta balls and shaders That's me if you want to find me online on Twitter Instagram stuff Just hit me up there. It's usually the place where I'm the most reachable And also I need to fix something here really quick And yeah, this is not my six conference the third time speaking and I'm also my second time speaking about meta balls for you Yeah more on this Like meta balls are right now the until there's no full video open VDB support in blender the only like implicit surface and the only way to actually like work with volumes in a Yeah, really active way So implicit surfaces just like the the super recap for you is It's just like we are not defining the geometry directly by polygons faces and lines What we are defining points in space that have a radius and that can affect each other radius is So we're going to talk in this or I'm going to talk in this Spotlight about a short recap what happened in the last two years between Me talking the first time about meta balls, then I'm going to show you again the basics because it's always good to know what you're dealing with Last time I was talking I skipped the particles a bit. It's just like oh, yeah, you can also do stuff with particles so more on that and also After looking into shading, we're going to take a look at how we can reuse meta balls in other packages but also like in one project to the another project and Maybe in places where it's not sufficient to use like the raw implicit surface Starting with the short recap So what changed what did I learn the first thing I think I said it wrong again It's matter not meter and I going to remember this now. I really learned this the hard way Thank you YouTube comment section. I Gotcha, but I also got the meatballs and which were you with meta balls. So at least there's that Yeah, the last talk I recall it was in September 70 2017 Back then there was like a big keynote the workflow project and Tom was super excited but There was like mainly like lots of tiny projects shaping up to something bigger Things that were super new back then and they were not like even conceived but just an as an idea It's like the viewport upgrade Evie in general as like a real-time PBR renderer than also asset management Linking and overrides that are now I heard are in the master But also like grease pencil was just still a rough version and not as Fine and as Done as now. So let's go back to the basics not only to be on the same page like the room and my Little brain, but also to check what's new in 2.8. It's not too much because like I think we checked yesterday like the last real commit to meta balls with like a change was 2015 or so it's like there's not a much changing there But we have five types of meta balls or meta objects These are available in edit mode of the meta objects and yes meta objects have an edit mode I need to just like put this first you can Spawn directly a meta ball inside blender just like as an object and you can pop into edit mode with tap The first object is the meta ball. It's like the object with like the least amount of Properties, we just have like the types stiffness and radius and some some bulls to check Then we have the capsule which is basically a ball with another dimension stretching out over the size X We have the plane which is then two-dimensional stretching over X and Y you can ellipsoid which is just like a squishable sphere and Last but not least the meta cube which then of course has The four dimensions so you can scroll and scale it around Properties these are often only available in edit mode So what you see here is already like popped into edit mode and exposing all the objects or all the properties of the active object This is running. Yes, perfect. So here we can see how this is working. I should not fall off stage And you can basically just like scale around this mushy object You can do the same thing with the plane And also you can analysis to the cube make it to a plane and also you can make it really really sharp by Lowering the radius of the matter object. It's not working with the sphere, but with With the plane and the cube. It's like a really efficient way to get super hard edges even with the matter objects Yeah, and then there's also the capsule with basically the same options Sometimes it's hard to understand what stiffness and what the radius is doing because the stiffness is basically hardened the shape that the meta object is going to Trying to form and the radius is like setting the maximum threshold So like these are working with each other But just play around like blender is free and maybe not your time, but it's really fast to just start playing with this Yeah, the biggest thing about meta boards to actually use them in like some kind of production way Is the naming convention because it's not as you might always expect. So when you use meta objects You need to just make sure that you name them correctly and the correct way is a bit strange So we got only one suffix for meta objects, which is dot and then the number So if you want to like group your objects, which I often do by like giving them like your own Suffix this will appear as a new meta object and will not weld together with the other objects. So This is a bit hard But the good thing is we have no collections in blender 2.8 So you can group your hierarchies with collections and I did not have the problem of losing track like this So yeah, but my old naming conventions totally break the good thing also is 2.8 has Battery naming included before they were like add-on solutions now. You just hit all plus F2 And you basically just like rename all your objects and have like your own Group of meta balls. They're super easy to handle. You can pop them into the collection and you're done And also pro tip this also works backwards So if you have like a group of meta balls, that is not the same namespace You just like put the namespace of your meta ball you want to group with and then you have back full-running meta ball system Another thing that are also just like slightly touched first time Boolean operations, it's like man not really Boolean operations, but at least you can invert meta objects for subtractions so For anyone wondering how a meta object really works. It's two objects to it together but if we Inverted we can actually subtract shapes and we can subtract super hard shapes meaning that we get even like hard edges and Like hard save surface detail that we would basically not expect and actually using these things the first time because you're like Add some of these objects and you get like a blobby snowman, but you can really do sharp and mechanical edges Yeah, if you have issues with this whole thing and you don't get result with like the hard cutoff Just push the strength of your subtractive object to 10 that somehow gives you the cleanest results But yeah be warned It's the video playing These objects are a thing on their own. They behave on their own rules. They often feel easy to understand, but they're not and so Just you can't easily invert your operation because of the different stiffnesses so you need to again play with Rady and stiffness to actually subtract then the sphere from this cube So like it's not like a Boolean operation where you can just like switch direction But you really need to think about the influences and also Doubling of influences Yeah, one of the last points that are not explicitly Told in the interface is the resolution and grid offset So basically what we're doing is we have a matter object This is describing a sphere a cube or a capsule surface and then blender goes in and meshes this object with triangles And then you get like a grid of triangles that are like quad triangles You can have a scale slider for rendering and for preview But you can influence also this resolution by just changing the scale of your first matter ball so if you go into the hierarchy you see here and I move around the Child matter ball. Let's skip again. Like if I move around one of this Child matter balls the grid is staying solid but as soon as I pop in the Main matter ball and I move the main matter ball the whole grid is moving This could be something that you don't want because this gives like flickering and animations and also like the Basically the super bad topology will update on each frame if this Main matter ball is moving so keep this in mind to keep like the main matter ball somewhere out of your scene So that the rest is with static Topology yeah, also at higher resolutions. This will be unnoticeable. Why because like your resolutions can get like close to Pixel size, so then there's no moving apparent This is a blank slide This was actually just a blank slide. Okay The next thing also blender 2.8 zero already. Yes, you're already is a multi-object edit mode For people that come from other packages. This might not be new But for blender users we usually could just like edit one object in edit mode at once now We cannot only edit multiple matter balls of one like matter group at once But we can even pop into a more complex object like this guy. I'm showing you later and edit multiple groups of matter balls you see this here with like multiple mesh colors in the viewport At once and yeah, the performance usually is much better, but I did like this recording on the Intel thing with like high resolution display and screen recordings a bit much So talking about all these things and also talking about the sharp detail and also a bit showing the sharp detail You can get here in the mouth Is there a hard surface modeling? Practical or available with matter objects Kind of so I need to tell you like I'm not the best hard surface modeler. I Really don't like it But you can do stuff that somehow looks interesting Because it's shapes that you would often like work a really a lot on when you build it in Polygons except for using add-ons that like bevel your stuff But you can also get like shapes that maybe are just more creative or like more flowing for your For your style and this will really not be the next way you're going to do like your big sci-fi mesh But maybe it's a way to like differentiate your style or your work from somebody else's and Also, there's talented people around and there's talented people on the Internet so Emiliano Posted this and I contacted him and I was like super amazed because like this is just like a bunch of Meta balls grouped together and to see a bit more. He actually sent me a rendering Like this is solid work like this. There's no no reason why this would not be applicable in like a sci-fi movie or like even like replicating maybe How plastic molds are made? so Just put the time in and you get something really interesting out of this and again as I will tell you with like my last slides You can export this stuff and you can reuse it for your next project So I'm rush. No, I'm actually not rushing that much. I just like 15 minutes left. So more on particles The last time I came in and talked about metabots and particles. I basically said like yeah, you can use them together Do it, but I'm still not sure If this is the way to teach so let's just take a look at how easy it is so We had a plane We had a particle system Yeah, just some value so it's like sprinkling sprinkling out of the surface in a random Fashion and then instead of rendering as a halo We just render it as an object and we pick our meta ball play Ah, yeah, and then I can scale it up because the current Metabot would be too slow too small and then we just hit space and we get this splashy water fountain Yeah changed like the randomness of the scale to get like a more dynamic View is like super stuttering. Okay So but last time I was talking I said like oh, yeah You can like fake fluids when you're taking like actually a physical Simulation of rigid bodies and like they touch together and then I read up on particles And what I was doing was basically a super super hacky way to emulate SPH fluids because basically what I wanted to get is like Particles of stuff flowing around and touching each other and like bouncing off and this is basically what the SPH solver does in like a Way more optimized way so to access this and to have like a more Well, like the even the matter objects themselves or like the particles are interacting with each other We just have to Change the solver So you go into physics change the fluid solve I didn't need to do anything and now you see like there's like a bit of different motion And you can mainly see that it's now with a new loop that you get like this moment We're like the droplets that are coming down from like the first pushing out. We're like bounce against the new rendered particles and I show you some examples with this I can't give you like this full-on recipe because there's like still a lot of trial and error But I've been rendering these sequences I will show you now out and like I think like the full thing in an hour was just like setting up a rendering system Then like adding the particles a force field and then rendering the stuff with Evie so it's just a One just basically the plane emitting particles into a metal ball around to how you say like a force field and And that's just it and the thing flows around also. This is without gravity So to do particles without gravity you just like uncheck it in the worst settings and you've done The same thing with gravity often looks like a bit more interesting because you got like this blushing out to the ground And here's like a big blob dropping out done one last one Turbulence field no gravity Just flowing around and of course this is not like your flip fluid simulation with like ultra high density This is not like the old solver like touching flat surface least perfectly But it's something that is hyper Indirectable because you can go in bake your particles and just like actually key frame your own particles along or like your key frame your on matter Bots along and they will just Flow into the surface and will be like super super flat So I dropped the word shaders into my title Because somehow I have this layer-based approach I want to show you and that is way more clear than again last time Also in 2.79. I'm not sure if it's fixed. There was a bug where the viewport would not update the thing I was doing so Now I show you a way to use matter objects as origins for textures so or shaders in general so the thing is each Matter ball object can also behave like an empty or just like an origin of any object of kind of object and This is just the node setup and it's actually like in the groups There's not much stuff in there and we get like this Result here, and it would just like go through and explain what's actually happening in the thing The first thing is just like really important. We're using texture coordinates with object coordinates coming from different objects and What's actually happening there? We can see when we debug This color channel, so if you just use the matter ball object Texture coordinates you see like the the whole crosses moving from the colors But if we use like a different object, we get the same cross But just another cross section of the colors again moving So this is then exposed and just like adding multiple of these texture coordinates together so to add multiple texture coordinates together we first need a simple way to use one and For this we're taking a gradient shape I'm just like hiding what I do here for now and Map this gradient shade onto one of the matter balls He is like the original matter ball like I'm doing exactly what I told you not to do. I'm moving the original one But you can see like it's popping in and out of existence in the shape And it's not looping and we're just getting the object data and mixing it with a base color I tried to make like the base color a bit to the side so you can understand like that everything I add here On the right hand side. It's just like added on top so the group I use seems to generate like some feel of influence and it's basically just a Gradient texture that is spherical which we can cut off at like a certain point And I'm using a color ramp to get like a easy access to the blending between the pink and the blue color And also if I have everything in a node group they would just like link their information and It would be super easy to just reuse all the data for more layers of color. So let's add more layers With control H. Thank you Joshua I learned you can hide all the unused node sockets, which is super practical and we can actually clean up or of you put a bit and then just See what happens if we add like another Group so I just copied over the texture coordinates and entered on the left-hand side the object the corresponding object And then I just like have a mixed shader with like you can really think of this factor here It's like an alpha in different packages Just mixing in the different colors And so this is everything I need to do but what if I Want to activate and deactivate something I can just go in and hide the different Or mute the different nodes and it will always just add the color one through the node tree And I can activate or deactivate the blue pink and turquoise colors So you can really like go in and debug also what you're doing So let's really add another layer by hand. So what would we need to do? We have a new metal ball We have a new move We have also a new mix node Where we can like put a new color. I'm putting orange here and then checking if it's actually full orange Now we can copy over our nodes like there's no actually need to do like more than copying it And then we're also linking metal ball four with metal ball four in the texture coordinates Tada It's working. Let's check. It's actually working I'm moving it here during the animation by hand And as you can tell like this is Evie and this is actually running on this tiny Macbook pro It's running in real time and just giving you the update To bid this to make this a bit more handable because like again, I told you you cannot rename the metal ball objects You should use empties as origin at one point if you have like a really complex object And also this gives you the opportunity to change the orientation of your texture like every time you do it It's like a mesh object Separated from the actual object. So let's take a look at this sick-looking guy. It's like really bad in color I think we need to make him feel better. So I Have one object. It's like a empty object just in the middle of the scene It's the cube and I called it already main gradient just so you can see it here in orange This is my controller now. I Also added the main gradient in the texture coordinate, but as I can see here I'm not generating a texture with it as of now so How do we activate this thing? We have everything connected We have the mapping just to make sure where the point is starting and then we're activating the gradient texture and Boom gradient because we don't want to like have him like super hot We're going to need to find a way to make him like look a bit more comfortable So we cannot only move the empty, but we can also rotate it to give him like a little blush and Also, we could animate this super nicely during the full thing So like if he's getting like really angry you just like move the empty up So getting super angry or we can just like giving like a more flashy color Yeah, but the thing I really want to do is just like rotate it on the axis You cannot see to just color in like the face parts that are popping out and just giving like a nice little blush That's maybe a bit too much Yeah, and just as in the last example with like just the colorful spheres blubbing around we can simply add more details by just adding More objects Yes, so here I just taken the ears which is metaball six and metaball seven and Reconnected like the node group I had from my old file, which is just like again texture mapping Plus gradient and now I can mix this in Yeah, so and then I activate the mix nodes and you can see like get like the some fake SSS or whatever like popping out of the ears So you just get like this red spots in the ears. Just like I'm here on stage So you get like the the full fidelity and you can just like copy over this layers I saw like Simon Thomas node group and there's like super crazy like millions of nodes Like this is just like 15 or so. So you should be safe doing crazy stuff You should also be safe when reusing metal objects and the good thing is You can just mash them via a limb big so last time I stood on stage I was asking like oh, yes Like not possible to export them by a limb big and they're not into 2.8 yet And so Subran make sure that they're exporting to a limb big and now it's working So what do you have to do to export your metaballs to a limb big? You take your simulation from before you export as a limb big data Somewhere on your desktop And then you have like this loading bar because it's basically you taking every frame Saving it into a mesh file and exporting and then you can just go in and then your file import set exported file and You have your simulation in the next file this of course has implications I cannot change the The meshing as I did before but I can in and actually change the mesh is now like a sequence of Meshes per frame and can for example like decimated for stylization I talked again about like super artifactable fluids. This would be a way like to make these Low poly style looking fluids that are actually animating now we have like this Full sequence animated, but maybe we just need to have like one frame of metaballs saved So we can just use convert to it's basically applying all the effects and baking in the topology Did I already do this in the recording? So I hit convert to mesh and that's it I don't see a big result because it's currently taking the same resolution as the rendering Yeah, and now I have like a super messy mesh, but I can remesh it with the remesh modifier and get like a more quad mesh I can remesh it with the new voxel remesh it remesh it and I learned you can also mesh it with crudly Quad flow a new way to have like super clean quad meshes and blender and this is I think in 2.81 now and Yeah, super easy. You're just like putting quad reflow into the search bar You just make sure that it's not using symmetry and off you go 5000 just like a tiny change This operation takes a while, but the result looks super nice 50% boom and I don't know if you have seen like the meshes that regular metaballs generate You would never be able to accept subdivisions on such thing But on this you could add subdivisions later to have like a animatable character Promising but also there's like one way to really get the most out of metaballs, but this is a whole nother talk It's retopology. It's just like remeshing with your bare hands. Basically if you do like use metaballs for sculpting volumes and for Yeah, just getting something that's really like production ready. You should take your character or your model you did and actually Do clean retopology by hand Before you all go I Would really like to take a picture of you all standing there So if you don't mind I just grabbing my phone right now because this room is super full I just need to brag a bit and also why I will do so you will be all laughing because I'm not sure if you know him yet But we will know now One more thing Julian Glander an illustrator and animator from the USA. I think he's Doing stuff for the New York Times and he's doing stuff on his own and I have this very seasonal video for you that he Kindly made available to me. So have fun Thank you, and you don't need to do lo-fi stuff like this you can go crazy do millions of polygons. Bye