Unity強(qiáng)化篇(七) —— Unity Sprite Shapes簡介(一)

版本記錄

版本號(hào) 時(shí)間
V1.0 2019.11.12 星期二

前言

Unity是由Unity Technologies開發(fā)的一個(gè)讓玩家輕松創(chuàng)建諸如三維視頻游戲秽褒、建筑可視化星持、實(shí)時(shí)三維動(dòng)畫等類型互動(dòng)內(nèi)容的多平臺(tái)的綜合型游戲開發(fā)工具,是一個(gè)全面整合的專業(yè)游戲引擎臼朗。Unity類似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的圖型化開發(fā)環(huán)境為首要方式的軟件熟空。其編輯器運(yùn)行在Windows 和Mac OS X下伯复,可發(fā)布游戲至WindowsMac更哄、Wii芋齿、iPhone腥寇、WebGL(需要HTML5)、Windows phone 8和Android平臺(tái)觅捆。也可以利用Unity web player插件發(fā)布網(wǎng)頁游戲赦役,支持Mac和Windows的網(wǎng)頁瀏覽。它的網(wǎng)頁播放器也被Mac 所支持栅炒。網(wǎng)頁游戲 坦克英雄和手機(jī)游戲王者榮耀都是基于它的開發(fā)扩劝。感興趣的看下面幾篇文章。
1. Unity強(qiáng)化篇(一) —— 如何使用Vuforia制作AR游戲(一)
2. Unity強(qiáng)化篇(二) —— 適用于Unity的HTC Vive教程(一)
3. Unity強(qiáng)化篇(三) —— 適用于Unity的HTC Vive教程(二)
4. Unity強(qiáng)化篇(四) —— Unity 和 Ethereum(一)
5. Unity強(qiáng)化篇(五) —— Unity 和 Ethereum(二)
6. Unity強(qiáng)化篇(六) —— 使用Unity和Photon進(jìn)行多人游戲簡介(一)

開始

題外話:徐S职辅,最近總夢(mèng)見你棒呛,我家里下大雪??了,第一場(chǎng)雪域携,不能帶你回去看了~~

首先看下主要內(nèi)容

使用Unity Sprite Shapes簇秒,制作2D環(huán)境從未如此簡單。 最重要的是秀鞭,您只需要幾個(gè)sprite就可以開始使用趋观!

接著看下寫作環(huán)境

C# 7.3, Unity 2019.1, Unity

2D游戲一直很有趣,但是由于需要的所有資源锋边,制作2D游戲很快就會(huì)變得不知所措皱坛。使用Unity的Sprite Shapes,制作2D環(huán)境從未如此簡單豆巨。最重要的是剩辟,您只需要幾個(gè)sprite就可以開始!

Sprite Shape是包含指定給特定角度的sprites的資源往扔。在場(chǎng)景(scene)中時(shí)贩猎,Sprite Shape將沿其路徑平鋪指定的精靈(sprites)。它會(huì)根據(jù)其設(shè)置使將顯示的精靈變形萍膛。這使您可以使用簡單的工具和設(shè)置來創(chuàng)建復(fù)雜的幾何圖形吭服。

在本教程中,您將使用Sprite Shapes制作游戲蝗罗。在此過程中艇棕,您將學(xué)習(xí)以下關(guān)鍵組成部分:

  • 創(chuàng)建和修改Sprite Shape
  • 根據(jù)方向更改Sprite Shape串塑。
  • 使用Sprite Shape樣條曲線工具更改其形狀沼琉。
  • 為您的Sprite Shape添加變量。
  • 生成封閉式和開放式Sprite Shape拟赊。
  • 將碰撞體應(yīng)用于Sprite Shapes刺桃。

您需要在計(jì)算機(jī)上安裝Unity 2019.1(或更高版本)的副本才能繼續(xù)進(jìn)行。

有了Unity之后吸祟,打開Introduction to Sprite Shapes Starterr項(xiàng)目瑟慈。 加載項(xiàng)目后桃移,使用Project窗口打開RW文件夾,然后觀察文件夾結(jié)構(gòu):

分別包含以下內(nèi)容:

  • Animations:包含敵人和玩家的所有動(dòng)畫和動(dòng)畫控制器葛碧。
  • Physics Materials:包含用于播放器的高摩擦物理材料借杰。
  • Prefabs:當(dāng)前包含玩家,敵人和旗幟进泼。
  • Scenes:包含主要的游戲場(chǎng)景蔗衡。
  • Scripts:包含播放器,攝像機(jī)乳绕,SFX和游戲管理所需的所有腳本绞惦。
  • Sounds:包含游戲中使用的所有聲音。
  • Sprite Shapes:當(dāng)前是一個(gè)空文件夾洋措,您將在其中創(chuàng)建新的Sprite Shapes济蝉。
  • Sprites:包含玩家,敵人和環(huán)境的所有預(yù)制精靈菠发。

在開始使用Sprite Shapes之前王滤,必須從Package Manager中安裝它。 為此滓鸠,請(qǐng)從頂部菜單中選擇Window ? Package Manager雁乡。

Package Manager中,選擇Advanced ? Show preview packages并安裝2D SpriteShape程序包糜俗。

Scenes文件夾中打開MainScene踱稍,然后查看Game view。 您將看到一個(gè)空的藍(lán)天吩跋,將充滿美麗的Sprite Shapes寞射。


Creating the Sprite Shape Profile

Sprite Shape Profile是用于配置特定形狀類型的所有選項(xiàng)的資源。 在此資源中锌钮,您將分配要使用的精靈,并告訴Sprite Shape如何渲染它們引矩。

首先梁丘,您將創(chuàng)建所有不同的Sprite Shape Profile,然后進(jìn)入場(chǎng)景并將其添加到場(chǎng)景中旺韭。

要?jiǎng)?chuàng)建Sprite Shape Profile氛谜,請(qǐng)導(dǎo)航至Sprite Shapes文件夾,然后選擇Assets ? Create ? Sprite Shape Profile ? Open Shape区端。 將配置文件命名為Platform值漫。

選擇Platform Sprite Shape并查看Inspector; 在這里织盼,您可以更改配置文件的所有設(shè)置杨何。 在開始使用這些設(shè)置之前酱塔,這里是最重要的設(shè)置:

在本教程中,這些是您將要更改的設(shè)置:

  • Fill Texture:在封閉的形狀上危虱,Unity將平鋪該紋理以填充形狀的內(nèi)部羊娃。
  • Currently Selected Angle Range:使用旋轉(zhuǎn)滑塊,您可以選擇不同的角度范圍埃跷,這樣做將允許您修改該角度范圍的設(shè)置蕊玷。
  • Sprite Preview:這將預(yù)覽分配給該角度范圍的第一個(gè)sprite
  • Possible Sprites in Angle Range:允許您將多個(gè)sprites分配到一個(gè)角度范圍弥雹,以進(jìn)行變化垃帅。 您將在本教程的后面部分對(duì)此進(jìn)行詳細(xì)介紹。
  • 角精靈:這允許您為每個(gè)角分配sprites剪勿。

很高興知道理論上的一切贸诚,但是現(xiàn)在該為您的游戲創(chuàng)建一個(gè)平臺(tái)了!


Setting up the Platform Sprite Shape

Sprite Shapes包括兩種主要類型:

  • Close Ended:形狀的線段或曲線都已連接窗宦,這使Sprite Shape使用填充紋理赦颇。 圓形和正方形是Close Ended的,因?yàn)樗鼈儧]有松散的末端赴涵。
  • Open Ended:形狀實(shí)際上是一條線媒怯,用作將小塊平鋪sprites的路徑。 這種類型的Sprite Shape不允許填充紋理髓窜。
    平臺(tái)為開放式形狀扇苞; 現(xiàn)在您可以開始填寫空的“精靈形狀輪廓”資產(chǎn)。

1. Setting up an Angle Range

考慮到該platform是開放式(open-ended)Sprite Shape Profile寄纵,不需要多個(gè)角度范圍鳖敷。 Sprite Shape只需要一個(gè)角度范圍。

當(dāng)您將Sprite分配到某個(gè)角度范圍時(shí)程拭,Sprite將自動(dòng)旋轉(zhuǎn)以適合當(dāng)前角度定踱,因此,在創(chuàng)建Sprite時(shí)無需手動(dòng)定向恃鞋。

選擇您的Platform配置文件崖媚,并注意已經(jīng)為您創(chuàng)建了一個(gè)角度范圍,范圍從180-180度恤浪,基本上覆蓋了整個(gè)圓畅哑。

要將Sprite附加到角度范圍,請(qǐng)選擇Sprites下的+按鈕水由,然后選擇Platform Blank Sprite資源荠呐。

這就是您需要在平臺(tái)配置文件上完成的所有工作;但是,您可能會(huì)注意到泥张,平臺(tái)在sprite預(yù)覽中分為多個(gè)部分呵恢。 要獲得連續(xù)的長條,您需要編輯sprite圾结,但不要擔(dān)心Sprite編輯器會(huì)在這里提供幫助瑰剃。

2. Editing Sprite Borders

為此,請(qǐng)?jiān)?code>RW / Sprites / Other中選擇Platform Blank.png筝野,然后在檢查器中選擇Sprite Editor按鈕以調(diào)出Sprite編輯器晌姚。

sprite周圍的綠色控制點(diǎn)將是Sprite編輯器中的主要部分。 通過使用邊框歇竟,您可以告訴Sprite Shape應(yīng)該平鋪精靈的哪個(gè)部分挥唠,以及要用作邊框精靈(border sprites)的部分;邊框精靈只會(huì)在路徑的起點(diǎn)和終點(diǎn)渲染焕议。

調(diào)整邊框以確保僅將精靈的中間部分平鋪宝磨。 按Apply按鈕保存您的調(diào)整。

對(duì)RW/Sprites/Other中的Platform Flowers.png重復(fù)這個(gè)過程盅安,并將Platform Flowers附加到Platform配置文件的當(dāng)前角度范圍內(nèi)唤锉。

添加兩個(gè)sprites到一個(gè)角度范圍的原因是添加一些變化,而不必為每個(gè)精靈sprites創(chuàng)建多個(gè)Sprite Shape配置文件别瞭。


Creating Decorations with Sprite Shape

Sprite Shape可以用許多創(chuàng)造性的方式來減少工作量窿祥,并在你的精靈sprites中創(chuàng)造變化。在這種情況下蝙寨,您將創(chuàng)建一個(gè)包含樹的Sprite Shape晒衩,這些樹可以平鋪在您的地面上,充當(dāng)一些愉快的背景墙歪。

這個(gè)Sprite Shape的配置文件與Platform非常相似听系,所以使用Control+D(或Command+D)復(fù)制Platform配置文件,并將其重命名為Tree Decorations虹菲。

編輯Tree Decorations配置文件靠胜,用RW/ sprites /Other/Tree Decorations.png中的新精靈替換當(dāng)前的兩個(gè)精靈,并添加第三個(gè)精靈毕源。

按如下順序分配sprites:

sprite為空的原因是在Scene視圖中使用Sprite Shape時(shí)要留出間隙髓帽。

現(xiàn)在,您已經(jīng)創(chuàng)建了一個(gè)平臺(tái)platform脑豹,當(dāng)玩家離開地面時(shí),你的玩家可以跳轉(zhuǎn)到該平臺(tái)衡查。 您還添加了裝飾以使場(chǎng)景看起來不錯(cuò)瘩欺。 等一下! 您還沒有地面。 你為什么接下來不做呢俱饿?


Creating a Ground Sprite Shape

該過程類似于創(chuàng)建平臺(tái)(platform)歌粥。 但是,這一次拍埠,您將使用多個(gè)角度范圍失驶,填充紋理和角。

首先枣购,在Sprite Shapes文件夾中通過選擇Assets ? Create ? Sprite Shape Profile ? Open Shape并將其命名為Ground來創(chuàng)建一個(gè)新的Sprite Shape Profile嬉探。 也可以使用Closed Shape;但是棉圈,您將使用Open Shape來學(xué)習(xí)如何創(chuàng)建自己的角度范圍涩堤。 這次,這會(huì)有點(diǎn)困難分瘾,但會(huì)變得更加有趣胎围。

1. Creating Multiple Angle Ranges

要?jiǎng)?chuàng)建多個(gè)角度范圍,請(qǐng)?jiān)谒膫€(gè)不同的側(cè)面上選擇外環(huán)德召,然后使用StartEnd文本框設(shè)置其確切的角度范圍白魂。 確切的角度范圍如下:

  • 頂部:從45開始,到-45結(jié)束上岗。
  • 右:從-45開始到-135結(jié)束福荸。
  • 底部:從225開始,到135結(jié)束液茎。
  • 左:從135開始到45結(jié)束逞姿。

注意:以上屏幕截圖中帶有角度的綠色文本以及單詞TOP,LEFT捆等,RIGHTBOTTOM僅作為參考滞造。 它們不會(huì)出現(xiàn)在屏幕上。

現(xiàn)在已經(jīng)設(shè)置了角度范圍栋烤,以與平臺(tái)形狀相同的方式將sprites添加到每個(gè)角度范圍谒养,但是這次確保在開始添加精靈之前,選擇要編輯的正確角度范圍明郭。

方便地买窟,每個(gè)角度范圍都有一個(gè)對(duì)應(yīng)的名稱(如有必要,請(qǐng)參考上面屏幕截圖中的綠色文本)薯定,為每個(gè)范圍附加以下精靈:

注意:您可能想知道為什么所有的Sprite都朝上始绍,這是因?yàn)?code>Unity會(huì)根據(jù)角度自動(dòng)旋轉(zhuǎn)Sprite,因此希望Sprite朝上话侄。

2. Adding a Fill and Corners

Sprite Shape需要用作Close Ended形狀亏推,這意味著它將需要填充紋理学赛。 填充紋理為RW / Sprites / Other / Ground Fill Texture.png,確保將紋理的“環(huán)繞模式”(Wrap Mode)設(shè)置為“重復(fù)”(Repeat)非常重要吞杭。

立即執(zhí)行并應(yīng)用(Apply)更改盏浇。

這告訴Unity,可以平鋪紋理并填充紋理芽狗。 這對(duì)于正確填充形狀很重要绢掰。 現(xiàn)在,將紋理分配給Sprite Shape profile童擎。

通過將以下sprites插入各自的fields中來添加轉(zhuǎn)角紋理:

創(chuàng)建邊角和填充僅是將精靈指定給其正確fields的問題滴劲。

只要看一下Sprite預(yù)覽,它看起來就很漂亮柔昼! 您可能真的很高興將它們放到scene哑芹,所以有趣的部分來了!


Adding Sprite Shapes to the Scene

通過在層次結(jié)構(gòu)中選擇Create ? 2D ? Sprite Shape來創(chuàng)建Sprite Shape捕透。 命名GameObjectGround Object聪姿。

創(chuàng)建對(duì)象后,將Ground profile分配給Sprite Shape Controller組件內(nèi)Profile字段中的Ground Object乙嘀。 要獲得與下面的屏幕截圖相對(duì)應(yīng)的視圖末购,您需要單擊Edit Spline按鈕,然后選擇將在Scene視圖中顯示的節(jié)點(diǎn)之一虎谢。

您可能還需要確保Scene視圖處于2D模式盟榴。

Sprite Shape Controller中可以找到Ground Object的最重要設(shè)置。

Scene視圖中的黃點(diǎn)是當(dāng)前選定的節(jié)點(diǎn)婴噩。 Sprite Shape Controller中的大多數(shù)選項(xiàng)將直接影響此節(jié)點(diǎn)擎场。

這是最重要的設(shè)置:

  • Edit Spline - 編輯樣條線:啟用該功能后,您就可以在scene中重新布置几莽,添加和刪除樣條線上的節(jié)點(diǎn)迅办。 要添加新節(jié)點(diǎn),只需在樣條線的任意位置單擊鼠標(biāo)左鍵即可章蚣。 要?jiǎng)h除節(jié)點(diǎn)站欺,請(qǐng)選擇它,然后按Delete鍵纤垂。
  • Point Position - 點(diǎn)位置:這是點(diǎn)相對(duì)于GameObject的原點(diǎn)的位置矾策。
  • Point Mode - 點(diǎn)模式
    • Linear Mode - 線性模式:在此模式下,不會(huì)通過節(jié)點(diǎn)形成曲線峭沦。
    • Mirrored Mode - 鏡像模式:節(jié)點(diǎn)現(xiàn)在具有兩個(gè)鏡像切線贾虽,可以創(chuàng)建平滑的連接曲線。
    • Non-Mirrored Mode - 非鏡像模式:節(jié)點(diǎn)有兩個(gè)未連接的切線吼鱼,允許完全自由,但是曲線可能不會(huì)保持連接。
  • Height - 高度:修改精靈在該節(jié)點(diǎn)的高度仙辟,創(chuàng)建變化是很有用的雄右。
  • Sprite Variant - 精靈變體:這個(gè)精靈選擇器允許你在不同的精靈之間切換,你分配給當(dāng)前的角度范圍巷送。
  • Corner - 角落:你可以在DisabledAutomatic之間切換驶忌,如果你在配置文件中分配corners,它將在這里顯示笑跛。然而付魔,corners是有規(guī)則的。相鄰的兩個(gè)節(jié)點(diǎn)必須是線性點(diǎn)模式( Linear Point Mode)飞蹂,角節(jié)點(diǎn)本身必須是線性點(diǎn)模式几苍,角的角度也不能太苛刻。

如果角節(jié)點(diǎn)的角度太苛刻陈哑,那么分配的corner cap精靈將不適用妻坝。

  • Open Ended - 開放式:在開放式和封閉式之間切換。

是時(shí)候使用這些工具了!


Creating the Ground Shape Using the Tools

現(xiàn)在您已經(jīng)使用了一些工具惊窖,是時(shí)候?yàn)槟挠螒騽?chuàng)建基礎(chǔ)了刽宪。您將創(chuàng)建如下所示的地面:

每個(gè)節(jié)點(diǎn)都有一個(gè)重要的目的;例如界酒,您可能想知道為什么node 5可能很重要圣拄。

要修改節(jié)點(diǎn)的位置,請(qǐng)選擇節(jié)點(diǎn)并更改Sprite Shape Controller中的point position屬性毁欣。

每個(gè)節(jié)點(diǎn)的用途和位置如下:

  • 1) 這是角節(jié)點(diǎn)庇谆;因此,它是一個(gè)線性點(diǎn)凭疮,位于(X: -2, Y: 0.4)處饭耳。
  • 2) 這是一個(gè)鏈接節(jié)點(diǎn);它的唯一目的是滿足一個(gè)角落的條件哭尝。由于node 3是鏡像切線節(jié)點(diǎn)哥攘,因此node 1node 3之間必須有一個(gè)線性點(diǎn),以便在node 1處創(chuàng)建一個(gè)角材鹦。這個(gè)節(jié)點(diǎn)是一個(gè)線性節(jié)點(diǎn)逝淹,在(X: -0.8, Y: 0.4)處。
  • 3) 是一個(gè)鏡像的切線節(jié)點(diǎn)桶唐,它創(chuàng)建一個(gè)輕微的向下曲線栅葡。它位于(X: 0.095, Y: 0.4)
  • 4) 另一個(gè)鏡像切線節(jié)點(diǎn)尤泽,它從node 3創(chuàng)建一條平滑的曲線欣簇。它位于(X: 2, Y: -0.6)處规脸。
  • 5) 是一個(gè)鏈接節(jié)點(diǎn)。它是一個(gè)線性節(jié)點(diǎn)熊咽,其位置為(X: 4.13, Y: -0.6)莫鸭。
  • 6) 另一個(gè)角落節(jié)點(diǎn)。它是一個(gè)線性節(jié)點(diǎn)横殴,位于(X: 5, Y: -0.6)處被因。
  • 7) 是一個(gè)線性節(jié)點(diǎn)。它可以在(X: 5, Y: -2)處找到衫仑。
  • 8) 這是另一個(gè)角落梨与。你知道它是怎樣的——它是一個(gè)線性節(jié)點(diǎn),在(X: -2, Y: -2)處文狱。

做得好粥鞋!你只需設(shè)置你的第一個(gè)Sprite Shape從一個(gè)profile到一個(gè)好看的GameObject。是時(shí)候在游戲中加入一些角色了瞄崇。

1. Applying Collisions to Sprite Shape

為了讓角色與Sprite Shape互動(dòng)呻粹,它必須有一個(gè)對(duì)撞機(jī)。為此杠袱,向Ground Object添加一個(gè)Edge Collider 2D尚猿。你可能會(huì)注意到對(duì)撞機(jī)并不完全適合Ground Object的形狀,但是現(xiàn)在在Sprite Shape Controller中有更多的選項(xiàng)楣富。其中一個(gè)選項(xiàng)是offset凿掂;使用這個(gè)值使對(duì)撞機(jī)與Ground Object的輪廓相匹配。

一旦你添加了一個(gè)Edge Collider 2D纹蝴,你可以在Sprite Shape Controller中修改更多的選項(xiàng)庄萎。

  • Update Collider:當(dāng)你修改一個(gè)Sprite Shape的形狀,你想要更新碰撞器塘安,取消選擇它糠涛,并再次選擇它。
  • Detail:修改碰撞器的細(xì)節(jié)級(jí)別兼犯;細(xì)節(jié)越高忍捡,碰撞器就越平滑(增加細(xì)節(jié)可能會(huì)降低性能)。
  • Offset:從中心偏移到對(duì)撞機(jī)的邊緣切黔。

注意:一旦你在Sprite Shape Controller中改變了碰撞器選項(xiàng)砸脊,你就可以在Edge Collider 2D中使用Edit Collider按鈕來手動(dòng)將碰撞器與Ground Object的形狀相匹配。

現(xiàn)在是時(shí)候添加你的游戲英雄了!

將玩家PlayerRW/Prefabs拖放到場(chǎng)景中纬霞。確保玩家位于攝像機(jī)視角的中心凌埂,同時(shí)也要站在Ground Object上。從層次結(jié)構(gòu)中選擇Player GameObject(游戲?qū)ο?诗芜,并將其拖放到主相機(jī)Main Camera上的Camera Focus中的Player槽中瞳抓。

按下播放鍵埃疫,你可以在你的地面上移動(dòng)和跳躍。如果你不能從這些令人驚嘆的藝術(shù)中分辨出來孩哑,玩家就是一個(gè)程序員栓霜,他目前正在進(jìn)行一個(gè)編碼期間,并且在過去的兩天里沒有休息過臭笆。


Finishing up the Scene

創(chuàng)建一個(gè)新的Sprite Shape GameObject叙淌,稱為Middle Ground Object,并分配Ground profile愁铺,將GameObject移動(dòng)到Ground Object的右邊,留下一個(gè)小的空隙闻鉴。

使用前面討論的工具和技術(shù)形成一個(gè)五邊形茵乱,同時(shí)在Middle Ground Object上添加一個(gè)Edge Collider 2D,這樣玩家就可以與之交互孟岛。

1. Adding Platforms to the Scene

這個(gè)場(chǎng)景現(xiàn)在看起來有點(diǎn)無聊瓶竭,所以添加一些浮動(dòng)平臺(tái)來給它點(diǎn)愛。

創(chuàng)建一個(gè)新的Sprite Shape GameObject稱為Floating Platform渠羞,并附加Platform profile斤贰。不像Ground Object,這不是一個(gè)封閉的形狀次询,所以在Sprite Shape Controller中打開Open Ended選項(xiàng)荧恍。

用于修改Floating Platform的工具與用于Ground Object的工具完全相同。要?jiǎng)?chuàng)建平臺(tái)屯吊,請(qǐng)刪除底部的兩個(gè)節(jié)點(diǎn)送巡,只留下一個(gè)水平的平臺(tái)。利用Floating Platform填補(bǔ)兩個(gè)堅(jiān)實(shí)場(chǎng)地之間的空隙盒卸。不要忘記添加一個(gè)Edge Collider 2D和調(diào)整偏移(offset)以適應(yīng)碰撞器的sprite骗爆。

復(fù)制Floating Platform,并將其重命名為Floating End Platform蔽介;這就是你要放終點(diǎn)flag的地方摘投。

Floating End Platform放在Middle Ground后,讓玩家從Middle Ground跳上虹蓄。

這些是每個(gè)節(jié)點(diǎn)的位置和類型:

  • 1) 位于(X: -1, Y: 2)的線性節(jié)點(diǎn)犀呼。
  • 2) 位于(X: 0.45, Y: 2)的非鏡像切線節(jié)點(diǎn)。
  • 3) 位于(X: 2, Y: 2.8)的非鏡像切線節(jié)點(diǎn)武花。
  • 4) 位于(X: 4, Y: 2.8)的線性節(jié)點(diǎn)圆凰。

這個(gè)平臺(tái)會(huì)有點(diǎn)不同。在創(chuàng)建Platform profile期間体箕,您為相同的角度范圍分配了兩個(gè)不同的精靈专钉。要切換每個(gè)節(jié)點(diǎn)使用的sprite挑童,請(qǐng)選擇節(jié)點(diǎn)并在sprite variant區(qū)域中選擇要使用的sprite

將第一個(gè)和第三個(gè)節(jié)點(diǎn)更改為第二個(gè)sprite variant跃须,以便在平臺(tái)中創(chuàng)建一些變體站叼。

按下Play鍵,玩家應(yīng)該能夠在地圖上奔跑和跳躍菇民。如果玩家不能跳到平臺(tái)上尽楔,一定要降低平臺(tái)離地的高度,使其更容易跳到平臺(tái)上第练。這也是檢查所有Sprite Shapes是否有碰撞的好時(shí)機(jī)阔馋。

2. Applying Decorations to the Level

一切都很好,但是為了增加場(chǎng)景的趣味性娇掏,你需要添加一些背景裝飾呕寝。添加另一個(gè)Sprite Shape GameObject到場(chǎng)景中,并稱之為Tree Decorations婴梧。確保Sprite ShapeOpen Ended的下梢,它使用Tree Decorations profile

這種Sprite Shape可以平鋪在不同的地面和平臺(tái)上塞蹭,增加一個(gè)愉快的背景孽江。您將三個(gè)不同的精靈添加到Tree Decorations profile中。兩種類型的樹和一個(gè)空的精靈番电,使用sprite index你可以在這些精靈之間切換岗屏。

如果variation還不夠,還可以使用每個(gè)節(jié)點(diǎn)的height屬性钧舌。首先將節(jié)點(diǎn)大致與Ground Object的輪廓相匹配担汤。

添加一些節(jié)點(diǎn),并更改sprite index 洼冻,以創(chuàng)建更多的變化崭歧。

稍微改變一些節(jié)點(diǎn)的高度,使其看起來不那么重復(fù)撞牢。你可能需要調(diào)整節(jié)點(diǎn)的位置來將sprite放回地面率碾。

重復(fù)添加新的Sprite Shape GameObjects的過程,為每個(gè)地面和平臺(tái)添加Tree Decorations profile屋彪。完成之后所宰,場(chǎng)景應(yīng)該是這樣的:

你應(yīng)該感到自豪-根據(jù)幾個(gè)資源就可以創(chuàng)建如此美麗的場(chǎng)景!是時(shí)候把所有的東西都和一些很棒的游戲元素聯(lián)系起來了畜挥。

3. Tying up Game Elements

在添加任何敵人之前仔粥,通過分組ground objectsplatform objects來清理層次結(jié)構(gòu)。把裝飾物做成它們所在的平臺(tái)或地面的子屬,這樣如果你移動(dòng)地面躯泰,裝飾物也會(huì)隨之移動(dòng)谭羔。

你可能已經(jīng)注意到了左上角的計(jì)時(shí)器;這是為了看看你能多快完成關(guān)卡麦向。當(dāng)你到達(dá)終點(diǎn)時(shí)瘟裸,計(jì)時(shí)器就會(huì)停止。要添加完成诵竭,將旗子從RW/Prefabs拖到Floating End Platform上话告。

當(dāng)你按下播放鍵,一切正常時(shí)卵慰,旗子代表著勝利的甜蜜滋味沙郭,但你生活在一個(gè)并不完美的世界,總會(huì)有錯(cuò)誤擋住你前進(jìn)的道路裳朋。

將敵人從RW/Prefabs拖到Ground Object棠绘。你會(huì)看到一條水平的綠線穿過敵人;這是敵人要巡邏的道路再扭。您可以使用Enemy Controller的左點(diǎn)和右點(diǎn)修改此路徑。

復(fù)制敵人夜矗,并策略性地將其放置在場(chǎng)景周圍泛范,給自己一個(gè)挑戰(zhàn)(將敵人聚集在一個(gè)空的GameObject游戲?qū)ο笙拢员3謱蛹?jí)組織)紊撕。修改敵人的路徑以適應(yīng)它所處的地面罢荡。你的場(chǎng)景應(yīng)該是這樣的,所有的敵人:

要想贏对扶,你必須在最后到達(dá)終點(diǎn)区赵;如果你碰到一個(gè)敵人,你會(huì)死浪南,但如果你跳到敵人身上笼才,你可以摧毀它。

Play并控制您的咖啡驅(qū)動(dòng)的程序員成功構(gòu)建络凿,粉碎您前進(jìn)道路上的所有錯(cuò)誤!

您能比15秒做得更好嗎骡送?

如果您想了解有關(guān)Sprite Shapes的更多信息,請(qǐng)轉(zhuǎn)到Sprite Shape forum絮记。

后記

本篇主要講述了Unity Sprite Shapes簡介摔踱,感興趣的給個(gè)贊或者關(guān)注~~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市怨愤,隨后出現(xiàn)的幾起案子派敷,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件篮愉,死亡現(xiàn)場(chǎng)離奇詭異腐芍,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)潜支,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門甸赃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人冗酿,你說我怎么就攤上這事埠对。” “怎么了裁替?”我有些...
    開封第一講書人閱讀 157,490評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵项玛,是天一觀的道長。 經(jīng)常有香客問我弱判,道長襟沮,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評(píng)論 1 284
  • 正文 為了忘掉前任昌腰,我火速辦了婚禮开伏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘遭商。我一直安慰自己固灵,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評(píng)論 6 386
  • 文/花漫 我一把揭開白布劫流。 她就那樣靜靜地躺著巫玻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪祠汇。 梳的紋絲不亂的頭發(fā)上仍秤,一...
    開封第一講書人閱讀 49,842評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音可很,去河邊找鬼诗力。 笑死,一個(gè)胖子當(dāng)著我的面吹牛根穷,可吹牛的內(nèi)容都是我干的姜骡。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼屿良,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼圈澈!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起尘惧,我...
    開封第一講書人閱讀 37,741評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤康栈,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體啥么,經(jīng)...
    沈念sama閱讀 44,203評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡登舞,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悬荣。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片菠秒。...
    茶點(diǎn)故事閱讀 38,673評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖氯迂,靈堂內(nèi)的尸體忽然破棺而出践叠,到底是詐尸還是另有隱情,我是刑警寧澤嚼蚀,帶...
    沈念sama閱讀 34,339評(píng)論 4 330
  • 正文 年R本政府宣布禁灼,位于F島的核電站,受9級(jí)特大地震影響轿曙,放射性物質(zhì)發(fā)生泄漏弄捕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評(píng)論 3 313
  • 文/蒙蒙 一导帝、第九天 我趴在偏房一處隱蔽的房頂上張望守谓。 院中可真熱鬧,春花似錦您单、人聲如沸分飞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至讯檐,卻和暖如春羡疗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背别洪。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評(píng)論 1 266
  • 我被黑心中介騙來泰國打工叨恨, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人挖垛。 一個(gè)月前我還...
    沈念sama閱讀 46,394評(píng)論 2 360
  • 正文 我出身青樓痒钝,卻偏偏與公主長得像,于是被迫代替她去往敵國和親痢毒。 傳聞我的和親對(duì)象是個(gè)殘疾皇子送矩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容