FOnline Development > 3D Development

3D Tutorials and Links (20170222 Images Replaced 1/3)

<< < (6/8) > >>

TommyTheGun:


BASE TEXTURE


After getting a base model, I was wondering if I should or maybe shouldn't mess with it's texture. Comes out:


"You can create a new base texture for the body, but it is not essential unless it includes parts of the main model i.e. a shirt / trousers which should go with the rest of the model.

Leave the human skin as it is, as this will be used when they make the other skin colours in game - but the trousers and vest, I think it is okay to paint over"

Further info from Luther :
"I have a better understanding of the 'subsets' now. If you look at the subset information in the previous tutorial [LINK], basically you can paint over any part of that base texture, as long as you paint the entire of one subset section. For example, you can paint an entire sleeve, or a short sleeve - as long as the short sleeve stops at the edge of the subset. Any area you do not wish to change can be ignored, and left for the base skin tone to deal with."



It means you don't need to create a special body/main texture while creating Power Armour cause it's not gonna be visible, you're gonna need one for unzipped jacket if you want to paint a shirt with some sort of symbol for example.


"For clothing which is only a tight shirt and trousers (like if you were making a new bluesuit Vault Suit), this should be painted onto the texture, rather than modelled as separate 3D clothes."


TEXTURE SIZE


That matter is very clear. The texture that's gonna be used ingame will have around 512/512 pixels MAX, but remember it's easier to create the texture as big as possible at the beggining, and the resize it to the right size.


Further info from Luther :
"I work on all my textures at 1024x1024 initially. This makes it much easier to edit or correct things when changes need to be made. For the final models, many are currently 256x256, though even this may be dropped to 128x or lower. If you're submitting a model, it's probably best to send your texture at the larger size, which will help others who may wish to alter, edit or make alternative version based upon it. It can be resized easily at a later date by whoever is implementing the model into the game"



SIMPLE TRUTH


Creating textures for a model or changing them is always challenging since you have to imagine how it looks wrapped around the model. Also - you have to create it from different pieces or paint it yourself. It's a good thing, Luther reminded me to keep many layers - not only the one indicating seams - it's best to use different layer for every bit of texture. So you got Boots on one layer, Jacket on the other, Pants on the third one. (You can even divide it and create another layers for other details like pockets etc.) Though it's not a rule, sooner or later it will save you a lot of time - when you gonna need to change some details or gonna need similar, but not the same texture.


[waiting for the right picture here]


CONNECTING THE SEAMS


After you actually unwrap the model, you may have some hard times making a texture properly so the seams area connects the right way. It's not always possible, but:


"If it is possible, I leave "seams" (where the edge of one object meets the edge of another object) in a basic flat colour, or completely black shadow - then the edges are certain to match. If your seams are all on the underside or hidden side of the model, this should work fine"


[waiting for the right picture here]


SMALL, YET DETAILED


It's not that easy to create a good texture for such a small object. It needs to be detailed, but then again if theres too many details, it won't look good from iso view and you won't gonna know what's what. So the simple way to do it right (so it seems to be detailed from far away) is:


"Exaggerate highlights and shadows. For a model of this size in-game, the shadows must be very dark, and the highlights very light, otherwise they can't be seen clearly. Use the "dodge" and "burn" tools in Photoshop to lighten and darken areas."


"For a modern game like New Vegas, you want everything to look as "photo-realistic" as possible - it's on a real human form, appears large in game, has lighting and shinyness effects etc. For these Fallout models, we want everything to look as "Fallout" as possible - so "photo-realistic" isn't important. What is important is exaggeration of shadows and highlights - so think more like [warhammer figurine] than [orc turbo render]."


Further info from Luther :
"The painted shadows and highlights is one of the areas which I'm less sure about now, as there has been some excellent work done on the lighting, specular and other shaders since this was written - bringing us a lot close to a modern 3D game engine. However, stylistically we're still aiming for the more cartoon-like Fallout-sprite-look, so I still think it's true to a smaller degree and would suggest the exaggeration of highlight and shadow is a little less severe than I'd originally recommended. However, the Combat Leather Jacket guy was done entirely with this method in mind, and he looks pretty sweet with the recent tests, so perhaps it's not such bad advice after all?"




ZOOMING OUT


It was always a problem for me to imagine how the texture would look ingame. Well.. You never know exactly until you check it on the model, but there's a simple way to get a picture, just so you know if you're heading the right direction.


"I think the zooming out was very useful for me - it really helped to clarify which parts of the model would be visible - it's only a "simulation" of seeing it in game, but gives a good enough idea to work with - like at 100%, the jacket and shirt are very separate, but when they're small, they blend together, so you highlight the edges."


TWEAKING UP THE DETAILS


It starts to look like Something and again - you zoom out the view, getting... Nothing. What now?

http://img26.imageshack.us/img26/3128/suggestions.jpg
[Large Image]


Notice how a silly "shine" effect on the buckle changes it from "some grey weird thing" into a "real, round buckle". You don't need additional polys or super shader creating soft, detailed shadows - its just a few swoops of brush in Photoshop or whatever it is you are using for textures.

Another thing is a hole in a holster. As written before - you don't need to actually create it as a model. You can draw it. If you do it right way, having in mind isometric view and possible poses of your character, you can do it the perfect way - so there always seems to be a hole from every given point of view.

Also Luther's idea of working with the "shadows" (the cigarette part) shows a lot. You can see how it changes from flat texture into multiple layers.

Note, that you probably won't see much of it from our FOnline view, but believe me it can make a difference. After all - it's about your model "having a soul" as well ;).


"Adding detail is always nice - it's not always visible, but sometimes it leaves a few pixels, which "suggest" that something is there. The player's imagination decides what it is then (see bullets / stitches discussion for Combat leather jacket) - in the end, it didn't matter which they were, but the fact that SOMETHING was there made the difference."


The important thing is - those details won't hurt and won't have infuence on your computer's performence so it's a different matter then adding polys.


And here's Luther's tip for Photoshop users:




MAKING ALTERNATIVE TEXTURES


If you want to add more than one variant of the texture for your model, here's a quick way of doing it. Obviously - just to give you an idea how you can start your changes:

http://img339.imageshack.us/img339/7634/suggestions3.jpg
[Large Image]


AND DON'T GIVE UP


I had a moments when I was pretty sure I won't be able to finish the texture. I mean - come on, how am I suppose to create something that looks like jacket? Can't create it out of few pictures combined into one - it's gonna be too detailed. I'm not talented when it comes to drawings... What now?


"Very roughly, you can fill the area with a flat colour, then use "burn tool" in photoshop to make shadows, then "dodge tool" to make a few highlights, then keep redoing it until it looks right - that's probably 90% of the work I do on a texture anyway."


As simple as that - you actually keep doing it, it looks silly at beggining, but after few tries you come up with something not that silly anymore. Then you begin to have your own ideas how to make the texture more interesting and BAM, that's the moment when you stop thinking what, where and how, you're a chineese child in Nike factory - you just do it!


SO...


I'm using blender and photoshop on the very basic level, but with some help and very valuable hints, that basic level was enough to create a nice looking model. Eventualy you finish your work with something like this.



So I guess it's worth trying. After all - In the worst case - you learn something new.


I hope this would be helpfull to someone as it was to me :)


ALSO IF ANY OF US WAS WRONG IN SOME STATEMENT OR SOMETHING CHANGED SINCE WE WERE DISCUSSING IT, PLEASE LET ME KNOW. IF YOU HAVE ANYTHING INTERESTING TO ADD AT SOME POINT, DO NOT HESITATE, WRITE ANY SUGGESTIONS - THAT WAY THIS TINY ARTICLE CAN BECOME WAY MORE HANDY FOR OTHERS :)

baaelSiljan:
wow !!

Haraldx:
Good tutorial (altough I knew most of the stuff), came in handy. ;)

Luther Blissett:
#3-1 Rigging introduction

Reading beforehand
Firstly, I would recommend reading through my previous short tutorials (i.e. 3D compatible SDK etc). This will make it much easier to understand some of the points and phrases here - and also help you to test the final result. Also I would severely recommend looking at Lizard's tutorial Rigging in Blender  - he very clearly explains how the whole system works, which will make the following explanations much simpler to understand (I won't go into such fine detail myself).

When we eventually find a way to properly move models from Blender into the game, my following tutorial may be obsolete, but for the time being, it should work :)

Programs
I'll be using these programs :
Fragmotion (http://www.fragmosoft.com/)
Wings3D (http://www.wings3d.com/)
Photoshop 7.0
Notepad

Obviously you can quite easily replace Photoshop with GIMP (or a newer version of Photoshop), and use any text editor. I'll be giving program specific instructions for Wings3D and Fragmotion, though you should be able to achieve the same or similar through other software.

Fragmotion
Later in this tutorial, we're going to be using Fragmotion to rig the armours and clothing. It's not the most elegant solution, but it does seem to have given me files which will work in-game. Three advantages of Fragmotion are 1) It will directly import .x files used in the game, so you can explore, assess and edit them, 2) It's very quick to learn, and 3) You can use the trial version forever, assuming you are willing to type in a "prayer" once per week to reactivate it. Of course, if you can afford to do so, buying it would help the small independent developer.

Firstly though, the model needs to be prepared and aligned. Though this could be done in Fragmotion, I'd recommend to use whatever your preferred 3D modelling program is, for the sake of speed and simplicity. We're basically just going to align the pieces with a base man model, then reexport as obj. I'm going to use Wings3D for this.

Complexity of Rigs
There's a big difference in the difficulty level of rigging various types of model. In essence, you're telling every vertex (little dot) on the 3D model what bone it is connected to, and the strength of that connection.

Hats
Hats are very easy. Most helmets will be too. It's pretty much a case of attaching every vertex to the same "Head" bone at 100% strength. The hat will move where the head moves.


Fragmotion : Combat Armour Helmet - all rigged to head bone at 100%

Armour made of plates or sections
If the armour is made of separate pieces i.e. elbow pad, gloves, boots, chest plate etc, then again this should be quite straightforward. Mostly a case of attaching the vertices of each object to the nearest bone, following the direction and pattern of the base human.


FM : Combat Armour - rigged in sections to nearest bone at 100%

Basic clothing
If the clothing follows the shape of the normal human quite closely, you essentially want to look at copying the layout of links on the base model - chest to Spine_1, stomach to Spine_2 etc. Study the base model, and attach the equivalent areas in a similar manner. Shoulders and pelvis may be quite difficult, legs and arms pretty easy.


FM : Leather Jacket - Note yellow 50% lines on joints

Loose or long clothing
This will be much more difficult - clothes which hang past the legs (i.e. skirts or long coats) will need to be connected to several different bones, and you may have to constantly tweak and adjust the weighting to get this to work. Alternately, you may want or need to add an extra subskeleton to control the flow of the clothing (see NCR Ranger longcoat rig) - though you will need to make acomplete set of animations to do this.


FM : NCR Long Coat - Note extra subskeleton and overall complexity

Following parts
3-2 : Preparing a model for rigging
3-3 : Rigging a basic model : Hat

later on, I hope to add :

3-4 : More complex rigging, and controls in Fragmotion
3-5 : Other options and oddities (animations changing, new characters)

Luther Blissett:
#3-2 : Preparing a model for rigging

Preparation and alignment intro

So, before we rig the model, we need to make sure it's the correct size and in the correct place relative to the base human. This should work in any 3D software. I'll give a quick and simple explanation for Wings3D, but you should be able to do this in any 3D modelling application. We're only really using the size and move commands.

Basically our overall aim here is :
- Take the correctly aligned reference model
- Import the model to be rigged
- Resize and move the new model, so it is in the correct place
- Check it for any clashes with the human model
- Re-export, ready for rigging.

Files for use here
If you're following along with this, download these files. I'd recommend you take the aligned human one anyway.

3-1 Aligned human.obj (New link 22/01/2012)
misaligned beret and texture.zip (contains 3-2 beret wrong place.obj and armor_all_beret.png) (New link 22/01/2012)

Using Wings3D to align the model

Open Wings3D. It'll look roughly like this :


[edit] If you don't have the "Outliner" and "Geometry Graph" on the right hand side, they can be activated from the "Window" menu at the top.

Brief overview of controls and layout
This is just an explanation of controls. Skip if you already know them, or are using different software.

A thorough breakdown of controls can be found in the manual or in any "how to use this program" tutorials, but I'll cover a few bits for clarity.

Mouse and keyboard

Keyboard Controls
A : Focus camera onto selected face/vertex/object(s)
Space Bar : Deselect all
X,Y,Z : View along x,y,z, axis
SHIFT + X,Y,Z : View along reverse x,y,z axis
TAB : Enter a specific number for size/move/rotate etc

Mouse controls
LMB : Select / Deselect
RMB : Open context specific menu
MMB (press on mouse scroll wheel) : Switch to rotate camera
Scroll wheel : Zoom in / out

These can be customised in the options for those with more/less/other buttons in the preferences.

Program layout

Selection options

Select vertex, edge, face, object
Relating to LMB selecting, whether you wish to select vertex, edge, face or whole object. Clicking on part of the model selects or unselects. You can also drag a selection box around several.

Viewing options

Preferences, smooth/flat shading, perspective/orthogonal, grid on/off, axis on/off

Outliner

Outliner shows materials and textures. You can drag and drop textures onto materials, right click on materials to assign them to selected faces or objects or edit their preferences.

Geometry graph

Geometry graph shows objects (hide, lock edit, view as solid or wireframe).

General usage
Some modelling programs use a series of "modifiers" which are then applied, or can be changed back easily at a later date. This is not the case here - you just click "make bigger" or "flip" etc. Move the mouse to increase / decrease, or use TAB to enter a specific ingeter.


Generally, the program uses a context menu system. Select a face or object, then right click to do something to it. Each menu option can be clicked with LMB, MMB or RMB for different levels of manual control. These options are shown in the information line. With nothing selected, you will have the option to create any of the default primitive shapes (i.e. cube, cylinder etc). Additional keyboard commands will also be shown in the menu.


The information line will tell you any necessary info, including what your current context specific options are. Generally speaking, LMB is the "basic default option", and the MMB and RMB ones are the more specified custom ones.

Further controls can be found in the manual, or any general usage tutorials. For what we actually need to do know, the current information should be plenty.


Aligning the hat model

Different 3D programs use different default scales, rotations and setting upon export, so you might find that models are laying face down, or really small etc. To work with this, we're going to import a "correctly aligned man" (he's simply an .obj export from the CR_HumanMaleStrong.x which had been imported into Fragmotion). If we then adjust our model to match him, and export through Wings3D and Fragmotion, he should end up in game at the correct size and stood upright.

Firstly, import our "correctly aligned man"
FILE > IMPORT > OBJ > select file > 3-1 Aligned human.obj



You should end up with this guy here. You may need to zoom out (mousewheel down)to see him. You should have one object (Default Body) in the geometry window, and a selection of materials in the outlines. Though we don't need these right now, these materials correspond to the subsets on the main model.

Now we want to combine this with our hat we want to rig.
FILE > IMPORT > OBJ > select file > 3-2 beret wrong place.obj



You should have this guy there now, wearing a rather poorly made little beret. He's also too small and in the wrong place. If you're working with someone else's files, this will often happen, so you need to know how to correct this. If you cannot see the little man, you can use the mouse scroll wheel to zoom out, and the press-down-scrollwheel to turn into "rotate camera".

So, firstly let us select the little man. Either click Beret and Body in the Geometry Graph, or use the "Whole object select" button and drag a box round the little man and his hat. If you press the A key, it will focus the camera onto the little man. You can now rotate and zoom from this point.

NOTE :
It's preferable for someone to export an armour object with a "base human" attached, because it allows us to "match the humans" like this, thus ensuring the armour is in the correct place. If the armour is on its own, you will have to adjust and resize "by eye" only.

Resizing and rotating multiple objects
Note that the beret and small man are built from two separate objects.  This will have an effect on our resizing and rotating tools - namely that if we resize / rotate in "object, edge or face" modes, each object will separately resize or rotate from its own centre point.

In object mode, his hat and body resize about their own centres - so they stay in the same place, and resize "into" each other.

To compensate we can either :
1) Resize / rotate in vertex (little dots) mode
this will adjust the objects as one whole, so the hat stays on the head, in its relative position.
2) Temporarily combine the objects (select both, RMB > Combine)
If there's only a couple of objects, this will work fine. We can separate and rename them later. However, if the model is made of lots of smaller pieces, this could end up very messy.
3) Resize / rotate from a specific point
We can use the advanced commands to specify a point to resize or rotate from. If for example, you select the bottom of both feet as this point, everything will scale from this point, keeping the different objects in the correct place.

In this case, I'm going to just use the vertex mode.

NOTE :
In many cases, you may be able to do this very quickly by using the "align centre", "put on" "absolute commands" and other similar options. The following is not the quickest way to do this, but it is easier to follow and the "essence" of the instructions should be transferrable to other programs relatively easily.

Moving and resizing commands

For this specific example, the following series of commands should get you roughly in place. You might want to tweak things a little further yourself. Note that you can press the TAB key to enter a specific value. They're all the default LMB commands.



- Select beret and small man
- Switch to vertex (little dots) mode
- Scale Uniform 1000%
- Move Y (up) about 58
- Rotate Y 180
- Move z (back) 43
- Move x (sideways) -113

This should get us roughly into place.


If you click on the little "blocks" on the right side of the Geometry Graph (view as solid/wireframe), you can switch each object to wireframe mode and back, which should help to see the alignments. Basically, you want both of the human models to overlap as closely as possible.



Continue making minor adjustments to the scale and position until you feel the bodies are overlapping closely enough. If you can get most of the red (selected) and black (non-selected) vertices to be in the same place, you should be fine.

Removing spare bits and checking for clashes
So, assuming that worked, we can delete the 2nd body, just leaving us with the default body (from "correctly aligned man) and the hat

- Press Space bar to deselect everything
- Select the Body object by clicking on the left hand cube in the geometry graph
- Press the delete key



We should now have the hat placed on the alignment man. Me may want to check for further clashes - occasionally you will find from certain angles that the head sticks through the top of the hat, for example.

Adding the texture
It's a lot easier to spot these clashes if one of the objects has its texture attached, so will go through this now.

File > Import image
Select the armor_all_beret.png, which should now appear in the outliner window.

Switch to "Object Mode", then select the beret object.

Pick a material - you likely have a few default ones (if not, right click on one and duplicate it). Select it in the outliner, right click and rename to "beret" or similar, then right click and "assign to selection".

Next, drag and drop the texture onto the beret material and select Diffuse. If the texture doesn't appear on the model, right click the material settings and set the vertex colours to "ignore".


Hopefully, the hat should be coloured in red. Zoom out, rotate and check from various angles that the head does not protrude through the hat.  Sometimes it's useful to turn the object into wireframe and see if there are any vertices or edges which are too close to the edge of the hat. You may have to increase the size slightly, or slightly move individual edges, faces or vertices to make things fit. "Move face normal" may be useful for this.



Obviously, if you wish, you can drag textures onto the base human model to see roughly what things will look like.



Exporting it
Now we've got the beret in the correct place, with material and texture attached, so can now export it.

Select the beret object, then go to : File > Export selected > obj

Make sure to pick "Export Selected", or to delete the alignment man and his materials, else you'll end up with the whole lot in your hat file.

This obj file is now aligned correctly to the "base man", and therefore his skeleton, so we can import it into Fragmotion and rig it quickly and easily. Remember, you can use your preferred 3D program, though there may be a matter of "export scale" in some programs. If someone can test in Blender, Max etc we can find this out.

Regarding the files made so far, here's one I made earlier :
Beret export selected.zip (contains obj, mtl and same texture file) (New link 22/01/2012)
This is the correctly aligned beret file.

Though I've used the hat in this example, the process is essentially identical for any other armours etc.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version