Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Modeling 3D models.
This guide is NOT a guide on 3D modeling itself, if you would like to learn, we recommend using the latest version of Blender (it's free) and watching a few tutorials on YouTube.
This guide is aimed at people who have the modeling basics down. Many people wanting to contribute are new to modeling so while there’s some general art advice, everything applies to SS3D.
The topics are in order of priority. Silhouettes are the most important thing, try not to add color or detail until you're satisfied with the shape of the model.
Value is brightness independent of the color you use. If you were drawing a picture that would be the end of it, but in 3D, value is a function of the shape of your object and the lighting ingame, which could come from any different angle.
You can’t control lighting, but the shape of the object is up to you. If computers could draw an infinite amount of polygons you wouldn’t have to worry about anything else, since you could just perfectly describe the surface of any object.
But we have a limited polygon budget so we rely on normals to make up for it. Normals are just the direction the surface is facing, which by default is straight up from each individual face.
By tweaking these directions you’re “bending” the surface even though its shape hasn’t really changed.
Mood in a single SS13 round can vary wildly, and lighting needs to lend itself to both calm and spooky situations. Under regular conditions, like well lit Medbay or hallways, objects are fairly uniformly lit so normals aren't that big of a deal.
This is intentional as the skill floor for creating new assets shouldn't be high. The exception to this are objects with large at surfaces, which can look pretty different.
Sharp edges are hints for Blender to do the normal splitting for you. Setting sharp edges is very easy, just put them down wherever there should be a discontinuity in the surface.
The base of a bolt sticking out of plating, two different materials making up the same surface, or the seam where parts of an object would be welded together.
Some examples: The tubes going into the cryo don’t need it, since sharp edges are used to split continuous meshes and the tubes are separate from the base.
This section is immensely important to maintain consistency with our art style. Follow what comes after this sentence like gospel: Stylization involves emphasizing the defining parts of an object. When modeling something that exists in reality don't try to accurately reproduce it, even with reference the goal is just to make a caricature of the real thing. Another thing to keep in mind is that the world the characters inhabit is vastly different from the one that we do. When your fingers are thrice as thick as those of a human, the design language of everything you interact with changes dramatically to accommodate.
Just because you modeled that fancy AK-47 as accurately as you could, it can't be usable in game simply because the characters wouldn't even be able to comfortably hold it. Its stock would be too long and makes holding it awkward, and the trigger guard wouldn't even let a finger through. objects that would fit comfortably in our hands like a multitool, would be miniscule and hard to use for the game characters if they got their hands on it. If a single word could be used to describe the design language of everything in SS3D, it would be 'chunky'. Thick edges, large buttons, etc. In the image below, you can see just how different the character looks like compared to an anatomically correct human. Ensure you take this into consideration when making the assets.
Remember that items will be seen from pretty far away, so zoom out early and often, and always look at your work from all angles.
Focus on details that contribute to the silhouette. A gun barrel or tube doesn’t need to be hollow, it’s enough if the end cap is a darker color or just solid black.
If certain details are important but too small to be noticeable, make them bigger.
As a poor example, you don’t need 101 keys to model a keyboard the same way you wouldn’t draw every brick in a wall, just enough so that it’s readable as one, and big enough that it can be seen from far away. Don’t get attached to close shots of your model.
Too fine or complex detail might just become noise when viewed from the proper distance, so zoom out often.
The current year is 2018 and modern computers are capable of rendering millions of triangles per frame.
Low poly is largely a stylistic choice, but SS13 is a sandbox game and it’s not unreasonable to expect that hundreds of objects could be on screen at the same time.
It’s also about consistency— objects that are very polygon-dense will look out of place next to their low-poly friends.
Enough that it looks like a cylinder from camera distance. Larger objects have more sides, as well as objects that should have glossy highlights like the cryotube on the right.
It's difficult to correct this later in the modeling process. Remember to turn on smooth shading by selecting all faces then using Ctrl-F > ShadeSmooth. Select a matcap from the Shading panel on the right, regular Blender lighting is distractingly shiny and bumpy.
Matcaps don’t affect the material whatsoever, it’s just a preview within Blender.
Bevels are very useful in hard surface modeling since they catch and reflect light, highlighting the edges of an object.
SS3D though has a rough clay look, with left smoothness as a special eect for things that really need it so bevels are not that important and mostly optional. Do add them when your object has large surfaces, like a fridge, which otherwise would look like a tall box.
Small objects or small parts of larger objects don’t need them, since it would have little impact on the silhouette.
Alternatively use the Bevel Modifier in combination with bevel weights, which you can set individually for edges in the model.
It’s easier to tweak but I recommend applying the modifier after you’re done with it.
I've seen it called retrofuturistic, but that would imply that tech is fixed and has an unique inspiration. I think SS13 is closer to reality, where technology moves forward but machines that grow old and obsolete aren't always replaced or upgraded.
The result is a station where sentient positronics coexist with brain-in-a-jar cyborgs, and the crew uses dot-matrix PDAs to send messages to each other. This happens in reality, even now the military is carrying literal nuke disks—
—while the navy organizes their documents on computers running MSDOS. In the end it's both funny and good since it gives creators the liberty to add almost whatever they want, present or future.
I fully expect the HoP’s account database to be stored in tape drives.
A "normal" is the direction the face of a model is pointed. In the images to the right, the normals are represented by the blue lines.
To save processing power, software like Unity will only render the "normal" side of the face. This process is called "backface culling".
By default in Blender, backface culling is turned off, so it will render both the front (normal) and backside of each individual face. This commonly results in models that have faces with inverted normals, since, to the modeler, the faces appear to be all the same.
This can be prevented by enabling backface culling in Blender. As of Blender 2.8, backface culling can be found in the material settings while in LookDev view.
The template in the SS3D modeler's kit has backface culling enabled by default for all present materials. Hopefully taking this step and allowing backface culling should allow modelers to keep better track of the normals. Keep these fundamentals in mind when modeling flat objects like paper, as they will need to be double-sided.
This is touched on in the SS3D Style Guide, but it still bears repeating since it's so often overlooked. People often associate low poly art with flat-shaded surfaces, but this is not the case with SS3D! Models in SS3D all have a smooth-shaded appearance, which helps a great deal in getting that soft, almost pastel-like appearance.
Surfaces in Blender 2.8 can be shaded smooth all at once by entering object mode, selecting your target, and clicking Shade Smooth from the "object" dropdown at the top of the layout.
If a sharp edge is desired, you can mark an edge sharp by selecting the edge in edit mode, and clicking Mark Sharp from the edges menu at the top of the layout. Sharpness can also be removed in a similar way, but instead, selecting Clear Sharp from the same dropdown.
For best smoothness, try to model using only quads (four-sided polygons). An additional thing to note is that the materials don't use specular highlights, so if you're setting up your own material, turn specular down to 0.
Textures may be used for repeating patterns, or where cutting up the model to add colors may cause problems.
Complex text or symbols can use a transparent texture, and of course posters and pictures are alright.
For more info on textures see the 2D Textures Page.
For simpler things consider just using polygons.
These simple decorations are floating just above the object’s surface. This also includes the “fake” grates on the lockers. They’re too small and the camera too far for the player to ever notice.
When exporting a file to .FBX, the model will not preserve its textures. Instead, the materials will be applied in Unity, so it's important that the material is named something recognizable.
By default in the template file, there will be pre-named materials. Palette05 should be attached to all relevant materials, so UV mapping should remain the same between all of them.
It's also worth noting that some materials might need to change dynamically in-game, such as liquids.
Formatting 3D models for export.
This guide is built with the intent to allow model submissions to come into the hands of developers as close to usable as possible, so that minimal cleanup or edits are required, and as such, a finished, accepted model needs to meet the criteria listed in the following pages.
The function of an object's origin is slightly difficult to explain to someone unfamiliar with the concept, but simply put, an object's origin is its handle. In Blender, an object's origin is represented by a little orange dot.
When you rotate, scale, or move an object in object mode, these functions are performed on account of its origin's location. Blender's mirror modifier is also dependent on the location of the object's origin.
The placement of the origin is something to consider, because in gameplay, it is the point from which the object spawns, as well as the default point from which it is picked up and held.
As a general rule, if the object has a handle, the origin should be placed in the center of the handle. If the object has no obvious handle, then it should go in the bottom center of the mesh.
Another (less common) origin placement would be in the center of a rotating axis, like in the hinges of a door or lid.
To properly align an object with the player's holding bones, we need to ensure that there is a precedent set for the rotation/orientation of objects.
Ideally, held objects should be upright, like in the attached images. This isn't mandatory, since you can set the position manually in Unity, but this is the preferred way to position things.
This makes it way easier to preview the holding animations within Blender.
You can test out hold positions by adding rotation and location constraints to the desired object, then selecting the armature, then the right hold bone.
(Most of this should be elaborated on at some point.)
They’re fine as long as they’re at and won’t be animated.
Triangulating
Don’t triangulate your models.
Inverted normals
By inverting the normals of a model you can achieve an interesting pseudo transparency effect.
It’s not realistic but we’re not aiming for realism.
Double sided
Many thin objects such as paper, leaves or cloth don’t need to have proper thickness, but for performance the engine does backface culling, where faces that are “backwards” aren’t rendered.
This can be avoided by selecting the mesh, duplicating and then inverting the normals.
Pivot
Always at the center (XZ) and base (Y) of the object.
Modeling with NURBS
Cables and wires, but also some round but geometric objects like the plastic “cup” chair.
Cell fracture
To shatter objects for ingame destruction. Takes some setup.
Coloring models helps give more character and even depth to 3D models.
Having a palette has many upsides. It removes the need to learn texturing and also UV unwrapping, which is a tedious mechanical process that would raise the entry barrier to making SS3D content.
It makes it really easy to try different color variations, and it helps with cohesion.
By coloring parts of the mesh with a darker shade of the same color you give the impression that it's casting a shadow on itself.
Old games did this a lot, but it should be used very sparingly— it can look very wrong when light shines directly on the darkened part.
The disposals bin can’t rotate, so it’s safe to assume light will be hitting it from above.
At this point the model has no UV mapping. Select all faces and press U
> Reset
which is the most unwrapping you’ll need for most things.
Make sure everything is selected in the UV editor then scale it all down into a single point (press S
the 0
). Now select the faces you want to color, then drag the corresponding points in the UV editor to a swatch in the palette.
Many objects in SS3D will have variants to go with them, such as light bulbs and their broken counterparts, or different stages of construction, crafting, or consumption.
For a clean in-game transition from one variant to the next, it is important that all variants of an item have their origins in the same exact relative location.
And while all variants of an item can technically be saved as different files, it is best that all variants of the same item are stored within the same .FBX file to decrease clutter within folders.
When opening the .FBX files, the multiple objects can be distinguished within Unity.
So, you've followed this guide to a T and now you're ready to export. Here are some notes before you export:
Selected Objects - This allows you to export only the objects you have selected. Highly recommended to toggle it on so you don't accidentally export the whole scene.
Apply Scalings - Set this to FBX All This fixes some scaling issues in Unity.
!EXPERIMENTAL! Apply Transform - This also fixes scaling issues in Unity, but primarily in regards to armatures. Just toggle it on anyway.
No Leaf Bones - Turn off "Add Leaf Bones". It adds useless additional bones to the ends of armatures.
If you are using the template provided in the SS3D Modeler's Kit, then hurray! The sizing should already be obvious to you.
A square in the checker grid is the size of a tile in SS3D, but even if you aren't using the template, a square in Blender's default grid is the same size.
You should take care to ensure that a 1x1 sized object fits slightly within the confines of a grid space, so that it does not collide when being slid through doorways.