Mosin Nagant Sniper Rifle Construction |
Ident Asset Creation
After deciding on my chosen TV channel (The History Channel) to base my three idents on, I had to produce various objects within 3DS Max that would stay consistent throughout each ident. I therefore began this process by collecting vast amount of research images to base these objects on. I started by acquiring a distinct range of images containing different variants of the "Russian M91 Mosin Nagant Rifle". One of the most notable sources that proved an invaluable wealth of information was a web site called http://7.62x54r.net/ which is a dedicated Mosin Nagant reference. Out of the numerous images that I collected I decided on two main images which would serve as the main points of reference when modelling the rifle. The first image was a direct side view and the second from straight above, these images were purposely chosen due to the angles in which they were taken from. Each image was imported as a Bitmap into 3ds Max using the material editor, both were then separately assigned to a matching sized plane in the top and left viewports accordingly.
Modified version (barrel made longer and contrast increased)
Having aligned these image planes I began constructing the rifle , starting with a standard box object. This was converted to an editable poly allowing the vertices to be rearranged in order to roughly match up with the shapes of the reference image planes. Certain faces of the box object were extruded and reshaped numerous times to achieve the final shape of the wooden parts of the rifle including the stock and barrel grip. A mesh smooth modifier was then applied to replicate the intended appearance of curved hard wood.
The metal barrel was made using a cylinder which again was converted to an editable poly. The end polygon was then inset and extruded inwards to produce a hollow tube. I then proceeded by creating the handle/trigger area of the rifle using 2D splines, these were then converted to editable poly's and extruded as needed. The outstanding metal components were all constructed using basic standard primitives. Any required holes such as through the scope mount were achieved using booleans to carve out the necessary sized holes using additional shaped objects.
The lenses at either end of the scope itself were made from thin cylinders, each one had two bend modifiers applied to curve them in both the X & Y axis. This resulted in one concave lens for the end of the scope and a convex lens for the viewing end.
I then proceeded by gathering a wood material to texture the wooden sections of the sniper rifle which was assigned to an empty material slot and applied using a UVW Map modifier set as a "box mapping" type. "Bitmap Fit" alignment was also used so that the texture was evenly spread over the selected objects. An Unwrap UVW modifier was then used to scale the material appropriately to simulate the real grain size of cut wood.
I then proceeded by creating a basic Raytrace metal material from within 3ds Max, using a dark grey diffuse colour for the metal parts of the rifle. The scope was given a similar black material, except a high degree of gloss and specular highlights level was introduced to represent a shiny black paint appearance.
Russian Sniper Character Creation |
Character Modelling
Over the duration of the Christmas break, I decided to use this time effectively to produce the Russian Sniper Character for my three upcoming idents. This period proved to be a very time consuming and frustrating experience, as I soon determined that organic modelling is extremely intensive if a realistic outcome is desired. Simply due to the fact that every human figure is completely unique and consists of detailed features which are extremely difficult to replicate in 3D software. After an extensive process of trail and error of experimenting with different character modelling techniques I eventually produced a fairly realistic head using box modelling. Although box modelling is a reasonably easy form of modelling it still resulted to be extremely tedious as individual vertices had to be constantly readjusted/moved to achieve the desired outcome. Other methods I attempted included modelling a head using planes. This however proved to be even more difficult, especially for an intermediate user like myself who has little experience in organic modelling.
The head was created using two different images similar to the rifle construction process, however these references were only followed roughly as the resulting object would have been too detailed to model.
Head Reference Images
The head started as standard box object which was given plenty of height and width segments in order to provide a sufficient amount of vertices when converting it to an editable poly. The individual verts were then manipulated using the select and move tool to line up with the reference images. In order to see the reference images through the box object, ALT + X on the keyboard was pressed to make the selected object see-through turning it into a light transparent grey colour.
Stage 1 Stage 2
Click for full-size image Click for full-size image
Where more detail was required for example around the eyes, an edge around the eye area was selected then ring select button was pressed to select all the edges in ring around it. The connect button was then used to add new edges connecting the ring selection and therefore producing more vertices to alter the shape of the head This then allowed smaller polygons to be extruded inwards to form the eye sockets.
Ring Selection
These additional edges also allowed a nose to be extruded without disturbing the rest of the head's shape. The nose was created by simply dragging out specific vertices to produce a roughly curved nose shape. Then head object was then given a mesh smooth modifier which was simultaneously enabled then disabled to preview the final smoothed organic appearance of each feature.
Stage 3 Stage 4
Click for full-size image Click for full-size image
The nostrils and mouth were created using the same technique by adding extra edges to allow more detail through additional vertices. The mouth was given edges for the lips and then was extruded inwards to create the opening. The lips were then given additional edge loops to provide vertices to create a slightly extruded curved appearance, to simulate more realistic lips.
Stage 5 Stage 6
Click for full-size image Click for full-size image
The last aspect to create was the ears to complete the head, these were producing using plane modelling. I therefore started with one plane which was converted to an editable poly, one edge was then selected and shift-dragged to create another plane/polygon attached to it. This process was repeated to slowly build up the shape of the ear, gradually moving and rotating edges to construct the basic shape of the human ear. However given the fact that the ear is actually a very complex feature to model due to all the curved ridges and indents, I feel my attempt was fairly recognizable whilst not being completely true to life.
Stage 7 Stage 8
Click for full-size image Click for full-size image
Having completed the overall head, I continued producing my Russian Sniper character by starting with his boots. These were produced using box modelling and were again constructed to fit the rough shape of two reference images which were also used during the modelling of the rest of the character's body.
Front View Side View
Click for full-size image Click for full-size image
The vertices of the boot object were rearranged to create as curved as appearance as necessary and included a slight extrude/bevel on the base to create the sole and heel of the boot. The top polygon was inset and extruded inwards to create space for the leg to sit in, the entire object was also given a mesh smooth modifier in order to represent the intended style of leather boots.
Boot from Box Smoothed
Click for full-size Click for full-size
I then continued by making the characters legs, this process also involved experimenting with various modelling techniques before a desirable result was achieved. My initial attempt involved using box modelling however this resulted in severe difficulty in ensuring that the leg was the correct shape in each viewport. A alternative approach which I found was to be considerably more efficient was via the combination of a CrossSection and Surface modifiers as these were not only quicker but produced a better looking result.
1 2 3 4
Click each image above to view their full-size
Step one involved drawing four editable spline circle objects which were rotated to match the joint positions of the reference image such as the knee and thigh. On step two a CrossSection modifier was applied which basically joins up the splines vertically using the vertices of each spline object. However in order for this to execute properly each spline object has to have the same number of vertices. Step three involved applying a Edit Spline modifier so that the cross section could then be manipulated to produce curved splines to match up accordingly to the shape of the leg in the reference images. On the last stage a Surface modifier was introduced which basically converts the splines into a 3D object by connecting the edges with a surface. I was particularly pleased with the end result of the leg as it was extremely quick to produce and can easily be adjusted if needed.
The image below shows the modifier stack for the leg object which should clarify the mentioned order of modifiers.
Leg Modifier Stack
The legs were then connected by extruding edges between the gap and then welding any overlapping vertices. During this process I tried to create a curved bottom connecting the two legs symmetrically. I also produced a flat surface on top of the legs by selecting all of the top vertices and scaled them on the Y-axis until they were completely level. The whole object was then given a mesh smooth modifier to round off sharp angles and to portray the appearance of human skin which is curved and organic.
Connected Legs Result of Mesh Smooth
Click for full-size image Click for full-size image
I then proceeded by removing the top polygons of legs to create an open border which I extruded multiple times to create the shape of the characters body. The vertices we often moved along the X-axis to create a rounded torso in addition to an indentation along the back for where the spine would be. This process was continued until I reached the shoulder height where I then connected the previously created head using the same method as when connecting the legs together.
Torso by Extruded border Connected Head & Arm Join Holes
Click for full-size image Click for full-size image
Having deliberately left holes to extrude the arms, I selected the border of the arm hole and extruded it numerous times, scaling rings of vertices each time. In addition vertices towards the forearm were gradually rotated which will allow for more manoeuvrability during the animation process without deforming the overall mesh. The manipulation of vertices also allowed for the definition of the main muscle areas such as the bicep and tricep in addition to the elbow bone. The arm was then cloned and attached for the other side of the body, the whole object was again given a mesh smooth modifier to preview the final smoothed result.
Arm created from extruding the border
Smoothed Arm
The last and most difficult component to create with exception of the the head was the hands. The hands were made using the box modelling technique, I started by creating a standard box primitive with five length segments therefore splitting it into five parts for the fingers and thumb. This was then converted to an editable poly and multiple edge loops were added to provide additional edges needed to extrude the fingers. The individual vertices were again manipulated in a similar fashion to the arm creation process to produce the four fingers and thumb. Several vertices were also moved inwards to create a dip in the middle of the underside of the hand representing the palm area. Each finger had vertices scaled up to represent the knuckles in addition some edges were added across the palm and indented to create creases which are naturally found on a real human hand.
Stage 1 - Box Stage 2 - Thumb
Click for full-size image Click for full-size image
Stage 3 - Fingers Stage 4 - Palm
Click for full-size image Click for full-size image
The final steps to complete the model included adding finger nails to the hands and then attaching the hands to the wrist end of the arms. The finger nails were constructed by extruding and beveling a group of polygons on the end of each finger, they were also made to overhang slightly just like real finger nails. The hand was then aligned and scaled accordingly to the dimension of the existing arm. It was then connected by welding the end vertices that make up the wrist area. However a frustrating problem was encountered during this situation as well as throughout the previous character modelling sections as there was and odd number of edges of the hand compared to the end of the arm. This issue was rectified by adding extra edge loops throughout the mesh to keep all polygons four-sided i.e. quads, as triangles and five or more sided polygons can result in "Pinches" in the mesh surface. To finalise the character model a mesh smooth modifier was re-applied to smooth out the array of edges making up the knuckles and fingernails of the hands.
Extruded Finger Nail
Smoothed Attached Hand
Final Character Model
Front View Rear View
Click for full-size image Click for full-size image
Russian Sniper Character Rigging |
Character Rigging
Now that the modelling of the character was completed I pushed on with the Character Rigging phase. The first task was to setup the skeleton using "Bones" objects found under the systems menu in the create tab of the 3ds Max command panel.
First the bones were created for the character's legs starting from the hip then working down towards the foot then toes. This creation order was vital as the first bone created (the hip bone) is the parent and any additional bones created afterwards in the same bone chain are subsequent children. Hierarchy of bones is essential when rigging a character as when creating a human skeleton in 3D human anatomy still applies, especially if realistic results are required. By studying the basic skeleton of human beings I was able to create the bones in the correct order i.e. so when the thigh bone is lifted the other leg bones move accordingly. However another vital step to ensure true to life leg motion is HI Solvers, which are an extremely useful tool that allow links to be positioned within an existing bone chain. IK or Inverse Kinematics grant the ability to govern the how children bones are transformed by controlling the HI Solver linked to the parent bone. In this case I created one HI Solver from the heel of the foot up to the top of the leg, another from the foot to the ankle and then a final IK chain from the toe to the ball of the foot. Setting up these IK chains consequently resulted in more realistic moving bones which will be vital when animating the character throughout the idents for walk cycles for example.
Leg IK Chains Leg Bone Movement
Click for full-size image Click for full-size image
I then created a series of bones for the characters spine, starting at the base then working up towards the neck and then the head. The base of the spine was then attached to the hips using the "select and link" tool this therefore ensured that all the current bones in the skeleton were connected.
Spine , Neck & Head Bones Rotated Spine/Head
Click for full-size image Click for full-size image
The next chain of bones I introduced was for the character's arms. Starting with the collar bone, then the shoulder followed by the bicep, forearm and then the wrist. IK chains were added between the wrists and shoulders for the same reason as the leg bones. However when actually animating the final character during the Idents, these IK Chains may be deleted for normal FK chains instead. FK or Forward Kinematics basically allows each bone or linked object to be moved independently whilst still maintaining the link relationships. IK chains can prove exceptionally problematic on a character's arm and also aren't as necessary like the leg bones. This is due to the fact that arms are a lot more versatile than legs and using IK could restrict movement which would hinder the animation process.
Arm Bone Chain
Arm Bone Chain Movement
The last set of bones to arrange are for the character hands, these were purposely left to the end as they are complex to setup and can be created using a variety of different methods. One way of creating hands is simply by using default bone objects however this can often become disorganised if too many bones are created. An alternative method which I implemented was using standard boxes, this method proved to be considerably neater and easier to manage. Each finger was comprised of three boxes to represent the three joints in a actual human finger. Another larger box was created and shaped for the palm which the thumb/finger box chains were linked to. The palm was then linked to the wrist, which in turn caused the hand boxes to become part of the arm bone chain.
Box Bones Hand Finger & Palm Rotate
Click for full-size image Click for full-size image
Now that the whole bone system had been setup for my character I decided to go one stage further and optimize the bones using an array of helpers. This was done to save considerable time during the upcoming animation process and prevent the need of having to select each individual bone every time for each movement. The first helper objects I constructed were linked to the finger bones using "Wire Parameters" Wire parameters allow any animatable parameter of an object to be linked to another. This proved to be an invaluable tool especially with my character's hand bones as rotating each individual bone to make a clinched fist for example would be exceedingly laborious. Instead a box helper object was created for each finger, then the Y rotation of each finger bone was wired to the Y rotation of the helper. As a result whenever the helper is then rotated on the the Y-axis all the bones in that finger will also rotate in the Y-axis whilst maintaining their bone hierarchy relationship. This process was repeated for all ten fingers and thumbs with the matching number of helpers for each hand. Therefore in order to create a clenched fist as previously described, all I would have to do would be to select all the helpers for that hand then simultaneously rotate them.
Wire Parameters - Y Rotation of finger bone to helper
Finger Bone Helpers Helpers Y-Axis Rotate
Click for full-size image Click for full-size image
Although these wired helpers will be extremely useful they did cause a minor problem, disabling the ability to rotate each bone within each finger separately. For example I wasn't able to rotate just the end of the middle finger in the Y-axis as this was overwritten by the wire parameters. Therefore to solve this problem I made two additional helpers between the bones in each finger which were simply linked to the corresponding bones.
Finger Joint Helpers Individual Finger Joint Rotate
Click for full-size image Click for full-size image
Then to finalise the skeleton I added additional helpers at the wrists and feet which were linked to the according IK chains. An extra bone was also created at the hip area, to serve as a master bone which is at the top of the hierarchy for all of the existing bones. This hip bone allowed the whole skeleton to be manipulated at once, which will prove beneficial when making the character jump or crouch for example. Another master helper was created which was linked to the entire bone system including the existing helpers. This consequently allowed the whole skeleton to be moved anywhere within the scene which as a result will be handy during the Ident animations.
Master Hip Bone Master Hip Bone Crouch
Click for full-size image Click for full-size image
Final Skeleton
Front View Side View
Click for full-size image Click for full-size image
No comments:
Post a Comment