GS Toolbox v1.1 Major Update - Full Tutorial - Maya Plug-in - Interactive Creasing, Arrays, and more

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello everyone my name is george zlatkowski and today we are looking at a new update for my plugin for maya js toolbox [Music] so [Music] this will not only be an update video this will also be a full tutorial video because i haven't recorded one yet so yeah we will look at all the features and new ones and old ones as well so if you are only interested in the new features you can find them in the description uh with the timestamps that marked new so you will see that in the apprentices new and you just you can just click through them and listen only to the new features but if you want to see the full tutorial just proceed with the tutorial so thank you for watching so starting up right away from the installation or update if you wish to update so you will get this folder over here uh what you need to do is to unpack it somewhere like that and go inside and open this readme file over here when you open this readme file you'll see that there are instructions but we will cover them all what you need to do now is to go to your documents folder for example my one is users username onedrive documents but yours might be like just a documents folder and that's it now the most important thing you need to go to maya and then the version of maya in my case it's 2019 but yours might vary and now two scripts so when you find your scripts folder just open it and go back to your folder with the unpacked folder of toolbox just copy the entire folder you see there are a bunch of files here you want to copy this folder entirely and paste it into version of maya scripts like that and that's it you just open this folder open this readme again if you closed it and just copy this command over here now what you need to do is to place it in your python field over here you just need to switch it from mail to python you need to paste it and click enter and that's it you have installed the plugin ignore this small visual glitch you just switch tabs and that's it and also you will not have those empties over here because that's from my other plugin so now you just need to open the plugin with this first button over here and here you go you have this nice looking menu that you can dock everywhere you want like that you can resize it of course and everything should work just fine the other two buttons is reset to factory defaults this third button is just closes the menu and ensures that there is nothing running on the background from this menu so if something goes wrong just click on this button and open this menu again so in this new version we have a fully rewritten ui over here as you can see it's now it looks almost the same but it acts a little bit differently if you resize the menu you'll see that first of all all buttons are stretching properly not like the previous version and also if you have more real estate over here it will just expand the text and maybe it will be helpful for you if you don't really understand the function you'll just expand the text and you'll see that this is bullying intersection for example this is boolean difference and so on so you can just expand it and also um if you for example dock it somewhere over here really come on uh under the outliner over here you will be able to actually scale this properly to this size and we have outliner on the top so this is very useful so let's go straight to the tutorial so this menu is divided into a bunch of sections over here so the selection over here and selection sets uh the creasing and beveling section mirroring and arrays over here instancing uh store edits and delete node and this stuff is basically a utility and uh it goes down to combine separate duplicate extract this is all the utility functions booleans over here and also live plane this is basically um construction plane with live mode enabled and it also has a bunch of other things that we'll discuss and also the last section over here is your materials the quick materials slots over here where you can store presets you can open your normal materials here and also you can create mat cap materials here as well so right after the initial installation you can also find all of the hotkeys over here in the windows settings and hotkey editor you just open it up custom scripts over here gs gs toolbox over here and as you can see almost all of the functions that we have on this plugin we can also hotkey them so mirroring everything array and instancing everything that you want there's a bunch of hotkeys over there so what we also have with this update is brand new online documentation that you can find in the description or what you can do you can open open it through the menu you just go to help open online documentation and it will open this documentation and here you can read and see as you can see this most of it is animated you can see all of the functions that this menu has and you can always return here and look at stuff manually all right so let's go from the most interesting part first creasing and selection so first of all let's go with the interactive selection so i have this model over here and as you can see the geometry is already a little bit dense and if i want to select for example some of the edges actually quite uh take quite a while for me to select all of the edges for example to bevel something right or just select and like do other thing things like harden normals or something like that so instead of manual selection what i can do i can dial this angle over here for example 450 and click select edges and it will select all of the edges based on the angle between the faces now this is all great but if you don't know the exact number over here it can be quite hard to select only the edges that you want so what we have here is interactive edge selection you just click on this angle button over here as you can see all of the edges that will be selected are now highlighted just like that and you can actually drag this button over here and interactively change the selection well it's not really a selection right now it's just a highlight but if you as you can see this button is now highlighted if you now select this button it will finish the selection and you will have your edges selected and you now can do any functions that you want on those edges so that's selection now let's go to creasing so now that we talked about the selection of edges let's talk about creasing because this those workflows are connected so what creasing does it basically applies a parameter to the edge or sometimes vertex and it ensures that this edge will not be smoothed until some fixed level of subdivisions for example if you apply crease level of 3 that means that up to the third subdivision level this edge will not be smooth but as soon as you go to subdivision level 4 this edge will start to smooth and this is very useful because you can apply a bunch of subdivisions with the sharp edge and after that smooth this edge a little bit and it will give you this natural look to it not very sharp and not very smooth so let's see we have crease and uncrease buttons over here those are selection based so you need to select edges or faces and apply this crease what this button will do it will look on the crease level over here and apply this crease level to your selection so for example i want to apply crease level of 3 to this edge over here i will just select this edge and click crease and as you can see this edge is now creased to the level of three now for example i want to apply crease to face selection right so i will just select those faces and i will click this crease and as you can see the perimeter of this those faces is now released now you might notice there is a small triangle over here or arrow it shows that this button has a shift modifier so if you for example select those edges and hold shift button and click on this crease you'll see that all of the edges are now creased so those are just like two modes of this creasing button on crease is the same thing it just removes the creases it also has modifiers so you can remove the creases from the perimeter or you can remove the crease from all of the edges in the selection same thing goes for edge selection so it will just remove the creasing over here from this edge so that's great this is a manual creasing and it's very useful because you will have to do some manual creasing but let's talk about automatic creasing now as you saw before we can select edges by angle but we can also crease those edges by angle for example for this model it's perfect because it has a very nicely defined sharp corners over here and you can just select this angle tolerance over here dial it as you want so for example i want this i want this edge to be selected as well as you can see whoops like that this edge should be selected because if i go too far it will deselect it and now what i need to do is just press the squeeze plus button and that's it it will apply creases to your edges based on this angle and now if you subdivide this thing you will notice that you have almost perfect subdivisions well there are some pinching over here that's because this edge is trying to smooth itself and over here edges are sharp so this is just a topology issue as you can see all of the edges are now creased now if you want for example to increase some of the edges for example here right this edge you just go select this edge uncrease and now if you subdivide it you will see that it has a nice smooth pull off over here now oncrease plus button will simply remove all of the pieces from the model just click on this and your creases are now gone this model will be smoothed fully with out any reasons so great chris is very powerful thing it's not a complete replacement for control loops or maybe bevels but in my opinion uh if you can use creases you need to use creases because they will not modify your topology they will allow you to continue modeling that will always ensure that you can go back so here's another example of model that will benefit from creasing workflow over here so you just need to select the angle over here find the appropriate angle i think it's already there let's just go a little bit lower we can no we cannot as you can see i want to capture this edge as well but the angle is too small over here so let's just reset and then manually go over here and crease this edge as well if you want that if you don't want that you just increase it and that's it as you can see very easy and very fast by the way i forgot to add that crease plus will also apply subdivisions to your model based on this slider over here so it will do a lot of things automatically now let's talk about bevel plus this is a very similar function because it will only apply bevels to the edges that matches this angle tolerance so it's a bit destructive because levels are will add geometry to your mesh but it can allow you for a low lower subdivision levels so for example if i have the same angle over here and i will just click on bevel you will see that all of the edges that matches the angle tolerance over here will now be creased and i can just increase this bevel a little bit just to have it a little bit rounder like that and as you can see it gives you a bit cleaner result maybe a bit sharper result over here i think it looks nice now going going back to those sliders as you can see we can also activate sub d slider and crease slider those sliders why do we need to activate them we will apply this crease plus over here as you can see not all of the edges that i want are now creased but maybe i just want a little bit of creasing over here right on this edge and a little bit more over here so what i can do i can select this edge geometry is now in the subdivision preview i can select crease and now as you can see it's still on the number three if i select other edge it will go to zero because we have zero creasing on this edge let's select this edge and start dragging the slider and as you can see as i drag this slider it will start to smooth this edge a little bit so i want for example one and a half right like that and let's see how it looks and maybe same thing from for this this looks much better and for example i want to increase or add a little bit of creasing over here for example two yeah for example like that as you can see it's still editable it's still just your regular geometry over here you can do whatever you want with it and we can also just remove those creases and begin to model this thing again now the sub d slider will just change the subdivision level of this preview for example let's just go to crease and let's change the subdivision interactively as you can see i'm removing subdivisions from the from the mesh or i'm adding subdivisions and this sub d level button with the number will simply show you the amount of subdivisions you have on your mesh and you can also click on this button to manually add subdivisions in the non-interactive mode for example so let's say for example i have a model with creased edges but i want to convert them to bevels now it has some limitations but you can convert pieces to bevels in one click just hold right click on the screes plus button you will enter a marking menu and you will see that we have a function called convert creases to bevels and just click on it and what you will notice is that all of those creases are now just like that now the limitation is it will not look at the level of creasing on your edge and apply different bevels it will not do that it will apply one bevel with one amount of segments to all of the edges so that's a limitation and it's limitation of maya unfortunately because the bevel node cannot have different selections for example only one option for a bevel so now you can convert creases to bevels now you might have noticed that there are other options here crease sets from mesh and back reset to mesh and also subdivision and crease presets over here let's just delete this i will talk about this button later let's just delete the bevels delete the creases and for example apply creases again and now i want to select those creases if i apply manual creasings like that and then try to select based on the angle of course it will not select those edges because they do not match this angle tolerance what i can do i can convert those creases to a set so create crease sets from mesh and you'll see that we have cylinder 87 press set one and those edges are automatically selected now if you have different crease levels on your edges you will have one preset for each grease level you have on your mesh so right now i have only one crease level and i have one crease set to delete this set just bake it back to mesh like that as you can see the set is now gone and you still have your creases on your mesh so now let's talk about mirroring that's a very important function in any 3d package and in maya unfortunately for the mirroring you need to go quite a few menus to actually find this and also you need to open options start clicking on a bunch of menus and try to remember what you selected and everything else that's that's great if you want to do to do something very specific but when you actually need to do something simple and fast you have these mirror options over here they are very intuitive very fast and they also support multiple multiple objects selected so let's see first of all i have this shape over here and for example i want to quickly mirror it to the other axis over here it's in the middle of the world so what you can do is just simply select this object and mirror it on the minus x and that's it here you go very fast one button normal world merge and cut geometry option and one button click over here now next thing that's just normal mirror for example i want to flip this thing to the other side i can just select flip minus x and now this thing is flipped to the other side very fast if i click this again it will go back now instancing now instance with mirror is very important in maya because we do not have a procedural mirror here so we can use instances as procedural mirror modifier i just select instance minus x and now this object has an instance over here and if i modify this object somehow for example i will extrude this face you will see that this object is now also modified so this is very useful and you can always delete this instance and just reapply it if you want now back to the other options we have world object and bounding box what that basically means is that command that you want to apply here normal flip or instance will look at the world coordinates object coordinates or bounding box of the objects that you try to mirror for example let's see right now in the world coordinates this object will be mirrored based on this axis over here on this plane world plane but if i for example want to mirror this object on the local axis right so i just want this thing on this side over here i can select object and now it will not look on the world coordinates it will only look at the pivot as you can see we have a blue arrow over here that means that it's a z-axis and as you can see it uh shows that it's z plus axis because we can see this arrow and this will be z minus and i can just click on z plus and as you can see now it will mirror this object perfectly to this other side the only thing to remember is that you need to have your pivot set up correctly because if it will be in some weird location like that if you try to do this you'll see that we have some other effects maybe you want to do that maybe you don't want to do that you need to know that you need to have your pivot set up now bounded box is much easier to remember because it will actually draw a box around your object over here and mirror based on that box so let's just demonstrate it for example if i try to do x this way or minus x you will see that it actually found a boundaries of this object and basically mirrored on that side over here so the other options here are merge bridge and nothing so they only affect the normal mirror that you uh have over here and merge will basically merge vertices on the mirror axis when you actually cut it for example if it's not perfectly in the center it will cut this geometry mirror it and also merge try to merge the vertices on this plane over here if you select bridge let's switch to this one it will try to close the border around the object open border with a bridge function for example if i try to mirror this to minus x like that you will see that we'll have a bridge between them so this can be very useful as well and nothing will basically do nothing it will just mirror it and that's it it will not try to merge it it will not try to bridge it just this now let's talk about this merge because it has a bunch of options inside so for example this detail over here for example if you uh bridge it like that you'll see that mirror i mean uh it will see that it mirrored just fine but sometimes if this thing is perfectly on the axis like that on the plane over here sometimes you'll get some straight stray vertices over here so they will not be merged so what you can do is to either select this auto option it by default it's disabled or change this merge threshold as you can see you can type a number or even change it manually for example if i go like this it will look at the vertices in the bigger radius around it and try to merge them to merge them together so if you have any issues with the vertices over here just try auto or change merge threshold now the other options for the mirror function is cut geometry or delete geometry now cut geometry as you saw before if i for example have this object like that and if i for example extend this edge a little bit over the axis if i disable cut geometry it will not cut this geometry it will simply mirror and flip flip this geometry to the other side without any other options as you can see now we have this weird result maybe you you wish to have it like that but most of the time i just use this card geometry because it will simply cut based on this mirror plane and as you can see now it's perfectly fine now the delete geometry you already saw how i use it you can delete one side of the geometry and it has also world object and bounding box options so you can just select world delete geometry and delete one half of the geometry based on that mirror plane all right so let's talk about instancing really quickly uh instancing is very important part of maya as we already discussed in the mirror but in uh this menu you can really quickly insta create a bunch of instance objects on the axis that you want and also with the options that you want for example i have this object over here and i want to create a bunch of instances to maybe place them around the scene so for example i want four instances and i can type four instances and click on the instance button and what it will do it will create four instances of this object that are of course editable and fully functional so you can do something like this and the edits will propagate to other objects as well so that's very useful you can select the number of instances you can select the axis if you right hold right click on the button and also you can instead of instancing for example you can copy the object or you can copy it with the history it will basically just copy this object with this construction history so you can edit this history later and also you can select no offset this will create instances in the same place as the original object offset will offset the metal a little bit based on the bounding box as you saw before and offset plus gap will add a small gap between the objects so they are for example easier to select also we have randomized transforms we will talk about this a little bit later in the context of snap to pulley so before i told you that we do not have a proper mirror modifier in my procedural mirror modifier but with this plugin you can sort of mimic this modifier and if you use instance plus for example this is a special type of instance you can mimic this mirror modifier thing and also a bunch of other things for example so let's try this instance plus so we select the object we apply instance plus and as you can see this button will now change you can now apply this instance plus and you have a selector over here mesh and instance so when you select mesh all of the options that you select in this menu all of the functions will be applied to the mesh directly but if you select instance the highlighted functions will be applied to instance plus so for example let's try the mirror modifier i select the instance plus over here and i mirror to minus x as you can see basically nothing changed on this object but now if i try to edit this object like that you'll see that we have a procedural mirror it's uh similar to instance to normal instance but the difference is it's basically connected object as you can see you can rotate it you can scale it you can do whatever you want with it and it's still instanced like that and also it supports booleans the booleans from this menu over here we'll talk about this later but uh this is an instance plus you can also apply solidify modifier and you can delete mirror modifier using delete node so for example in this using this plane we can create instant splice like that we can apply solidify modifier because we have instance selected here it's now applied solidify let's just change it to for example thickness a little bit of thickness and now you will see that this object is now fully procedural if i select this edge it's still just a plane and then extrude it you will see that this extrusion is now procedural and it's actually applied to the instance plus just like that and you it will maintain this solidify modifier modifier so you can change this object if you want and it will still work just fine so this one of the uses for instance plus so now let's talk about store edits and delete node those buttons over here the way maya stores the edits in the mesh is by construction history but the thing is not every edit that you make to your mesh is actually stored in the node sometimes this edit is stored in the mesh itself for example vertex edits if you move edge face or vertex those areas will not be stored in separate node it will be stored in the mesh itself and this can be very hard to for procedural workflows because we don't have node over here so what you can do you can select this object over here you can store edits you can now apply some edit just move the geometry like that you can now store this edit again as you can see we have tweak and sometimes poly tweak but now we have those edits stored in the node and that means that we can use our second function delete node so sometimes you can notice that when you select an object you will see that store edits for some reason is highlighted that only means that this object has no edits initialized and this can break this delete node function so what you need to do you just select this object you see this white outline over here you just click on the store edits and that's it you don't need to do anything else so as you saw i've applied some edits over here and now i want to delete them i want to revert those edits now if you don't have a node over here you cannot revert this but now we have node and we can just click delete node just like that it will delete one edit that we had before and delete node again it will delete another edit and now if i continue to click on delete node delete delete delete delete delete as you can see i'm clicking and clicking i am i'm going back to the way our mesh was before our edits and you can just simply continue edit it like normal so as you can see we forgot to add another delete another extrude like that now you can edit this mesh again and then if you don't like it delete delete delete delete delete sometimes you need to click this delete node two times because uh there are hidden nodes that are applied over here for example extrusion with your gizmo with the shift button will apply to nodes transfer geometry and extrude edge extrude edge modifier so you need to delete both of them delete delete delete delete as you can see so that's very useful now if you want to to select some kind of node and delete it manually you can also select it shift delete node and it will delete this node but i do not recommend that because it will sometimes break your geometry if you delete those nodes nodes out of order so since we're talking about procedural workflows let's talk about snapshots so for example i have this object over here and like i like the overall shape for example but i want to continue editing this object let's harden edges i want to continue editing this object and leave this state behind so what you can do is to simply duplicate it and hide it somewhere and something like that but uh we have a better solution just save a snapshot by clicking this snapshot button and continue your editing so for example i want to add this detail right i want to bevel it somehow and stuff like that and now i don't like this edit for example and for some reason i've deleted i have the little the construction history so i cannot use delete node anymore because the delete node will only delete construction history what i can do i can go to my outliner find this the name of this object over here p cube1 and you will see that we have p cube1 underscore sn snapshot and you will see that we have this object over here this snapshot object now when you move your original mesh over here on the in the viewport this snapshot will actually move and scale with the original object so it will remain the same scale and the same position as you have this object for example if you position it somewhere in your uh on your obj on your mesh over here this snapshot will also be positioned in this place and for example i want this snapshot as you can see it's here i want this snapshot extracted now i just click on extract snapshot what it will do it will duplicate the snapshot and now i have this original object and also my edited object without construction history if you want to store another snapshot just select this object click another snapshot and as you can see you will have another snapshot stored here you can apply other edits like that and now just select the snapshot extract and you will have the original object still here you can also delete the construction history right after you create a snapshot just hold shift and click on the snapshot button over here as you can see your construction history is now gone but you have the original object here with the construction history so it will store it there and it will hide it it will not be calculated by maya and it will simply be hidden so now let's talk about some utility functions those those are very useful and i use them all the time because some of them are non-existent in maya and some of them are not very useful and i don't like how they work so i've created this utility section over here snap to poly solidify we already talked about it straighten interpolate smooth feel this is a new one and smooth as well combine separate duplicate and extract let's talk about those let's start with fill because it's the most interesting one so we have a bunch of objects here and you will see how this feel function works so for example let's start with the most simple cylinder right we have this absolutely simple cylinder and we want to have a cap right but not the regular cap that we are used to i like this pole cap over here but we want to have actually quads here and equally spaced quotes if that's possible so what we can do we can select this object we can select one vertex on this open edge and click fill so what this will do it will fill this hole with quads and it will also try to space them well somewhat equally like that and based on your selection so for example i selected this vertex over here but now if i select this vertex and click fill you will see that this thing rotates a little bit and this is actually one of the corners so you select one of the corner corners of this fill as you can see now it's rotated over here so we can control where you place this fill connection so that's great you can now cap cylinders with no problem now let's talk about just a regular cube right so we have this hole over here and we want to fill it with quotes in in order to fill it with quads you just select if you just select one vertex it will not work as you might think actually it works perfectly but i know why because it has equal amount of rows and columns over here so it's just pure luck but in this instance over here as you can see not only this thing is curved it also has one two three four columns and a bunch of rows over here so if you just select one vertex click fill well let's just say it does work but it not as you might want it to so what you can do you can select two vertices instead and what those two vertices will tell this algorithm where it should place the corners of this patch of the squad patch so for example i want a corner here and i want a corner over here right i select those vertices and fill and as you can see it's now filled this thing perfectly so we can same thing you can do over here if you have an uneven amount of rows and columns and for example you can also do this with cylinder you can select two corners and what it will do it will position this thing based on those two corners you can also select them closer together and this will actually make slightly different feel as you can see just like that now that's all great but can it feel this complex shape over here as you can see it's not only curved like that it also has uneven number of rows and columns and this the spacing on them is also uneven well let's see we select two corners that you want this thing to fill and as you can see it's now filled perfectly okay so next example this cylinder over here as you can see i've cut it this way and interestingly enough if you select different vertices you'll get a different result in this this shape over here so for example i want to select those two vertices over here and i click fill as you can see it will try to complete this cylinder just like that but for example if i select those two vertices and click fill you'll see that it will try to fill the shape but in a slightly different way just like that and if i select those two as you can see it's a little bit different result but this can be useful when you try to add some details to the cylinder cylindrical part and you don't want to breach everything manually so you just need to know how this function fills the gaps like that and also since this this function is quite heavy on the processing if you apply this function it will actually delete your construction history so just be aware of that this function is not procedural you can undo it of course just like everything but you cannot delete it like a node it's not a node it's just a function so let's look at some other examples for example let's just click this one vertex and fill as you can see perfect fill and if i select two vertices like that it just rotates the whole shape because there's not a lot of variance it has over here to actually fill this and the most complex example here is this sphere not only it has different number of rows and columns it also has this curvature so let's try to fill it and as you can see it fills the sphere without any problems however i will warn you it will not be perfect as you can see if i look at the top of the sphere as you can see this there's a little bit of deformation here because it smoothes those vertices a little bit and just so you know it's not like a panacea for everything it's just like useful function and for example if i select different combination of vertices you'll see that i will have a little bit different result over here and i will select this like that and as you can see it fills it like this as if like a small cylinder over here and if i select a little bit different as you can see it does the same thing but it changes the amount of edges it adds in the middle so just experiment this function is very very powerful it's uh for example this detail over here look at this i'll just select this and fill just like that and this fill just like that no problem at all so just experiment with it it's very fast it's it's not a procedural unfortunately but it's very useful so now straightened interpolate and smooth so the smooth is the new one but straighten and interpolated uh interplayed edge was improved as well so let's talk about straighten first it's very simple but it's very powerful as well so we have this rounded part over here and we want for example to straighten it right so we will select those edges just like that and we will click on straightened on straighten as you can see it actually projects the vertices on those curved parts to a straight line between two vertices the first one and the last one of the selection and it also supports multiple edge groups selected so edge group is basically a non not connected edge selection so that's great now if we want those vertices to be equally spaced we can hold shift straighten and as you can see it will now move those vertices and space them equally on those edges like that so that's very useful for example if you want to straighten this thing right you just click straighten and straighten straighten i'm just pressing g to repeat my last command now interpolate interplayed is very interesting function it will actually smoothly interpolate between three points the first vertex the middle vertex of the selection and the last vertex so how it works let's see so let's let's for example do something like this right so this is a weird shape over here but now i want this thing to be smooth let's select this edge over here this edge over here and select those edges and click interpolate and now you'll see that it tries to smooth this shape a little bit it will not like equally space those edges like this straighten is and it doesn't have this option but it will try to put them so it will keep the curvature as much as possible so just like that and some other examples is for example this edge i want to interpolate as you can see it kind of smoothes them a little bit just like that so this can be can be very useful if you wish to have this effect now smooth is a little bit different uh it has this smoothing power over here which is basically a multiplier and you can select edge groups as you select them before and click on this the smooth function and based on that multiplier the amount of smoothing will be different so if i for example select 99 this is a maximum it will smooth it almost to the straight line and if i continue this to doing this it will just go to straight line but you can but you can go with a very small increments like that for example even one just like that so straighten also has a marking menu inside of it if you just hold right click you'll see that we have local x y and z and world y x and that over here for example if you want to do something like you all know how to straighten the edge on the axis like that yes with the scale gizmo but what you can do is to simply select edges like that and for example world x right straighten world x and it will try to straighten all of those edges to the x plane so it will just snap it to the flat plane of the x-coordinate and so so everything else just uh does the same thing but in the world axis or local axis and three different accesses over here so let's talk about combine separate duplicate and extract those are very useful functions they will mirror the maya owns combine separate duplicate and extract but they will be more uh clean in the outliner it will not create additional like groups and nodes in the outliner it will just give you the object for example let's try to use combine from maya combine as you can see it will give you the object but the problem is it also gives you those unnecessary groups and now you just need to delete the construction history and those groups will be removed but what you can do is just to select all all of the objects that you need to combine and just click combine and it will just combine them cleanly and also it will have construction history so if you have some construction history before that it will not delete it like the previous function and also no junk in the outliner same goes for separate over here if you click click my separate over here you'll notice that first of all it creates a folder or group and also it renames all of the objects with bullet surface and also you need to unpair in them delete construction history and so on and so forth you don't need to do that just undo undo undo undo command and you just select the object separate and you will have first of all all of your objects secondly you still have your construction history if you need that you can of course delete it and thirdly it will not rename those objects it will rename them based on the original object as you can see i have p cube and for example if my object i will name it my object right and i will select or everything else i will combine them as you can see my object it's still my object and if i uh then separate it you'll see this will be my object my object one two three and four so very clean and um outliner friendly let's just say now about duplicate and extract they are absolutely the same as the maya ones but as i already said it will not create an unnecessary groups in the outliner so if you for example want to extract or duplicate this face selection over here you go to maya and duplicate faces you duplicate those faces and as you can see now you have your object renamed you have this unnecessary group and so on and so forth and if you even and parent it and delete the history you will still have this those objects renamed and that's really annoying so instead you can just click on duplicate and of course it will duplicate this edge this object over here and it will not rename your objects over here and as you can see the original object is still intact it has its own history still there and it will not rename this object same goes for extract it will just extract this face without any unnecessary groups so now the last utility function that we are going to talk about is snap to pulley that is basically snap to polygon and this will snap any object that you select to a new polygon and of course it will orient it as well so we have in maya over here a snap together tool that you can use to to snap some geometry to faces of the object but the issue with it is first of all it's slow is you need to select the face on the original object on the new object and it's just really slow so instead we have this snap to pulley that is uh easy to use and for example let's look at this detailing over here we have some kind of like power cells or whatever inside of this gun over here and as you can see they're equally spaced and they are over here added to this compartment over here right so let's just delete them real quickly and you might notice that i actually have a face over here with equally spaced polygons like that and i will i'm going to use this face to snap this object over here six times so what you can do is you you can instance this thing five times or even maybe six like that and select those faces just like that select those objects and click snap to poly and that's it you'll see that it now um this this those power cells are now inside of this object it they are snapped and they are instanced as you can see but you can also do this much quicker without instancing manually you can just select this those faces right like that select the object you want and instead of simple snap just hold right click on snap to pulley you go to instance and snap just like that and now you if you click snap to poly you will see that first of all it instanced based on the amount of faces that you selected and also it snapped all of those instanced objects to the polygon over there now you can just delete this construction thing like that and they are in place very easy very useful and also you have pre duplication it means that it will basically duplicate one object and leave it behind just as you can see over here it left one object behind so you can edit it and if you edit this object over here the all of the instanced copies over here will also be edited if you disable this preduplication it will basically instance and snap everything to this face to those faces and leave nothing behind so the last thing with snap to poly is randomization so for example if you add this detail over here to those polygons just like that you'll notice that first of all of course they are instances so if you edit this original mesh they will be edited as well but they are placed very uniformly just like that and sometimes you don't want that so while they are selected you can go to instance randomize transforms and you will have as this small window with some randomization parameters for example if you want to randomize rotations of those objects you can enable rotation randomization select an axis and drag the slider so for example i want to randomize y-axis and as you can see if i drag this slider those objects will be randomized and if i re release this slider will they will just go back so this is just a preview of the randomization that you will have on this slider so for example i want this amount of randomization and i will click randomize and this will apply at the randomization the same thing goes with translation and scale for example i want to scale uniformly like that and as you can see if i start dragging this slider it will basically randomize the scale of this those instances same goes with translation so i can just randomize their translation a little bit and if you have everything selected and you click randomize it will basically stack those randomizations together so now finally let's talk about the arrays so we have new arrays in this update we have linear and radial and if we click on this linear button over here you'll see that we have uniform and we have deformed option for the linear and the same for radial also a bunch of other options over here so let's explore first of all let's go with the simplest linear uniform i want to duplicate this object over here this detail and i want to duplicate it a bunch of times procedurally of course so let's see i have this axis set to that so what i need to do is click on minus that and as you can see now i have this procedural object over here that i can change the number of if i select the object of course number of copies just like that very simply and also i can stretch it i can also rotate it but you will notice that it actually when rotates the original object is not rotated that is purely intentional you just need to enable this rotation and now if you rotate the the control curve over here you will also rotate the object so just like that now let's disable this rotation once more because we want this uniform uniformly and let's stretch it how we want it just like that and for example add a bunch of copies just like that here we go now the cool thing about this array is that for example i have this other side and i want this detail over here as well i can just select it and instance it go to mirror instance and minus x just like that and if i instance it here as you can see and then edit it in this linear array over here you will notice that everything else here is editable as well there are some issues with the material this is not a problem you just need to apply the material again just go to existing material and or just click on this and it will fix itself it's just small glitch but anyways it's is now editable you also have a bunch of options over here so so since my camera was covering the channel box i've moved it here and the options you have is show original what it means that will it will reveal the original object that you can still edit as you can see and if you rotate it it will rotate the array as well it will let's just hide it calculate rotation we already saw we can enable it here rotation and original you just need to select the object over here rotation and or original as you can see you can change it here and you can also change the number of copies you can stretch along a curve so you can squish it a little bit and you can stretch it along this curve offset you can offset a little bit if you want and also you have some other options that we'll discuss later so offset let's just upset it a little bit just like that and here we go so this curve actually you can control this curve you can control the array with this curve and you can not only just move it and rotate it you can also take this curve and actually move it a little bit and you will see that those objects will follow this curve and now you have a different uh setup for your array you can also enable the rotation and it will move it will follow this curve just like that now to apply this array for example i want this array to be a normal mesh what i can do let me just let me just position it in the correct spot i can just select this and click apply and that's it now this is just a regular mesh that you can use and edit whenever you want as you can see just normal mesh now let's go to deformed linear array as you can see we have those pipes over here or cable so whatever that is and actually those are procedural objects you can change the number of copies just like that and you can also for example select one of those and if we go to the to the curve editing you can actually move them and edit them just like that and they are fully procedural so you can do whatever you want with them they also have a bunch of options we will discuss them a little bit later but in a nutshell what those are are those simple shapes over here let's just copy one and what we can do with this shape we can apply a deformed array for them and for example if i do x as you can see it it's doing something on the background and now you have this procedural object and what this procedural object will do it will simply follow the curve with the amount of copies that you select and the options that you select on on it so for example we have this shape over here we can move it and change it however we want but now we can uh increase the amount of the number of copies as you can see it will now increase the copies to six or seven for example you can offset along it along the curve for example if you have only three copies you can offset it to the middle of the curve for example you can stretch it so it will fill the entirety of the curve it's what i did over here you can stretch it just like that and now if you select the curve and move it it will not move over here just like that and if you enable increase the number of copies of course it will do the same thing it will not move those ends over here so orientation uh is will simply rotate this shape around the curve so we can have some kind of details and you can rotate them around the length will change the length of this if the stretch is disabled of course so stretch is disabled and length can now be changed uh just like that so it will basically compress the entire shape along the curve and with we'll just increase the overall width of this thing just like that merge words will ensure uh will ensure that every word that is on the border because remember that's just a copied instances of this thing so it will ensure that those words are completely merged and merged distance will just tell it at the merge distance and that's the deformed array so that's great let's just go to radial arrays so radial arrays are very simple uniform can be used for detailing and deformed can be used as a replacement of radial mirror so for example let's go with uniform we have a simple cube over here and let's just apply uniform radial array and as you can see now we have this cube basically copied and distributed like that and if i change this cube a little bit it will still be [Music] over here and i also can change the amount of copies i have over here and also other options that you can explore or read in the documentation now about the deformed array this is a very interesting thing it will basically replace try to replace lack of radial mirroring in maya for example let's go to deformed and let's go to x and y as you can see it constructs this object over here that you can move rotate or scale and this object is procedural if you edit this cube for example like that you can see that now this object is edited as well if you for example want to add some details over here for example uh offset and thickness as you can see now we have this detail over here and we can also delete this face you'll see that it will update the radial array over here and you can change the number of copies as well now let's see the options curvature will change the curvature or oops uh the curvature of this thing as you can see so we can change the curvature of this the default is 180 low bound will basically unwind this this thing just like that and high bound will do the opposite on the other side just like that and you can do both of them radius will change the radius of this thing as you can see you can change even flip this thing but the normals will be flipped as well and merge will ensure that all of those pieces are merged together and also as i already said you can just scale it or position it wherever you want so another very interesting function of linear array is multi-array so what you can do you can select a bunch of objects like those and create an array from them something like this so now you'll see that all of those objects are in an array and they are connected basically to curve controller over here so what you can do is now you can move this controller and do whatever you want with it and all of those objects will follow this one curve now more than that you can also add and remove objects from this array for example i want to remove the cylinder from this array what i need to do is to select the cylinder and click this minus button over here and that's it as you can see the cylinder will be removed and array will rearranged as if the cylinder never existed the same thing you can add the cylinder back for example if i select this array i select this cylinder and i click plus and as you can see this cylinder was added to the last slot of this array basically this is a repeating linear array now you can do whatever you want with this array the same thing as you can do with normal uniform array you can change the number of copies but also there are a bunch of new things that you can have here if you look at your channel box over here you'll see that we have multi-array controls and over here we have pattern and randomize pattern and that means that you can actually change this pattern as you can see it's one two three one two three one two three one uh but you can change this to something else for example one two three three then one two three three and as you can see it's now a little bit different you can also randomize this pattern this will basically randomize the objects that are added to this curve now that's all great but can you do this with deformed array yes of course you can do it so let's just check how to do this we have the same number of objects and let's go to deformed and click on x for example right so it will create the array for you and here you go the same thing but with a linear with the deformed array now if you change this array a little bit you will see that those objects are now deforming along with this curve and the same thing goes for plus and minus you can remove and you can also add things to this array now let's talk about some other configurations that you can use with multi-array function for example i want a string and i want uh some other objects on this string for example like beads or something like that or some kind of necklace right so i want a deformed array that will be my string and i want uniform array that will be my parts of my necklace for example right so let's see i want to use this cylinder for my string over here and i will just click on deformed array i will click x to create a line on x-axis just like that and i will make it a little bit bigger and also i will enable stretch along curve so it will be stretched uh on the curve over here now if i want for example to add something to this array i can just click and add like this this will create another deformed let's just demonstrate if i click plus on this cylinder you'll see that it did add this cylinder to this array but we don't want that we want different type of array we want uniform array so what we need to do we need to go back one step we need to select the curve that is inside over here and we also need to select those objects switch to uniform for example and create you can click on any of those axes as long as you have the curve selected it will it will follow the curve let's click on the axis and as you can see now we have something different so first of all let me just change some options so it will be easier to see the smaller amount of copies here and as you can see now we have a complex object with this array so for example if i now want to select the control curve and move this you will notice that the control curve is i mean the the string over here the string curve is deforming but the objects on top of it are not so now this is a complete this is the complex object that you can place anywhere you want and also you can actually edit individual components of this multi array just like that as you can see if i change for example the scale of this it will change this final thing as well so very easy and you also can do the same thing that we i've talked about we you can remove objects from the array just like that you can remove them and as you can see we have on the spheres left i can also add objects back to this array just select them like that and add them back and also as i already told you just select the curve and continue your editing so this will this can be very interesting thing when you actually create some kind of necklaces and stuff for your characters or even some complex pipes or cables now the last thing about the arrays is some form of randomization that you want for example i crea i will create a multi-array we already discussed what it is and i want to randomize those shapes a little bit for example a little bit of rotation a little bit of scale and stuff like that we have array randomization section over here in the channel box if you select the array you can go and increase the randomization magnitude a little bit for example let's go for one and let's start randomizing stuff for example i want to randomize transforms as you can see as as i move the randomization you'll see that objects will randomly move around a little bit based on that magnitude and those numbers over here for example i want also to randomize rotation as you can see i will randomize those rotations a little bit now you don't for example you don't like this randomization you can go to random seed over here it will be a random number each time and you can change it and as you can see it will basically give you a bunch of different randomization states over here same goes with the scale you can randomize scale as you want so now that we've talked about uh utility functions new arrays and stuff like that let's go to materials over here so this those are material slots that you can use to store your materials your custom materials and they work this way for example you see i have four materials and a bunch of empty slots over here if i want to add a material to a slot what i can do i i can hold right click right mouse button over here and select a bunch of options for example i can create my material i can select from scene materials or i can create matcap material so that's cool let's try to create a normal maya material it will open a window and i want blin for example and as you can see i have this here and if i open channel box and click shift click on this node i can change options for the blinn as you can see it's now red now if i want to apply this material to objects i just select the objects and i click and that's it it's now applied great now if i for example really like this material that i've created and i want to save it as a preset i can do that i can just hold right click save preset and let's name it my bling material okay it will now create this material and save it in the folder that i will show a little bit later and now if you want to load this thing in any scene you can just go to manage presets and you will see my blend material over here you import it and here you go now we have two this of the same materials in this scene and you can import it to other scenes as well so let's say you want to update the plugin but you don't want to lose your materials that you've created over here in the custom material slots you can go to documents maya your version of maya scripts toolbox and over here you'll find the folder named presets and you can go over here and you will see that you have uh layers of files over here maya binary file and png file so those are your materials so if you want to save those materials somewhere and just update the plugin and then paste them you can totally do that you just need to save this presets folder somewhere and then delete this toolbox folder and just transfer the preset folder back to your new version of toolbox so that's very easy so another example i have a more complex texture over here if i just apply it you'll see of course my uvs are broken here but let's just look at this object this is a checker material this is just a file that i've added as a texture at the color and let's say i want this preset saved so i will just save it like my uh my checkered material i will save it and let's go to a new scene completely new scene you will see that none of the materials are here and let's just go to this sphere for example and manage presets you will see i have my blend material i'll have my chicken checker material here so i'll just import it it's now imported in in this scene and what i can do is just simply apply it and if we enable the textures you'll see that although it's a custom material with a file you will see that it's actually now in this scene and also i can just take my red bling material over here and click it and that's it as you can see now the other useful thing is matte caps as you can see this material is a little bit different over here it's actually a matte cap material material capture so it will mimic the lighting on the material it will it it basically it's basically a material with baked lighting and it looks something like this let's apply it as you can see it looks something like this and if i for example subdivide this thing let's just subdivide everything that can be subdivided here and as you can see the subdivided mesh over here looks a little bit different with this material caption mad cap material and if we for example select this is a very dense mesh by the way so that's why it like it lacks so much uh and we for example select this material change it to this material you'll see that we now have a different material and a different look now the cool thing about this menu is that you can select global materials what that means is every object that you create or every object that doesn't have assigned material will have this global material assigned to it by default for example right now i have this blin material as a global material and if i select let's just unsub divide this because it's very heavy on my cpu let's just for example create a cylinder and you will notice that if i try to smooth it you will notice that this is indeed the same bleed material that i have this uh here selected as global shader so every slot can be selected as global shader and if i for example change uh global shader to material capture just like that every material that doesn't have material applied will have this mud cap material now same goes for other materials as well now clear slot will only will just clear this slot but it will not actually delete the material so you can always go back to select from scene materials or in your hypershade you will you can see those materials like that uh you can select them from your scene and here you go and same goes with the material capture and put them back over here into this slot so to create matte cap material the only thing that you need to do is to click on this button and it will open a menu where you need to select this image of this material capture material select this option and open your mud cap that's it you can find them in the internet now let's talk about booleans and booleans with instance plus so those are very useful things let's just create a simple cube like this and you all know what villains are but in maya they are a little bit let's just say simplistic and limited so if you just for example try to do something like this you'll notice that now we have this thing cut and we have a new and interesting shape that we can actually modify for example i want to add a bevel over here right and i also want to extrude this part like that and as you can see everything is now editable you can just do this like that and for example i want to add another detail here like that and i also want to add a cylinder here but this cylinder will actually be added to this mesh so i want to do this and now the cylinder is baked into this mesh like that and we will cut for example the cylinder from the top just like that and so on and so forth so booleans are mostly useful for like quick iterations quick concepting and stuff like that they are not really useful when you want some clean geometry because you will still need to fix this geometry as you can see it's not a greatest edge flow and stuff like that it basically non-existent so be aware of that but with this those functions you can quickly iterate through booleans and you can add your shapes really fast so for example i don't like this one right and i don't like this one as well i can just go here and delete delete boolean cutter right and now it's gone so we can also delete those shapes if we don't want them we can also quickly hide them with toggle group we can for example if i hide some of them we can quickly show cutters it will show everything we can quickly select them and we can quickly apply bulletins to this mesh and now it's just normal mesh nothing special just like that so booleans are great um very useful very easy to use also this triangle over here indicates that if you want for example for boole for boolean to be hidden right away after the this command just hold shift and it will just hide the the cutter but it's still there you just show cutters and here it is so the last thing about booleans is boolean attributes so if you select any cutter over here you will notice that you have three new options here three new attributes boolean boolean operation and boolean classification so boolean is simply a toggle that will enable and disable the boolean cutter over here as you can see it's now disabled boolean operation will change the boolean operation that is applied to this cutter intersection for example will change this completely and edge classification boolean classification i mean it's edge and normal and the difference is how it treats one-sided geometry for example if i apply boolean using this plane you'll see that this plane is basically cutting the object completely but if i go here and change classification from edge to normal for example you'll notice that this edge will now simply cut this geometry and it will not uh delete this other half of the geometry basically so that's the difference and those are boolean attributes you can change them anytime you can bypass them very useful now let's talk about booleans in context of instance plus for example if you want to modify this cube somehow and you want this procedural modifier of instance plus with mirror you can do that you just apply this instance plus go to instance minus x for example let's enable this so we can see uh minus y minus z for example and if we now go to this cube and try to for example boolean this you will notice that now this is a procedural mirror and now it will boolean all of the sides just like that you can just use two-sided mirror or four-sided mirror whatever you want so you can just do this for example if you go and do something in the middle it will just be the middle select just like that so let's talk about some symbol functions some additional simple functions that we have over here for example dot selection so if you want to select a pattern of faces but you don't want to click them manually like that what you can do is you can use dot selection for example select two phases like that and click dot select and it will just complete the pattern that you have here what you can also do is to select two faces for example hold shift and click on dot select and it will select the entire face loop over here same goes here and here and so on and so forth so you can select any pattern that you wish with any gap over here so it works just like that no issues so that's great dot select is very simple now constraints transform constraints and selection constraints so transform will enable the transformation constraints for example if you try to move your vertex now it will now slide on those edges just like that and this is controlled by this marking menu constraint to edge constrainted surface so it was available in maya before so you just ctrl shift and slide across the edges just like that but if you want this thing to be enabled all the time just select this transform constraint or you can constrain to surface for example now this vertex will slide on the surface of those faces if you click on this select constraint it will basically constrain the selection based on angle or based on camera and also both over here so let's select by angle and our default angle tolerance is one degree so as you can see it's very easy to select flat surfaces like that with this angle selection and it will be very easy to modify more dense geometry like that you can also increase this angle over here up to 45 or custom or you can select auto camera based selection that means that everything that your camera sees will be selected so for example if i do this it will select all of those words but not the back side so this is just a regular my phone function is just it can be enabled constantly just using this uh one button over here now wireframe toggle and reference toggle is very simple uh concept wireframe will just enable wireframe on the select objects so it it's not global as you can see all of the other objects are just regular geometry with shading but this wire toggle will enable the toggle they enable the wireframe on the selected objects only and reference will disable the selectability of the objects or so for example if you use something like create and image plane free image plane and you use some kind of reference you can just quickly select it and enable reference toggle to disable just find it in the outliner it's highlighted green like that and disable it that's it so now let's talk about the selection sets we have 20 selection sets over here selection groups as they called here and you can actually add objects or components in those groups you just select the components or objects and add to this group you select other you add to this group and select something else you add to this group and now by clicking on those groups you will return back to the selection that you had before and that's very useful you can also select components individual individual components on the objects so for some for example something like that and when you select on this you will go back to this selection just like that uh there are options available you can merge to this group you can clear group and other options as well so for example if i select everything and i say merge to this group what it will do it will find those objects in other groups and it will move them into this first group so they will be deleted from the previous groups and moved to this i can also just add selection to this group so this will not delete those objects from other groups i can remove the selection from this group and as you can see now this is empty i can remove this selection and add something else for example like that i can also toggle the visibility of this group as you can see it toggles the visibility of some of them based on the selection and also visibility of the faces as well and i also toggle can toggle and the reference of those objects and those objects will now not will not be selectable in the outliner just like that and toggle references back and now they are selectable as well so that's selection groups very simple concept very useful when you need to select something else but you want to return back to your previous selection and one of the last functions that we'll cover today is live plane switch to cam and align and also resolution slider over here so this will basically add a live plane with this live modifier edit on the face that you select so this is very useful for example i want to select this face i will create a come on this face please i will create the live play on this face select only one face because as you saw before i've selected multiple and it's just picked one so select this i selected this face i've added this live plane and now as you can see it is aligned to this face now what i can do with this live plane i can change some of the options i can rotate it just like that i can rotate it like that as you can see if you wish to do that i can scale it in one axis it's only uniform i can change the offset so by default uh it has offset over here but you can also change it to zero and it will lie on the face like that i can also move this grid x and y for example oops for example if i want to move it to the right and like that i can also move it like that now what's the use for this plane you might ask well very easy you can now create objects on that live plane and they will be aligned to that plane however there are some limitations let's just disable it for example if my object is rotated like that right and i want to add my live plane over here it will work just fine but as you can see it's a little bit uh skewed i can just rotate it a little bit like that manually but now if i add cube over here like that you'll see that it doesn't align to this object properly but what we can do is to click align and now this cube will be perfectly aligned to this live plane and we can now do whatever we want with it um for example boolean just like that and this is very useful with booleans uh so we can do something like this as you can see on the object like that we can now disable it and here we go so for example if i want to switch to the camera that is aligned to that live plane i can do that i can just i'll just create this live plane like that and switch to camera just like that and now as you can see this camera is aligned to that plane so that's very useful also i can change the resolution of this live plane by simply dragging this slider right here just as you can see you can go as dense as you want or just like that so very useful for booleans for aligning objects so now just a quick overview of the options uh we have a bunch of options here if you click on this uh you can update quick selection groups is if for some reason you've added something to selection groups and it's not highlighted or something else happens just click on this button it will update those groups manually you can also delete everything from the those selection groups i mean not the objects but just the selection groups themselves you can clear selection groups and groups hidden in outliner will simply hide them from the outliner so you won't see them and they will not bother you clear custom materials will just remove materials from those custom slots uh it will not remove the materials themselves etch highlight color will simply change the color of the highlight when you for example have this angle enabled so multi-boolean algorithm merged optimized and advanced uh those are algorithms that you can read in the documentation there are only four for using boolean on multiple objects so it's pretty advanced by default it's in optimized mode and you should probably leave it there if you do doing regular booleans so boolean wireframe output this option will output a mesh in wireframe mode after the boolean command and it can be useful in some cases covered in the documentation uh automatic boolean instances conversion will convert instances uh for boolean operations so if you have instances it will convert them to normal mesh or it will ask you if you have some other algorithm enabled that actually supports instancing additive creasing will for example if you have mesh with some shape like that and you have chris uh you've manually manually creased those edges right if you now uh enable chris plus as you can see it will not replace the previously creased edges and but if you enable additive if you disable additive creasing and crease as you can see it will first delete all of the creasing on the mesh and then apply the crease by angle so by default it's enabled and you should probably use it like that crease increase only face perimeter is basically and will invert the shift uh parameter of this crease and then crease for example if i if i hold shift it will now crease the inside edges but if i unselect this option and now hold shift it will only increase the outer edges so it basically inverses the this uh shift function for grease and increase by default it's enabled uh those are just utility too many instances checking too many edges selection selected check so that's it for the options so i hope you enjoyed this tutorial it's quite a few things to cover in this tutorial and if you have any questions you can always go to the documentation and read about it or just ask me in the discord server also in the description you will find links to where to buy this plugin and other useful things also all of the chapters of this video are also their timestamps so you can just click around and find the question that you are interested in and yeah so thank you for watching and have a great day [Music] you
Info
Channel: George Sladkovsky
Views: 8,589
Rating: undefined out of 5
Keywords: Autodesk Maya, Plug-in, Script, Add-on, Automatic Creasing, Crease by Angle, Select By Angle, Automatic Beveling, Material Presets, Straighten Edge, Dot Select, Pattern Select, Mirror Instance, Material Manager, Smooth Edge, MEL, Maya Embedded Language, Straighten Verts, Straighten Selection, 3D Modeling, Shaders, Materials, Hard Surface Modeling, Poly Modeling, Array
Id: fRblCOUFaiQ
Channel Id: undefined
Length: 95min 20sec (5720 seconds)
Published: Thu Oct 01 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.