Unity3d地形制作教程.docx
- 文档编号:12546226
- 上传时间:2023-04-20
- 格式:DOCX
- 页数:34
- 大小:1.83MB
Unity3d地形制作教程.docx
《Unity3d地形制作教程.docx》由会员分享,可在线阅读,更多相关《Unity3d地形制作教程.docx(34页珍藏版)》请在冰豆网上搜索。
Unity3d地形制作教程
Unity3d-地形制作教程
UsingTerrains使用地形
CreatinganewTerrain创建一个新的地形
AnewTerraincanbecreatedfromTerrain->CreateTerrain.ThiswilladdaTerraintoyourProjectandHierarchyViews.如要创建地形,点击Terrain->CreateTerrain.如下图所示
YournewTerrainwilllooklikethisintheSceneView:
刚创建好的地形在场景视图中如下图.
AnewTerraininSceneView
IfyouwouldlikeadifferentlysizedTerrain,chooseTerrain->SetResolutionfromthemenubar.ThereareanumberofsettingsthatrelatedtoTerrainsizewhichyoucanchangefromthisdialog.
点击Terrain->SetResolution,可以设置地形的大小.如下图所示.从上而下依次为地形的宽度,高度,长度,高度图像素,细节像素-草或其它细节贴图,像素,贴图像素—对应第二个及其之后的贴图,底层贴图像素-对应第一个贴图.
Settingtheresolutionofyourterrain.
Ontheaboveimage,therearevaluesthatcanbechanged.
Thesevaluesare:
∙TerrainWidth:
ThewidthoftheTerraininunits.
∙TerrainHeight:
TheheightoftheTerraininunits.
∙TerrainLength:
ThelengthoftheTerraininunits.
∙HeightMapResolution:
TheHeightMapresolutionfortheselectedTerrain.
∙DetailResolution:
Theresolutionofthemapthatcontrolsgrassanddetailmeshes.Forperformancereasons(tosaveondrawcalls)theloweryousetthisnumberthebetter.
∙ControlTextureResolution:
TheresolutionofthesplatmapusedtolayerthedifferenttexturespaintedontotheTerrain.
∙BaseTextureResolution:
Theresolutionofthecompositetexturethatisusedinplaceofthesplatmapatcertaindistances.
NavigatingtheTerrain
TerrainsworkabitdifferentlythanotherGameObjects.Mostnotably,thereisnoTransformGizmothatallowsyoutopositiontheTerrain.Instead,youuseBrushestopaintandmanipulateyourTerrain.IfyoudowanttorepositionaTerrain,youcanmodifyitsTransformPositionvaluesintheInspector.ThisallowsyoutomoveyourTerrainaround,butyoucannotrotateorscaleit.
地形对象与其他游戏对象有点不同,它没有转换轴,不可以通过鼠标直接改变它的坐标.如果要改变坐标,可以通过在属性面板修改.不过不可以旋转和缩放.
WhileyourTerrainisselectedintheHierarchy,youcangracefullynavigatetheterrainwiththeF(focus)key.WhenyoupressF,whereveryourmouseispositionedwillbemovedtothecenteroftheSceneView.Thisallowsyoutotouchupanarea,andquicklyzoomovertoadifferentareaandchangesomethingelse.IfyourmouseisnothoveringoveranareaoftheTerrainwhenyoupresstheFkey,theentireTerrainwillbecenteredinyourSceneView.
地形被选择后,按F按可以以鼠标点击位置为中心察看地形.如果没有用鼠标点击任何一点,会以整个地形为中心察看地形.
EditingtheTerrain编辑地形
WiththeTerrainselected,youcanlookattheInspectortoseesomeincrediblenewTerraineditingtools.
选择地形后,在属性面板会出现7个按钮以方便地形的编辑.从左到右依次为高度工具.特定高度工具.平滑工具.贴图工具.画树工具.细节工具.其他设置.如下图所示.
TerrainEditingToolsappearintheInspector
EachrectangularbuttonisadifferentTerraintool.Therearetoolstochangetheheight,paintsplatmaps,orattachdetailsliketreesorrocks.Touseaspecifictool,clickonit.Youwillthenseeashortdescriptionofthetoolappearintextbelowthetoolbuttons.
点击任何一个按钮,按钮下面都会出现关于此按钮的说明及相关的快捷键.
Mostofthetoolsmakeuseofabrush.Manydifferentbrushesaredisplayedforanytoolthatusesabrush.Toselectabrush,justclickonit.Thecurrentlyselectedbrushwilldisplayapreviewwhenyouhoverthemouseovertheterrain,atthesizeyouhavespecified.
每个工具都有不同的笔刷.选取笔刷后,在地形上都会出现蓝色图形表示笔刷的范围.
YouwilluseallofthesebrushesintheSceneViewtopaintdirectlyontoyourTerrain.Simplychoosethetoolandbrushyouwant,thenclick&dragontheTerraintoalteritinreal-time.Topaintheight,textures,ordecorations,youmusthavetheTerrainselectedintheHierarchyView.
花点时间熟悉这些工具.选取一个工具及笔刷,用拖放的方式就可以实时地编辑地形.F键,多用用这个键,你会发现没有它,修改地形是件困难与痛苦的事.享受它带来的方便吧…
Note:
Whenyouhaveabrushselected,moveyourmouseovertheTerrainintheSceneViewandpressF.ThiswillcentertheSceneViewoverthemousepointerpositionandautomaticallyzoomintotheBrushSizedistance.Thisisthequickest&easiestwaytonavigatearoundyourTerrainwhilecreatingit.
TerrainKeyboardShortcuts地形编辑的快捷键
WhileTerrainInspectorisactive,thosekeyboardshortcutscanbeusedforfastediting(allofthemcustomizableinUnityPreferences):
以下是地形编辑的快捷键.只有在地形被选取后才可用.
∙Shift-QtoShift-Yselectsactiveterraintool.Shift-Q到Shift-Y对应从左到右六个工具
∙Comma(,)anddot(.)cyclethroughactivebrush.逗号和句号向前或向后选取笔刷
∙Shift-comma(<)andShift-dot(>)cyclethroughactivetree/texture/detailobject.Shift-逗号和Shift-句号向前或向后选取树/贴图/细节物体.
以下是对各个工具的详细说明.
Height地形高度工具
UsinganyoftheTerraineditingtoolsisverysimple.YouwillliterallypainttheTerrainfromwithintheSceneView.Fortheheighttoolsandallothers,youjusthavetoselectthetool,andclicktheTerraininSceneViewtomanipulateitinreal-time.
使用地形工具画地形是很简单的.你所要做的就是选取工具,再用鼠标在地形上拖拽就可以实时地画出地形.不然,要画出游戏级别的地形,还要一张原画以及多多的练习.总体的思路就是先画高度,再分出层次,画贴图,画树以及增加细节.
Raising&LoweringHeight
ThefirsttoolontheleftistheRaiseHeighttool
.
第一个工具:
地形高度工具.
Withthistool,youpaintbrushstrokesthatwillraisetheheightoftheTerrain.Clickingthemouseoncewillincrementtheheight.Keepingthemousebuttondepressedandmovingthemousewillcontinuallyraisetheheightuntilthemaximumheightisreached.
使用这个工具,可以依据笔刷的类型及强度画出隆起或凹陷的地形(初始时不可用).按鼠标一次,就会隆起地形.按住鼠标同时拖拽,可以不断隆起地形.直到达到最大高度.如下图所示.
Youcanuseanyofthebrushestoachievedifferentresults使用不同的笔刷可以得到不同的效果.
Ifyouwanttolowertheheightwhenyouclick,holdtheShiftkey.如要凹陷地形,按住Shift键.如下图所示在做地形时,一个很重要的按键就是F键.多多用这个键吧.
Note:
Whenyouhaveabrushselected,moveyourmouseovertheTerrainintheSceneViewandpressF.ThiswillcentertheSceneViewoverthemousepointerpositionandautomaticallyzoomintotheBrushSizedistance.Thisisthequickest&easiestwaytonavigatearoundyourTerrainwhilecreatingit.
PaintHeight
ThesecondtoolfromtheleftisthePaintHeighttool
.
第二个工具,最大高度工具.可以设定最大高度,当达到这个高度后,地形就不再加高.周围高度一样时,就会变平.这个工具用于分出地形高度的层次.Shift键在这个工具上的用途是选取最大高度.
Thistoolallowsyoutospecifyatargetheight,andmoveanypartoftheterraintowardthatheight.Oncetheterrainreachesthetargetheight,itwillstopmovingandrestatthatheight.
Tospecifythetargetheight,holdShiftandclickontheterrainattheheightyoudesire.YoucanalsomanuallyadjusttheHeightsliderintheInspector.
Nowyou'vespecifiedthetargetheight,andanyclicksyoumakeontheterrainwillmovetheterrainupordowntoreachthatheight.下图所示,最大高度工具的应用.
SmoothingHeight
ThethirdtoolfromtheleftistheSmoothingHeighttool
.
第三个工具是高度平滑工具.用于再个不高度地形之间的过渡部分.这样地形不会有棱有角.如下图所示.
Thistoolallowsyoutosoftenanyheightdifferenceswithintheareayou'repainting.Liketheotherbrushes,painttheareasyouwanttosmoothintheSceneView.
WorkingwithHeightmaps高度图创建地形
Ifyoulike,youcanimportagreyscaleHeightmapcreatedinPhotoshop,orfromreal-worldgeographydataandapplyittoyourTerrain.Todothis,chooseTerrain->ImportHeightmap-Raw...,thenselectthedesiredRAWfile.You'llthenseesomeimportsettings.Thesewillbesetforyou,butyouhavetheoptionofchangingthesizeofyourTerrainfromthisdialogifyoulike.Whenyou'reready,clicktheImportbutton.OncetheHeightmaphasbeenappliedtotheTerrain,youcanedititnormallywithalltheToolsdescribedabove.NotethattheUnityHeightmapimportercanonlyimportgrayscalerawfiles.Thusyoucan'tcreatearawheightmapusingRGBchannels,youmustusegrayscale.
用Photoshop或其他3D软件导出灰度图可以使用灰度图来创建地形.灰度图的格式应为RAW格式.点击,Terrain->ImportHeightmap–Raw出现对话框,可以修改地形的大小.点击Import就可以创建地形了.创建好后,你可以使用所有的地形工具再进行编辑.Unity可以支持16位的灰度图.可以通过Photoshop,Bryce,Terragen这几个软件来创建灰度图.同样,可以在Unity中导出灰度图.在Terrain->ImportHeightmap-Raw...对话框中,点击Export.就OK.通过Terrain->Flatten....命令可以将地形整体设置一个高度.这个命令最好在最初使用.不然,做好的地形会变成平面.需要重新编辑.
UnityworkswithRAWfileswhichmakeuseoffull16-bitresolution.AnyotherheightmapeditingapplicationlikeBryce,Terragen,orPhotoshopcanworkwithaUnityHeightmapatfullresolution.
YoualsohavetheoptionofexportingyourHeightmaptoRAWformat.ChooseTerrain->ImportHeightmap-Raw...andyou'llseeaexportsettingsdialog.Makeanychangesyoulike,andclickExporttosaveyournewHeightmap.
Unityalsoprovidesaneasywaytoflattenyourterrain.ChooseTerrain->Flatten....Thisletsyouflattenyourterraintoaheightyouspecifyinthewizard.
Textures给地形加贴图
DecoratethelandscapeofyourterrainbytilingTerrainTexturesacrosstheentireterrain.YoucanblendandcombineTerrainTexturestomakesmoothtransitionsfromonemaptoanother,ortokeepthesurroundingsvaried.地形贴图就如角色贴图一样,是地形整体风貌.出于游戏整体性能和地形引擎数据结构的原因.地形的贴图数最好是4的倍数.
TerrainTexturesarealsocalledsplatmaps.Whatthismeansisyoucandefineseveralrepeatinghighresolutiontexturesandblendbetweenthemarbitrarily,usingalphamapswhichyoupaintdirectlyontotheTerrain.Becausethetexturesarenotlargecomparedtothesizeoftheterrain,thedistributionsizeoftheTexturesisverysmall.
Note:
UsinganamountoftexturesinamultipleoffourprovidesthegreatestbenefitforperformanceandstorageoftheTerrainalphamaps.
Tobeingworkingwithtextures,clickonthePaintTexturesbutton下图所示就是贴图画笔
intheInspector.
AddingaTerrainTexture为地形增加贴图
BeforeyoucanbeginpaintingTerrainTextures,youwilladdatleastonetotheTerrainfromyourProjectfolder.ClicktheOptionsButton->AddTexture....如图所示,OptionsButton->AddTexture....你需要为地形增加贴图,才能用贴图来画地形.第一个地形会作用于整个地形.第二个之后的贴图才能用笔刷画.重复以上步骤就可以为地形增加需要的贴图了.如果要更换贴图,就在当前贴图选取后(被选取的贴图会以高亮蓝色表示),点击EditTexture,之后就可以重新选取贴图.另一个RemoveTexture就是移除贴图.贴图尺寸越小,过渡会越自然.反之亦然.
ThiswillbringuptheAddTerrainTexturedialog.
TheAddTerrainTexturedialog在Splat中选取需要的贴图文件.第二三个参数是贴图的尺寸大小.
Fromhere,selectatileabletextureintheSplatproperty.Youc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Unity3d 地形 制作 教程