Proses pembuatan model game 3D Hard Surface

Bab 1 PENDAHULUAN

Saya memutuskan untuk menulis artikel kecil (besar) di sini tentang cara saya membuat model game. Secara umum, saya mulai membuat senjata ini, dan terpikir oleh saya bahwa saya dapat mencoba menggambarkan keseluruhan proses, tiba-tiba itu akan berguna bagi seseorang. Ini bukan hanya artikel pertamaku, tapi juga pekerjaan pertamaku sebagai desainer.





, , , .. , .. , , . , . , , , . . , , . , , , , .. , , , , . , , , 1.5-2 , . ( ), , , , , , .. . , , , . - , - , , . , . - , . "" "" .. . , "" "+", .





- 3ds Max 2017, Substance Painter, Substance Designer, Adobe Photoshop, UVLayout, xNormal Marmoset Toolbag, , () .





Low Poly , , . ( 1). , .





Gambar 1
1

, High Poly ( ), , , Low poly, . ( 2).





Gambar 2
2

. , , , .





Low Poly , ( 60), UV , , . , , . ( 3). .





Gambar 3
3

. , , , , . ( 4).





Gambar 4
4

, , . , , . ( ), , , , , , , , . , , . . , , .. , , . . - , - , , . , , , . , . , , . , , , , . , , , .





, , , . , , . , , , -, . , . , , , , , .





, . , , , , . , , , ( 2017), . . , «Flip», , . «EditNormals», , «Ctrl+A», «reset» . Edit Poly, Collapse to. , . «Utilites» ( 5)





Gambar 5
5

"Reset XForm" «Reset Selection», , Convert to Editable poly. , , . , , , , , 100% , ( ). . . , "Utilites" MAXSript, New Sript. , , Main Toolbar - , , .. , , «Edit Bottom Appearance». , , , , , . , 100000 , , 100000 Low Poly. , .OBJ. , , , , .





:





(

subobjectLevel = 4

actionMan.executeAction 0 "40021"

$.EditablePoly.SetSelection #Face #{1..100000}

$.EditablePoly.flipNormals 1

modPanel.addModToSelection (Edit_Normals ()) ui:on

actionMan.executeAction 0 "40021"

$.modifiers[#Edit_Normals].EditNormalsMod.SetSelection #{1..100000}

$.modifiers[#Edit_Normals].EditNormalsMod.Reset ()

modPanel.addModToSelection (XForm ()) ui:on

macros.run "Modifier Stack" "Convert_to_Poly"

subobjectLevel = 4

actionMan.executeAction 0 "40021"

$.EditablePoly.SetSelection #Face #{1..100000}

$.EditablePoly.flipNormals 1

modPanel.addModToSelection (Edit_Normals ()) ui:on

actionMan.executeAction 0 "40021"

$.modifiers[#Edit_Normals].EditNormalsMod.SetSelection #{1..100000}

$.modifiers[#Edit_Normals].EditNormalsMod.Reset ()

macros.run "Modifier Stack" "Convert_to_Poly"

modPanel.addModToSelection (XForm ()) ui:on

macros.run "Modifier Stack" "Convert_to_Poly"

clearSelection()

)








2.

UVLayout. ( ), , . , UVPipe 3Ds Max, , / . , UV, Padding (), , , 4, 20 . . ( 6+).





Gambar 6
6

( ), , , , , . , , , 15-20% , , UV. , ( ). , , , . , , , , , .





UV, Send, "UVLayout UV's" ( 7+), Edit Poly, Collapse To. , Unwrap UVW, , ( 8+), Unwrap UVW, . , , .





Gambar 7
7
Gambar 8
8

, 3Ds Max OBJ. ( 14). UVLayout, UVs New Edit. OBJ. 3Ds Max, , , , , , , , , , .





3.

Normal, Curvature Ambient Oclusion. , , , . , , , , . - , , , .





, , , , . , . . 10 Low Poly , 1, High Poly Cage, . , , , , , , , , . ( 9).





Gambar 9
9

Low High poly, Cage . Cage, . , , , , , , . , . , . Cage Low Poly . , , "Projection", , . , , Low Poly, High poly, Cage. Cage.





Cage, . , , , Low Ploly , , - , . , , , . . Cage Low poly , , , Low High poly , , . , Cage Low poly , , . Cage Push. Low poly ( Clone ) Push, , . , . «Collapse To», 1 ( 10).





Gambar 10
10

, , , , 2-4 . . ( 11)





Gambar 11
11

, , ( ), 10 , , 10 .





, , , ( ). , , , ( 12, 13), , , , , , , , .





Gambar 12
12
Gambar 13
13

Cage, . , . , , , , 1, 01, . , , , .





, , Low, High Cage, . .





:





Electric_Low_1





Electric_High_1





Electric_Cage_1





, , , ( 14).





Gambar 14
14

4.

xNormal, , . , 100%. , xNormal. , , High definition meshes High poly , Low definition meshes - Low Poly . Cage, Low poly , Browse external cage file . Baking options , , , , Normal, AO (Ambien Occlusion) Curvature, ( Normal Curvature Ambien Occlusion), . .TGA. , , , Substance Designer . padding (), Edge padding 2-4 4 , , 20 , , . , Substance Painter, mip mapping ( , , ), Substance Painter. Antialising (4). , Cage — Generate Map. , Cage , Low Poly , , . , Cage Low Poly. Cage , Tools, Ray distance calculator, Go, 10-15, Stop, Copy results Generate Map.





, Normal Curvature , , Marmoset Toolbag. , , Cage ( 15, 16).





Gambar 15
15
Gambar 16
16

, Cage, , ( 17, 18).





Gambar 17
17
Gambar 18
18

Substance Designer. , Substance Painter, . TGA. , , .





File - New Substance. OK. - , . , , 2 4 , 4 . Node - Blend, Add Node - Blend. , , Node - output. 2 Blend , 1 , . , Node - Blend, Node - output , . , . , ( 19+).





Gambar 19
19

AO (Ambient occlusion), . , , - , . . , . , - Normal. , , , . - High poly Low poly , , . - xNormal. , , OpenRL map renderer, , , Allow 100% occlusion, , ( 20+).





Gambar 20
20

, , , , . 2 3Ds max, 1 , 2 , Low High poly , , . 1 , Low poly , 2 High poly , . - ( 21). High Poly Low Poly, , , . , .PNG, , , , - . .





Gambar 21
21

( 22), , , , .





Gambar 22
22

, , . 3 . 1 - ( ), 2 - , , , . 3 - , . , , , . , High poly , Low Poly, , , , . 1 ( 23).





Gambar 23
23

, , ( 24).





Gambar 24
24

, , , (, ).





.





, , , , , . , , , , , , . , 3-4 , , 3 . , . ( 25 26). , . , , , .





Gambar 25
25
Gambar 26
26

AO. , Substance Painter, ( 27).





Gambar 27
27

5 . , OpenRL ( Normal 0 ), . , , , , ( , !), , . , . , , , . . , . Padding , , ( 28+).





Gambar 28
28

, , , , , — , , , - . , , ( 29+).





Gambar 29
29

RGB ( RGB), 20 ( 10 ) ( 30+).





Gambar 30
30

, ( 31+).





Gambar 31
31

20 , , 10 ( 32+).





Gambar 32
32

, . , , , , , .





, .PNG , , . , , padding , , , . , . TGA PNG, . - . , , .TGA , , .





, , . . . ( ), , . , , , , RGB , , , . , , , ( 33+), .





Gambar 33
33

, , - , , , . .





5.

. . Material ID, (Substance Painter SP) . , , . , 1, , , , Material ID. , . SP , . UV Material ID, , , . , , , , , , . , Material ID, 3Ds Max - Polygons — Material IDs, , , , Substance Designer . Slate Material Editor. Multi/Sub-object, , , , , , , , , , , , ( 34+).





Gambar 34
34

, Multi/Sub-object (set number) , , ( 35+).





Gambar 35
35

( , ), . , . - ( 36+). .





Gambar 36
36

, ( 14).





, , , SP. , , .





, Substance Painter Substance Designer , , . .





, , , , , . , PBR - Metallic Roughness, , .. - PBR - Specular Glossiness, , . Mesh, Low Poly . Normal map format, OpenGL. DirectX, , (Y) . , . . 4, 2. 4, 20482048, 4 . SP , , , . , . Add, . ( 37).





Gambar 37
37

, , (set ), Material ID 3Ds Max. , . , , Edit, Project Configuration . , , , . Material ID. , . , , , , . ( 38+).





Gambar 38
38

. Marmoset Toolbag. ( 39)





Gambar 39
39

7. PBR

. . TurboSquid, , PBR MetalRough PBR SpecGloss, , - BaseColor, Diffuse, Roughness, Metallic, Normal_DirectX, Normal_OpenGL, Emissive, Glossiness, MetallicSmoothness, Opacity, Specular, Ambient occlusion. 12 , , - , - . , . , Roughness Glossiness , . Normal_DirectX Normal_OpenGL , (Y). 2, , . , MetallicSmoothness, 2 , Metallic Glossiness, Glossiness . ( 40+).





Gambar 40
40

, ( 41+).





Gambar 41
41

1. tagra, , Substance Designer .





2. , , , .





3. (Dilation + transperenty), . , Dilation infinite 5 , - ( 42). ( 43).





Gambar 42
42
Gambar 43
43

, padding (), . , . , UV Mip Mapping, .. padding, 4 .





4. padding Mip Mapping. Mip Mapping , . , . 4 16-20 , , . , .





5. Override padding ( 3 , padding) 3 4 . , 3 4 , . . 2, 4, .. , , 4. - . , , .





, , ( 44).





Gambar 44
44

8.

. . , , .TGA. , 60 , 12 5 . Photoshop , - . Substance Designer . , , Node ( ) , Add Node. Blend, 5 4 . output , , , . , 1 . 60 , , , . 5 , , Blend Uniform Color, . , . Normal, , R-128, G-128, B-255, Emissive , Opasity . Blend. , BaseCollor ( 45+), , , .





Gambar 45
45

Glossiness Roughness, Glossiness Invert, Blend Uniform Color , ( 46+).





Gambar 46
46

Glossiness ( 47+) , Roughness. , .





Gambar 47
47

2 Metallic MetallicSmoothness. - Metallic, , MetallicSmoothness Glossiness, Photoshop, , , Substance Designer , .





, , TGA. ? , , 1 , , , Photoshop . ( RGB, R, G, B), , , , MetallicSmoothness Glossiness. , Substance Designer. , Level, ( 48+, 49+.). Level Histogram Luminance Channel Alfa Channel.





Gambar 48
48
Gambar 49
49

Blend, , . Grayscale Conversion ( 50+).





Gambar 50
50

RGB-A Merge, Blend , "RGB", "A", Grayscale Conversion, Output. , , Photoshop. , , , . ( 51+, 52+).





Gambar 51
51
Gambar 52
52

, , , Invert ( 53). , .





Gambar 53
53

, , 3Ds Max Material ID, . , SP Vray/Corona . , , , PRO TurboSquid, , . , 2, Vray Corona.





, 3D .





9. Vray/Corona

, . SP Vray/Corona render, . , , () Corona Vray, , , . , , , BaseColor . Corona Vray , 2, Normal ( OpenGL, DirectX) Glossiness ( ). Corona Duplicate, . , , , . , $mesh_$textureSet_Diffuse, $mesh - , $textureSet - , Diffuse - . , . - . , , ( 54+).





Gambar 54
54

, Diffuse RGB , BaceColor Alpha ( 55).





Gambar 55
55

. , RGB Gray Channel, , . Vray, Corona Height, , - , . , - Normal , . Opacity, , , PBR . ( 56+).





Gambar 56
56

PBR , , PNG. . , Corona Vray, , , . HDRI . , , , .





10. Corona

, Corona render. CoronaMtl, ( ) , , . ( 57+).





Gambar 57
57

Normal CoronaNormal . Normal map. , , , . Glossiness 1.0. , Vray, . , . ( 3 ) Vray, , , Corona . , . Vray , Corona - , , , Corona, - . - HDRI . , HDRI, "HDRI Haven", CoronaBitmap, HDRI HDR EXR, , , . 2 , Color Correction Corona Color Correction, , , . Scene Environment ( 58+).





Gambar 58
58

( 59+). .





Gambar 59
59

( 60). , .





Gambar 60
60

11. Vray

Vray. . , , , , , . , , VrayMtl ( 61+).





Gambar 61
61

, 1.0. , , Gamma - Override 1.0, 2.2. ( 62+).





Gambar 62
62

Normal, Glossiness. . , . , .. , Corona render. , Vray HDRI , VRayLight, ( 63). , VrayHDRI, HDR EXR, Mapping type Spherical. VRayLight, Texture, HDRI .





Gambar 63
63

Environment ( 8) (64 ).





Gambar 64
64

HDRI Environment GI environment. Phisical Camera, Exposure Gain - Target 12, Vray Light Multiplier - 55. , , , Normal , Vray , Normal 300.





( 65+).





Gambar 65
65

, , ( 66).





Gambar 66
66

, 3 , - Marmoset Toolbag, - Corona, - Vray ( 67).





Gambar 67
67

Vray Corona, . , , , , , . Vray , , .. , . , . . , , . , , TurboSquid CheckMate PRO.





Banyak sekali informasi di sini, akan sulit bagi pemula untuk mempelajari semuanya sekaligus, tetapi saya mencoba menyampaikan semuanya dalam bahasa yang paling sederhana. Saya harap artikel ini akan membantu seseorang, mungkin tidak terlalu banyak mengerjakannya, tetapi mungkin mencari cara yang lebih cepat dan lebih efisien. Terima kasih atas perhatiannya.





Penulis artikel ini adalah Yegor Surin








All Articles