1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu 3D Game Programming All in One- P18 doc

30 266 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề The Base Hero Model
Trường học University of Game Development
Chuyên ngành 3D Game Programming
Thể loại Tài liệu
Năm xuất bản 2023
Thành phố New York
Định dạng
Số trang 30
Dung lượng 1,9 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Scale the selected bottom vertices to 95 percent of original, as depicted in Figure 14.2.. Now select just the nine vertices in the lower left, as shown in Figure 14.8, and scale these t

Trang 1

Arbitrary Extrusion

Arbitrary Extrusion has much in common with Axial Extrusion, except that you extrudeyour base primitive shapes in whatever directions are necessary Like Incremental PolygonConstruction, this approach to modeling can be seen as similar to sculpting in clay

Machinery lends itself well to modeling with this technique

Topographical Shape Mapping

Topographical Shape Mapping is a method usually used to model terrain, like AxialExtrusion often is, except that Topographical Shape Mapping is best suited for automat-

ed operations rather than manually modeling

In the geographic sense, topographic data can be obtained from various government andprivate sources The data consists of, at a minimum, a coordinate and an altitude for eachmapped point on the real terrain's surface There are various algorithms and many pro-grams available that can read this data from a file and render a 3D view of the terrain inquestion The data files come in various formats depending on the agency that producesthem: DLG-O, DEM, SDTS, and DRG, to name just a few from that acronymic world

Normally this approach is used in one of the many available Geographic Information Systems (GIS), and there are tools that can convert this data into a format you can use for

modeling in games

Hybrids

Well, the Hybrid category is the catchall category Often it is prudent to combine niques in a single model—use the approach that works best for the component being cre-ated If you find yourself mixing techniques, most likely you will be doing a little bit ofIncremental Polygon Construction mixed with many shape primitives or using a fewprimitives mixed with a great deal of Arbitrary Extrusion

tech-The best point to be made here is that you should use what works best for you in your rent circumstances

cur-The Base Hero Model

The technique we are going to use is basically the Shape Primitives approach We willhand-modify various shape primitives to get the results we want

The kind of model we are going to make is primarily a segmented-mesh model An native would be a continuous-mesh model The difference is that in the segmented-mesh

alter-model, there are different, distinct objects or meshes for different components in themodel, whereas in the continuous-mesh model, the entire model has one large, convolut-

ed surface Our primary segments will be as follows:

Trang 2

For the head part of the model, we're going to use a cylinder with 12 faces on the tube,stacked 6 segments high That translates to a 6-stack, 12-slice cylinder, in MilkShape terms.

1 Open MilkShape, create a new document, and set the Point Size to 3 and the Grid

to 1⫻1 in the Preferences dialog box Save the new file asC:\3DGPAi1\resources\ch14\myhead.ms3d

2 Create a 6-stack, 12-slice cylinder as depicted in Figure 14.1 Size the cylindersuch that the bounds of the cylinder extend from about ⫺20 to +20 on all three

of the axes

3 Choose Select in Vertex mode and then select the bottom layer of vertices

4 Scale the selected bottom vertices to 95 percent of original, as depicted in Figure 14.2

5 Now select the top five rows of vertices,ignoring the bottom two rows, and scalethem to 95 percent

6 Next, scale the top four rows of vertices

to 95 percent

7 Repeat the scaling operation for the topthree, then the top two, and finally thetop row by itself You should now have acylinder with a bit of a bevel at the bot-tom that tapers gently toward the top, asshown in Figure 14.3

Figure 14.1 The initial cylinder.

Trang 3

8 Next, shift the top five layers of thecylinder toward the back, so that therearmost vertices (designated A, high-lighted in black, in Figure 14.4) line

up, at the back, with the layer of tices that is second from the bottom (B

ver-in Figure 14.4) They don't have to bealigned precisely, but try to get thempretty close, as shown in Figure 14.4

9 Next, working from the Side view (TopRight viewport), select the bottom sixvertices visible in that view (at theright side of the view) and move themdown and to the right a bit Figure14.5 shows which vertices you wantand how far to move them These ver-tices make up the jaw

10 Select all the vertices in the model, andscale to 75 percent in the Y-axis only

Do this by typing the value 0.75 into

the Y scale box when you have the Scaletool selected and then clicking Scale

t i p

The view in what MilkShape calls the Left port is for us actually the Right view (or RightSide view) located in the upper-right frame,because Torque's coordinate system is orienteddifferently It's because of this that I normallyuse MilkShape with the Show Viewport Cap-tion option under the Window menu turned off,

view-in order to avoid confusview-ing myself

11 Now, using the same technique ofselecting and moving (without doingany scaling) as used in steps 4 to 9above, shape the model as near as youcan get to Figure 14.6 This is theRight Side view (upper right frame)

You only need to work in this view,

Figure 14.2 Selecting the bottom vertices.

Figure 14.3 Tapering the cylinder.

Figure 14.4 Shifting the layers.

Trang 4

and no other, and only use the Selectand Move tools Now you can see thehead shape taking form in profile, withthe nose jutting out.

12 Okay, this next part gets a bit tricky.Using the Right Side view, select the 16vertices in the lower-left corner (which

is the lower back of the head/upperrear neck area), as shown in Figure14.7

13 Scale this group of vertices to 80

per-cent by typing 0.8 in the X-axis scale

box, and then click Scale

14 Now select just the nine vertices in the lower left,

as shown in Figure 14.8, and scale these to 80 cent again

per-What this does is make the jaw and cranium parts

of the head stand out in an exaggerated fashion

By doing the scaling incrementally on the vertices

in the region like that, we get a fairly smoothshape Take a moment to swivel the model around

in the 3D view, and you can now see a definite toonlike big-jawed, low-browed heroic figure tak-

car-ing shape Okay, so not all heroes look like that.

But we're making a game, right? So make it fun!Now, as cute and lovable as that beetle-browedlook is, it's a bit too Cro-Magnon and roboticlooking, so we need to tone down the foreheadand eyebrow area somewhat

15 In the Right Side view, in the row of vertices that

is second from the top (see Figure 14.9), select thevertex that is the second from the right (in thetemple area) by dragging the Selection toolaround it This will have the effect of selectingthat vertex and any others that are obscuredbehind it There happens to be one more backthere, so you will end up with two verticesselected, which you can see by examining themodel in other views

Figure 14.5 Shaping the jaw.

Figure 14.6 Shaping the head.

Figure 14.7 Back of the

head/upper neck

Trang 5

16 Drag the tices back (tothe left) a fewticks.

ver-17 Switchingnow to theFront view(upper leftframe), scalethose two ver-tices by 120percent in theX-axis This has the effect of widening the gapbetween them (See Figure 14.10.) These stepshave the effect of softening the sharp corners, justenough to make the head more organic looking

18 Still with the Front view, select all the vertices inthe top three rows, which is mostly the craniumarea, and then incrementally apply 90 percent X-

axis and Z-axis scaling to them—as you did

ear-lier: top three, then top two, and so on Figure14.11 shows the results we are looking for here

19 If you haven't saved your work recently, do it now

No particularreason, otherthan it's goodpractice We'regetting close tofinished withthe head

20 Using Figure14.12 as aguide, select thethree ear ver-tices in theRight Side view

21 Stretch the ear vertices apart by scaling them 170 percent in the X-axis, as shown

in Figure 14.13

Figure 14.8 The smaller back of

the head area

Figure 14.9 The temple vertices.

Figure 14.10 Scaling the temple

vertices

Figure 14.11 Scaling the cranium.

Trang 6

22 Now back in the Right Side view, guided by ure 14.14, select the three columns of vertices atthe rear of the head.

Fig-23 Drag them forward so that the rightmost column

of selected vertices is just behind the unselectedcolumn (the fifth column), as shown in Figure14.15

24 Next drag the two columns at the back of thehead forward, so that you end up with a configu-ration like the one depicted in Figure 14.16

25 By now, youshould be get-ting fairly adept

at using theSelect, Move,and Scale tools

in MilkShape,

so I'll give you alittle assign-ment: Make thescalp region atthe top of thehead look likethe scalp shown

in Figure 14.17,using just thesethree tools andoperating only

on the top row

of vertices Youwill have towork in boththe Front andSide views whilemonitoringyour progress inthe 3D view

Figure 14.12 The ear vertices.

Figure 14.13 The scaled ear

Trang 7

26 Next, use the same techniques to shapethe nose and eyes Figure 14.18 showswhich vertices to use to shape the nose.

Scale the vertices by 50 percent in theX-axis

27 Shape the eye-socket vertices shown inFigure 14.19 by scaling to 30 percent inthe X-axis

28 Now, this entire work should exist asone group Rename that group as "head"

in the Groups tab in the toolbox

29 Save your work as C:\3DGPAi1\

resources\ch14\myhead.ms3d By saving the head

in its own file,you can keep itsafely out of theway while youwork on theother parts

And there you haveit—as you can see

in Figure 14.20,steely-eyed, big-jawed, beetle-browedgenuine dyed-in-the-wool hero material!

The Torso

Like the head, thetorso will be based onthe cylinder shape,but this time we willuse two of them andweld them together

1 If you have thehead file still open, leave it open If you don't have it open, then open it

Figure 14.17 Shaping the scalp.

Figure 14.18 The nose vertices before scaling.

Figure 14.19 The eye-socket vertices after scaling.

Trang 8

2 Save the file as C:\3DGPAi1\resources\ch14\mytorso.ms3d We want to have thehead around to use as a sizing guide when

we start the torso model, and then we willdelete it

3 Drag the head mesh up until it is three orfour grid lines above the model origin(the 0,0,0 coordinate), as suggested in Figure 14.21

4 Use the Cylinder shape, and make onethat has 6 segments, or stacks, and 12slices, or faces Give the name "chest" tothe group it creates

5 Rotate the cylinder by 90 degrees in boththe X- and Y-axes

6 Move and scale the cylinder until it has the samerelationship to the head, as shown in Figure 14.22

7 Turn the Auto Tool option off, if it is on

8 In the Front view, select all the vertices from oneend of the cylinder, then hold down the Shift key,and drag over the vertices at the other end of thecylinder to select them as well These vertices formthe cylinder caps for either end

9 Scale the vertices to 50 percent in the Y- and axes

Z-10 Drag the vertices up until the top onesare in line with the top of the cylinder.Figure 14.23 shows what the resultshould look like

11 If you like to use the Auto Tool option,turn it back on now

12 In the Front view, select the right-handend cap, and rotate it by ⫺20 degrees inthe Z-axis

13 Now rotate the left-hand end cap by +20degrees in the Z-axis

Figure 14.20 The finished hero head.

Figure 14.22 The relationship of the chest

cylinder to the head

Figure 14.21 Positioning the

head mesh

Trang 9

14 In the Groupstab in the tool-box, choose thehead group anddelete it Thisgets it out ofthe way so itwon't clutterour model Wehave the headsaved sepa-rately, so noworries here.

15 In the Top view, select the two vertices

in the middle at the bottom, in the area

of the sternum, as shown in 14.24, andmove them toward the inside of thechest a bit Use Figure 14.24 as a guide

16 Now you'll do the same for the back asfor the front, but just slightly differ-ently, for a different effect In the Frontview, select all the vertices in the topthree rows, including the ones that are

in the end caps

17 Hide these vertices, using Edit, HideSelection

18 Now in the Top view, select the middle three tices at the top of the view, as shown in Figure14.25 These are the middle back vertices

ver-19 Move the middle back vertices toward the inside

of the chest a bit, just as you did with the num, but perhaps not quite as much

ster-20 Create another new cylinder (to be named "ab"),and give it the same 90 degree rotation in the X-and Y-axes

21 Move and scale the ab cylinder until it has thesame relationship with the chest, as shown inFigure 14.26

Figure 14.23 The cylinder caps after scaling and moving.

Figure 14.24 The sternum vertices after

moving

Figure 14.25 The middle back

vertices

Trang 10

Now we have our primitive abdomeninserted We're going to have to splicethat mesh onto the chest mesh in order

to complete the torso It's actually notterribly hard to do, and after you'vedone it once, it will seem intuitivelyeasy But there are quite a few fiddly lit-tle steps involved to get there from here

So please be patient

22 Using the Groups tab, hide the ab mesh

23 In the Right Side view, select the tom vertices, as shown in Figure 14.27,and then hide them using Edit, HideSelections

bot-24 Back to the Groups tab, unhide the ab mesh.Don't use the general Unhide All command,because we want the chest vertices that we justhid to stay hidden

25 In the Right Side view again, select the verticesshown in 14.28 and drag them up so they aredirectly over the location where the hidden ver-tices for the chest are Study Figure 14.28, whichshows the vertices selected and dragged into posi-tion Compare it with Figure 14.27 to get a sense

of the right place to put the vertices The tion of lines shown by the white arrow in Figure14.28 does not get a vertex at this time—we willdeal with that shortly

intersec-26 In the Front view, locate the end cap vertices, asshown in Figure 14.29, and drag them out to theposition indicated in that figure

27 Next, do the same for the vertices to the left of theprevious set Drag them to exactly the same place

as the previous set, as shown in Figure 14.30

28 Repeat steps 26 and 27 for the other end of the abmesh

29 Drag the next set of vertices over to the chestpositions, as shown in Figure 14.31

Figure 14.26 The ab cylinder relative to the

chest

Figure 14.27 Hiding the lower

chest vertices

Figure 14.28 The ab vertices

dragged over on top of the chestvertices

Trang 11

30 Repeat thedrag opera-tion for theother end.

You shouldnow havesomethingthat closelyresembles thelayout in Figure 14.32

31 Zoom in onall the placesthat youdragged ver-tices to, andmake surethat they areexactly overthe line inter-sections ofthe chest tri-angles

32 In the RightSide view,select and hide all vertices on a line from thecenter of the cylinder forward (with forwardbeing toward the right of the view) Figure 14.33shows the vertices we're interested in

33 Back in the Front view, select the center vertex atthe top of the ab cylinder, as depicted in Figure14.34 If you've done step 32 correctly, then asyou scan around the other views, you will seethat only one vertex has been selected

34 Switch to the Right Side view and drag that lonevertex up to the spot that I pointed out with thewhite arrow way back when in Figure 14.28

You should now have a configuration that looks like the one shown in Figure14.35 Again, take the time to zoom in and ensure that all the dragged vertices areexactly over the line intersections of the chest triangles

Figure 14.29 Dragging some

end cap vertices over on top ofchest vertices

Figure 14.30 Dragging the end

cap neighbor vertices over on top

of the chest vertices

Figure 14.31 Dragging the next

set of vertices into position

Figure 14.32 The final Front

view layout

Figure 14.33 Select and hide

these vertices

Trang 12

35 Unhide all the hidden vertices using the Edit,Unhide All command.

36 Select all the vertices from both meshes located atthe places where you placed the dragged vertices.It's probably best to do this with the Right Sideview, as I did in Figure 14.35 These are the ver-tices of each mesh, chest and ab, that share thesame locations

37 Choose Vertex, Snap To Grid This should havethe effect of forcing the closely adjacent vertices

of each mesh to exactly align on the grid tions However, if your vertices weren't alignedclosely enough earlier, then they might diverge, asyou can see happened to me in Figure 14.36.That's because I didn't take my own advice tozoom in and tweak each moved vertex position to

loca-be exactly right

It should be pretty obvious where the misalignedvertices have to go If you have any that wanderedoff like I did, go back to the Right Side view andthe Front view and move the wayward vertices intoposition Then repeat the Snap To Grid operation

38 Compare your results with the images in Figure14.37, making sure you have the same thing asshown there

39 If they aren't already selected, reselect the verticesshown back there in Figure 14.35

40 And now the moment we've all been waiting for:Choose Vertex, Weld Vertices

All vertices that share identical common nates will be "welded" together This basicallymeans that superfluous copies of vertices will bedeleted, and the polygons that we're defining will

coordi-be reattached to the remaining single copy ofeach vertex

41 In the Groups tab in the toolbox, choose bothmeshes, the chest and ab, so that they are bothselected and highlighted in the wire-frame views

42 Click Regroup, and then rename the newly consolidated group as "torso"

Figure 14.34 The top center

cylinder vertex

Figure 14.35 Selecting the

common chest and ab vertices

Figure 14.36 After snapping to

grid…oops!

Trang 13

You can nowconsider thetorso to be fin-ished However,you can proba-bly see areaswhere you canmake obvioustweaks andadjustments Idid a few, just

to make theintegration of the back and the behind

as well as the chest and the frontabdomen a bit more natural looking Ialso added a wee bit of "anatomicalcorrectness," so to speak Figure 14.38shows the results of my tweaks Itshould be fairly painless for you toduplicate these adjustments The onlyoperations I performed were Select(Vertex) and Move

43 Save your mytorso.ms3d file so youdon't lose all your work

Matching the Head to the Torso

Now we should make sure that the torso and the head match correctly

1 Choose File, Merge and browse until you find your head file, which should be atC:\3DGPAi1\resources\ch14\myhead.ms3d Your head mesh will be loaded in,centered around the origin

2 On the Groups tab in the toolbox, choose the new object (your torso mesh will becalled "torso", so the merged head mesh will be the other one) Rename it as

"head"

3 Click the Select button so that the head mesh is highlighted (and the torso meshisn't), drag the head up in either the Front or the Side view, and position it asshown in Figure 14.39

I see two things I don't like right away—the head is bigger than it should be, and it

also seems that its shape is a little too…ummm…blah This isn't hard to fix, however.

4 Scale the head to 75 percent in the Y-axis only

Figure 14.37 The well-aligned vertices.

Figure 14.38 The final torso.

Trang 14

5 Move the head down until it just touchesthe top of the torso.

6 Rotate the head by 5 degrees around theX-axis so that the face is pointing a littlebit down, as shown in Figure 14.40.There, that's more like it! Now to fiddlewith the torso some more

7 Select the vertices that form the shouldersockets on both sides of the torso, usingFigure 14.41 as a guide

8 Scale the vertices to 60 percent in the and Z-axes

Y-9 Save your work as C:\3DGPAi1\

resources\ch14\mytorso.ms3d

As we create the remaining parts of themodel, we'll add them to this model by merg-ing as we go along

The Legs

When we start the legs, we'll want to keep thetorso mesh around to use as a sizing refer-ence, at least for the first little while However,

we won't need to have the head mesh in there,cluttering things up, so we'll get rid of that

1 If you haven't already, save your torso asC:\3DGPAi1\resources\ch14\mytorso.ms3d

2 Now save your file

as C:\3DGPAi1\resources\ch14\mylegs.ms3d

3 Delete the headmesh using theGroups tab in thetoolbox

Figure 14.39 Matching head to torso.

Figure 14.40 The reshaped head.

Figure 14.41 The shoulder socket vertices.

Trang 15

4 Select the torso mesh and drag it up about one torso's length above the origin.

5 Create a cylinder with 3 segments (stacks) and 12 slices (faces), and position andshape it as shown in Figure 14.42 This is the foot

6 Create another cylinder and rotate it 90 degrees in the Z-axis, making sure that it isoriented so it runs left to right where the knee would be

7 Using Figure 14.43 as a guide, move the vertices of the top of the foot up to meet theknee cylinder

By now you'veprobably real-ized that almosteverything fromhere on is more

a matter of styleand taste, andless of tech-nique So youshould feel free

to go ahead anddeviate fromthe specificconstructiondetails if youthink of some-thing you mightlike better

8 Reshape theknee cylinder asshown in Figure 14.44

9 Select the footcylinder andrename it as

"LeftFoot"

10 Create twomore cylinders,and orient them

as shown inFigure 14.44 tomake the upperleg and hip

Figure 14.42 Shape and placement of the foot.

Figure 14.43 The knee.

Figure 14.44 The left thigh.

Ngày đăng: 26/01/2014, 18:20