Getting Started with Goo Engine - Key Features

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
welcome to the custom build of blender by doing Goose Studios I'm Professor goo as which is the name I've adopted about 10 seconds ago because I'm going to teach you guys how to use this blender build uh which we've made ourselves for our own projects now if you guys don't know Dylan Goose Studios specializes in anime 3D anime um which is NPR or non-photorealistic rendering in other words we do like tune shaders and stuff right you know that's what people typically know NPR for and that's true but this build blender allows for that plus a bunch of other controls that sort of enable artists to actually make NPR feel as convincing as possible and that's something that we feel very passionate about and I know a lot of you guys also feel the same way so let's get into the features that we've added which I think you guys will find very useful for your projects as well now before I get started I want to let you guys know this is not a beginner tutorial this is assuming that you have knowledge of blender and if you want to know how to learn more about blender and get used to the software as a whole I do recommend the blender fundamental series on the blender YouTube channel you might recognize a familiar voice uh over there so but once you go uh more into blender and you understand it you can come back here and here we are welcome back so we are going to go into the shading workspace and I've got a little setup here to show you guys what we have in store for you so these are the four major nodes that we've added to the Shader editor Shader info node curvature node screen space info node and the set depth node all four of these are very important for NPR stuff or non-photorealistic rendering we use them in all of our Productions the Shader info node is the sort of biggest one when it comes to tune shading it basically allows us to create the most optimized most refined tune Shader with the most control I'll show you how it works but we're going to start off by recreating the default tune Shader which is basically the tune Shader that you can make with default blender notes um it's built off of a simple diffuse Shader which is blue at the moment it can be whatever color you want I'm just going to turn it back to White it's usually white send it through a Shader to RGB node go to a color ramp for the uh the basically the the line the cell shaded line that you want to draw there and then you can map it to whatever colors you want and then of course in the mission node for the final output but yeah that's a very simple setup and it looks great it's fine but it has a couple of issues and we'll go into that in a little bit but I did just want to show that the current setup for our Shader info node allows us to recreate the exact same output with just a couple of extra little layer blending things so we have four different outputs we can combine them all into yeah the same result I'm actually going to real quick add just the self shadows in here but that's not a big deal so um with that in mind let's take a look at what's wrong with the diffuse Shader so the fuse Shader has a couple cool features you know uh namely like for example it has these cast shadows and stuff that's great and all it also allows you to you know change the the whatever the distance of the thing but oh look at that Terminators Terminators oh that's annoying if you guys don't know what a Terminator is it's basically these little sharp Jagged Peaks here um at the edge of the normals it's sort of a basically a it's a 3D calculation bug now it's really hard to get rid of these Terminators so typically most NPR users will just sort of slide them and behind the shading line and it's like okay it's fine but you know I'm not a big fan of those things and you can't really get rid of it assuming you have cash Shadows now technically you could turn off the cash Shadows entirely and then at that point no Terminators very very clean okay but now you don't have cash Shadows so it almost kind of forces users to choose between cast shadows and clean shading and that's kind of annoying because some people want cast Shadows for a lot of things so let's talk about what we have in our Shader info node um the Shader info node uses diffuse shading cast Shadows self shadows and ambient lighting as four different outputs the diffuse shading output as you can see here I'm using node Wrangler by the way to use the the viewer node but um we'll go through these four so the diffuse Shader uh sorry the diffuse shading output is specifically just the diffuse Shader without any cast Shadows at all so no cast Shadows allows us to get this really nice clean shading without having to worry about anything else I'll just demonstrate that right here you can actually turn off the cache Shadows by simply turning down these values here and now you have something that is quite clean as you can see here and there's no Terminators so you can actually do this and it's it's completely clean even though there's no cash Shadows which sucks but we'll get into that in a little bit now the next pass we have as you might have guessed is the cast Shadows now the cast Shadows are completely isolated so you don't have any shading in them either but as you can see here it's just the cast Shadows pass alone this separation is incredibly important because now we can add the cash Shadows back sorry let me just bring that back here we can add the cache Shadows back and what we've actually done here is if you notice there is no Terminator line look how clean that is look how clean that is no Terminator jacket spikes or anything like that it looks beautiful now the reason for that is actually because we've separated out the self Shadows because the self Shadows are actually what are causing the Terminator so if we actually take a look at this next pass you can see that Jagged Edge now this Jagged Edge is actually pushed back a little bit from where it was before so we have a bit more leeway but technically speaking these self Shadows are acting very similarly to the Terminator Shadows that we saw in the um the fuse as you can see here just look at that um very very similar so um what are these self Shadows doing well basically self Shadows are shadows that are cast onto an object by itself now uh a cat a normal cast Shadow pass here is cast Shadows that are uh cast by an object other than itself so in this case it's like this other object here is this other sphere um but like for the the self Shadows it's specifically well the what is what Shadows are being cast what light is being blocked by its own body essentially so those Shadows are great but they're not always desirable because of the Terminators but also a couple other situations which we'll get into but this is a really handy feature because now we can turn off the cache Shadows entirely but keep the the norm sorry the we can turn off the self Shadows but keep the cast Shadows on so now we have a really really clean option to keep cash shadows and have Queen shading which is beautiful it's beautiful it's an incredible uh game changer for NPR in my opinion and we use this for a lot of our projects now we also have the ability turn on self Shadows by itself I mean if you want to I it's up to you it's just an option but typically the real reason for this is to remove self Shadows from the cast Shadow pass now um we also have the ambient lighting pass which is actually just essentially the world Shader cast onto the diffuse Shader this is something that's kind of a problem with this normal diffuse Shader as well let me bring this Terminator back into the Shadows there we go uh hide hide uh but let me show you what happens when I turn the world Shader up as you can see that threshold is actually being moved and the reason for that is because the diffuse Shader itself is actually getting brighter you can kind of see what it looks like here um the world Shader is actually casting light onto the diffuse Shader and you can't separate that from the diffuse Shader it's really annoying so like you by Nature will be beholden to the values of the world which is bad for anybody who wants to add like I don't know a sky sky map or even an environment where you have some HDR lighting that you want cast onto the environment it's annoying because that will cast on to the characters or cast onto other tune shaders as well and it'll affect your threshold for the the tune Shader clipping and stuff like that which you want the clamping sorry and so if you wanted to separate that which you can't um but if you wanted to you would use this blender build where we have the Shader info node yeah all right thumbs up so this is actually an incredibly powerful tool because if you take a look at this and compare uh if I turn on the ambient lighting it has the same effect except without the Terminators which is nice but if I turn it off behold no effect no effect at all in fact one little thing if you're curious is you know colors also change the values of the world look at this so this is like how the default Behavior would work you turn that off you can change the color of the world without worrying about the tune shaders either beautiful isn't it that is an incredibly powerful tool as well so as you can as you guys can see the actual Shader info node um passes have incredible you know use cases and the fact that they're separate allows you to merge them together as you see fit so um another thing that you guys want to know about using it now that I've gone over the features let me just give you a couple of disclaimers now if you want to use the Shader info node one thing you might notice in the beginning is um let me just turn this off there we go oh no yes one thing you might notice in the beginning is that the cast Shadow pass and the self Shadow pass right now I'm switching between the two they look identical uh and that's the default Behavior the reason for this is because uh self Shadows are actually they take a little bit of extra memory to process so we actually turned them off by default so you just have to check this check self shadowing checkbox um before it actually separates the self shadows and it's just an opt-in feature for each material it's in the material Tab and super easy to use but just make sure you turn that on before you do anything else for that specific Shader but now as you can see we can separate them out so it's great um okay so that's the Shader info node hopefully that's everything you need to know but we'll do a couple more tutorials on the Shader info node and its applications in the future there's a lot of applications for self Shadow for example which involves like characters noses and stuff uh casting Shadow on their face this allows you to get rid of that entirely which is awesome um but yeah we'll talk about that more in other tutorials let's go to the next node which is the curvature node now the curvature node is something that I typically like to use for hard surfaces so uh this is a good example I've actually got a weird sort of application of it for line art but as you can see here we have a nice little curvature note setup which uses uh the curvature node with the with the curvature and also the scene and a couple of like noise things I've got my own little node group for it here but it's the same thing as if we use just the default note so I'll go through the features here this is what the curvature node output looks like I'll turn off the the overlay so you can see the actual outline here but this is the combined output of both outputs curvature and rim uh individually they look like this that's just the curvature stuff which is basically the stuff that's like acute angles and stuff and this is the rim which is the silhouette of the object which is pretty cool um combined together looks like this and one it's color dodged on top of an existing Shader you get something like this which is kind of cool the curvature note specifically is made to replicate some stuff that a lot of painters do and a lot of things happen in real life in the same way where you have this extra bevel because of the wear and tear of real life on every single hard surface corner so um the bevels actually get highlights a lot of the times especially in anime where you want to highlight those edges for geometry and also for some prettiness and etherealness and because of that particular feature in anime we wanted to replicate it in 3D now typically without this this is what it looks like this looks terrible um it even though we have a bit of a painterly sort of noise on it it's like it doesn't look like it's hand painted it looks like it's 3D it's a dead giveaway it's way too under detailed and stuff like that but you add a little bit of curvature and suddenly it's a little bit more believable now this is still a bit much which is why I have this version of it which is essentially a refined version that has a bit more options here but uh let's go over what these settings do so I'm going to go back to the uh the default sort of settings oh that's a skinny node um the default settings um I believe will look something like this like eight one one or something like that the sample size that basically is how many sort of samples you want in the in these little bands here um but uh I typically use one if I can just because you don't want to be too expensive with this thing and then the sample radius is sort of how far you want it to go from the the middle uh I usually use a value of 0.1 and then the thickness is actually referring specifically to the the rim more so so you can actually bring that up to like you know 10 or whatever um I usually bring this up to like five ish but you can go pretty much as high as you want I think it stops at a certain point but yeah uh that's how those settings work very simple to explain to be honest um but have fun with that uh once you have that you can combine them together with an add node and then uh just multiply them onto whatever you want so that is the curvature node um pretty simple to be honest I do recommend using the curvature and scene Rim separately if you have certain use cases like for example the rim light actually works great on certain characters uh if you want to add a rim light to characters or props which is awesome one thing that you want to know is that if you add it to like you know something that's subdivided or something like that the curvature node will look like this so that's not great which is why we don't recommend the curvature node for like organic objects the rim node the rim light node would work actually fantastically with Organic objects so in certain cases the curvature output will not be useful which is yeah we recommend it for hard surface stuff so hopefully that works and uh is useful for your projects um let's move on now to uh the next node which is the set depth node so the set depth node is a really cool feature that we just added in uh for fun almost um it kind of works similarly to the in front option if you I'm going to show you guys real quick the in front option is in solid view that's sort of like a fun little thing that allows you to bring objects in front of everything else as like an x-ray thing the only difference for us in the set depth thing is that we can actually basically drag a slider for how in front we want it to be look at that look at that so this Cube here is technically still if I put it in solid view still right here the geometry doesn't move at all but the Shader itself can be dragged forward or backwards so I can push this this Cube basically as far forward as I want where it's like in front of the cylinder even though it's technically behind the cylinder so one of the cool things about this is we use this a lot for eyebrows on characters faces this allows the eyebrows to shine through the hair even if the hair is in front of the eyebrows it's a very simple trick we use it technically you could composite it together but we use it to preview the acting animation because those eyebrows will be visible in the end um but we can't see them as animators when we do play blasts and stuff so now with the eyebrows basically set in front we can actually preview the animation in a way that's more accurate to what things will look like in the end so yeah set depth is incredibly powerful but it's so so simple now just a real quick demonstration of how it actually works in order to get it to work you do need to set it to Alpha blend opaque will not work as you can see it's a little weird set it to Alpha blend and then also turn on uh show back face and back face calling otherwise you might get some weird Z sorting issues like the bottom of this Cube showing through and stuff just just turn on back face color so that'll get you the results you want and that'll work great the way you plug it in is just like whatever Shader you have you just plug this in at the end of the node tree and it works this is a typical setup that you can do just like camera data with Z depth and a little math node um yeah so that is how that works um let's move on to the final node which is screen space the screen space node is something special uh it is a hack it is originally sort of based on the refraction node which allows you to sort of see through things and like manipulate what's behind it so late as usual our main developer actually took the the distilled form of the refraction node and gave us the screen space info node which gives us these two outputs here scene color and scene depth this is really cool because what you can essentially do is do compositing in real time to whatever's behind it so you can actually change the color of things it's really cool so just to demonstrate how this works um The View position here uh by default if you just do the camera data it is just the normal you know whatever's behind it which is pretty cool uh but uh you can also add a vector node here which manipulates what the camera is supposed to be essentially so now you can have like this weird like refraction thing where I've sort of zoomed in a little bit and offset the camera for whatever's behind it as if it's looking from a different direction so that's a really cool feature of the the scene color uh the scene color here is specifically just like the color itself of what's behind it and then we also have the depth pass now the depth pass will look white most likely for you um and that's specifically because it's uh greater than one so it's being clamped right now so if you do a map range node you can actually get something pretty good yeah there we go so the map range node allows you to basically see more clearly what's behind it uh there we go that's a little better have an extra object there so you can actually map it to whatever range you want this is in meters by the way um and you can get the depth of the scene let me just zoom back out a little bit there we go oh look at that beautiful um so this will actually give you the scene's depth for whatever's behind it which allows you to comp it in if you want to so I've actually done this thing where uh first of all I with the scene color I've actually just like changed the saturation change the Hue a little bit I can do whatever I want really uh which is crazy it's crazy um and then you can actually multiply that or add in this case with the depth which gives a nice little missed pass if I wanted to do a little missed pass here so I could I could literally just take the depth the depth pass and just added on to whatever's behind it and there you go you have like a little fog portal um if you want to do a fog you can do a fog portal now so um this is great for VFX uh latest usual has a lot of great examples of how it's being used he's yeah I mean he is abusing this node to do really cool stuff um so he has some examples there and and even posts the notes for that if you want to just uh learn from him what it can be used for um but yeah we'll have some more tutorials on that later this is an incredibly powerful node and uh great for VFX and other things potentially um yeah so those are the four nodes uh those are the four nodes that are uh useful for tune shading in particular we have a couple other things for example like the sdfs we have the SDF section now which we added in which is if you don't know uh SDF stands for signed distance Fields it's essentially infinite resolution gradient Maps uh but that's kind of you know jargon technical jargon you can use it for a lot of cool things if you understand what sdfs do you'll probably freak out about this because it's very useful but if you don't here let me just show you a couple things that are useful that are more easy to understand which is you have pre-fabricated procedural shapes so this is super cool you have circles let me just create a plane here so you can see this um hide that real quick uh so you can actually create stuff like uh stars and stuff very easily let me just do a quick little mapping thing so we get the right position there we go there we go so this this uh bsdf sorry just SDF this SDF is uh is something called SDF Primitives this node here and The Primitives range to a lot of things obviously obviously as you can see we have rectangles we have a heart shape that we can use I mean look at that this is a fantastically powerful just prefabricated procedural noise uh sorry procedural shape generator which allows you essentially to create infinite resolution shapes now you can just do a quick greater than uh to have like the actual shape be drawn and smooth but yeah look at that this is infinite resolution you don't have to worry about pixels or resolution or anything like that um yeah so you can change this to whatever you want we have a bunch of them here I believe one of them is the star yeah the star is a fun one for the star just a fun fact you're going to want to have at least two sides or four sides there we go I think you can do three sides yeah um so you can just sort of have like a let's just do a five pointed star you get enough inset for it it looks like normal again um but uh yeah lots of cool features um but this is not necessarily related to NPR stuff but I figured I'd mention it because it's pretty useful for some people okay so let's talk about light groups one of the most hotly anticipated features I think um for the blender build and uh we'll show you guys how we implemented it and how you guys can use it so this scene is pretty simple we just have a simple sun lamp here and these objects uh what we're going to do is we're gonna make the objects only respond to certain lights or the light only affects certain objects or shaders in a specific sense but if I go ahead and try this I'm going to go and show you guys first of all that in the light data tab we have the light groups section and this will allow you to control the light groups from here for the light specifically and you can link the light groups to the materials if we create a material real quick you can see that there's a light group section under the materials tab as well that mimics the same layout so what you want to do essentially is match these that's basically how it works the light groups UI is very simple and the way it works is very simple because it's string based so all you need to do is create a new light group with this plus icon and you just have to name it something I'll call it monkey for example and once you call it monkey all you have to do is go to the you know the Shader that you want it to be linked to choose this link button and it'll see all the existing names which is just monkey and as soon as those two have the same name it'll work so just to show you how this works I'm going to also turn off the default group because that's an important aspect of it what this is is the default group is basically a single light group that everything gets joined to automatically which is mostly just there to mimic default blender Behavior so we're going to remove that and as you can see now the entire environment no longer gets affected by this because it's been removed the only light has been removed by from the default Group which everything else is a part of and now the only thing that gets affected by the light is what happens to have that light group that it's a part of in its own light group sets so right here the monkey now affects uh is now affected by the light but nothing else is likewise if we remove this it would be basically the same as everyone else so that's how light groups work but let's see what happens when we have two lights right so this is two lights in the same group let's remove that and let's try to get this Sphere for example to get a light from the other light but not the not the first one so this one doesn't have default light groups it also doesn't have any light groups attached to it this light is basically lost to time nothing gets affected by it at all but we can just change this to sphere or not change but we'll create a light group name it sphere so now we have two different groups monkey and sphere each assigned to each individual light we can go here and we can now add sphere from the linked list we can turn this off too but this is already there this is already off of the default group so that's fine but now as you can see I can change the sphere lighting and the monkey lighting independently from each other so that's a huge help because if you ever want to have characters and environments shaded differently you can do it now you can also shade the face differently than the body you can shade the hair differently from the eyes all these things have extra control which allow NPR to really shine which is basically stuff that isn't physically accurate but allows us to have more control over the output but yeah this is a really cool feature but we have a couple more things to show so I'm going to add this back to the default group here but what I'm going to do is I'm going to remove the shaders from the default groups which allows us to keep the Shadows on for the for the ground plane but uh Now it only gets affected by these lights here so that's pretty cool now for the Shadows let's talk about that real quick because the Shadows are pretty important as well I'll create a new material here and you can actually add the these light groups back in so the monkey in the sphere I'm actually going to turn off the use default so I can show you how this is isolated but because we have both of the lights in individual light groups within their Light Group sets for this material it sort of acts the same way but either way I can actually press this icon here to turn off the Shadows per light group so I can ignore the Shadows without turning off the Shadows from the light itself this is incredibly powerful because you can mix and match which things get shadows and which things don't this is kind of enhanced by the Shader info node which does kind of similar stuff so you can kind of mix and match those features as well to get the most control out of your scene so that's incredibly powerful and we also have the um just the just the default uh group ignore shadows as well so you can ignore the default Shadows but yeah that's light groups I think that's pretty much all you need to know but I'll give you a quick rundown on how to remove light groups just to say that you can unlink light groups here with the unlink Light Group button that will remove it but it'll still be on the uh the Shader for example if you unlink it from everything the the Light Group disappears essentially because it no longer has a record of that existence so that's just something to know I'll just undo that real quick but the the thing about that also that you need to know is if you do happen to have you know the monkey or whatever linked into the light group and you're like I want to get rid of this and you press the minus button instead of the unlink button the minus button will delete it from the entire scene so it'll delete it not just from here but also from the monkey as you can see so the monkey doesn't have it either and if you try to add it back in it won't be there so that's sort of like a shortcut to delete it from everything which can be good and bad it's a very useful shortcut to have but you may not want uh to delete it from everything so just be careful of that in the meantime though um the linking and unlinking will work just fine and uh yeah this refresh button is just there in case it doesn't work uh you can resync it you can update it but we've never had to use this button it's just there just in case so hopefully you enjoy that um feature but uh yeah that's light groups and that concludes the getting started guide I really hope you guys enjoy this blender build it's something that we've put a lot of work into we've been to developing it for the past like two years or so if not more and we've been using it in production so it's production ready which is exciting um so I hope you guys really enjoy it and if you have any questions feel free to reach out to us on Discord um the patreon uh gives you access to the pre-compiled download as well as access to the Discord and all the support really helps us continue to develop and maintain this build for you guys but yeah that's it for the getting started guide I mean we actually have uh so many more features that we want to add so many things that we can apply these features to which I'll go over in more tutorials in the future because this only scratches the surface of what's possible but I hope you guys subscribe for more videos and I'll see you guys in the next animation thanks for supporting Dylan Goose Studios hope you guys enjoy the build
Info
Channel: Professor Goo
Views: 122,480
Rating: undefined out of 5
Keywords: gooblender, goo, blender, dillongoo, dillon goo, dillon, dillongoo studios, goo studios, custom blender, blender build, goo engine, npr, anime, 3d, cg
Id: PBdvcP8WhX8
Channel Id: undefined
Length: 29min 25sec (1765 seconds)
Published: Fri Nov 04 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.