最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

FPS Microgame 的法老之鷹MOD制作分享

2020-03-07 15:10 作者:皮皮關(guān)做游戲  | 我要投稿

作者:Truly

上次簡單介紹了FPS Microgame的玩法,不知道小伙伴們有沒有制作出自己喜歡的MOD呢?由于在道具里看到有火箭背包,突然聯(lián)想到守望先鋒里的法老之鷹,因此萌生了能不能制作一個法老之鷹MOD的想法。一翻搗鼓之后,成品如下:

接下來我們打開FPS Microgame工程的MainScene場景,開始修改吧~

一、推進背包

1 空格鍵噴氣懸浮

首先從最簡單的部分開始,由于推進背包的腳本已經(jīng)寫好掛在角色身上,我們只需要調(diào)節(jié)參數(shù)就能大約地模擬一下法雞浮空的手感。

(1)解鎖:解鎖之后,游戲開始就能立刻使用火箭背包。

在Hierarchy窗口里選中Player,在Inspector窗口里找到Jetpack腳本,勾選Is Jetpack Unlocked At Start。


(2)調(diào)節(jié)懸浮參數(shù)

找到Durations部分參數(shù),調(diào)節(jié)參數(shù)(僅供參考,小伙伴們可以自行優(yōu)化):

  • Consume Duration:2,如果一直按著空格鍵,噴氣背包可持續(xù)使用秒數(shù)(可以理解為燃料值)。

  • Refill Duration Ground:?3,在地面完全填充燃料值所需的秒數(shù)(值越小,填充速度越快)。

  • Refill Duration In The Air:3,在空中完全填充燃料值所需的秒數(shù)(值越小,填充速度越快)。

  • Refill Delay:0.2,停用懸浮(放開空格鍵)多久后開始填充燃料。

調(diào)節(jié)完成后可以試下手感哦,沒有制作shift推進之前需要先跳一下才能空格控制浮空。


2 Shift鍵噴射升空

(1)守望先鋒中法雞Shift可以噴射上升一段距離,由于FPS Microgame里設(shè)置Shift是奔跑,且只有治療兵76的Shift才是奔跑,因此需要在腳本中做一些改動,打開PlayerCharacterController腳本:

①聲明并獲取Jetpack變量

public class PlayerCharacterController : MonoBehaviour

{

??? //...

??? Jetpack jetpack;

??? void Start()

??? {

??????? jetpack = GetComponent<Jetpack>();

??????? //...

??? }

}

?

②找到void HandleCharacterMovement(),這是控制角色移動的方法。

③找到聲明bool isSprinting的地方修改為:

這樣設(shè)置之后,在推進背包解鎖的情況下,就不會奔跑了。


(2)編寫推進背包功能

①在Jetpack腳本的Update()中添加以下語句,當按下左Shift鍵的時候,執(zhí)行噴射方法Jet()。

public class Jetpack : MonoBehaviour

{

??? void Update()

??? {

??????? //...

??????? if (Input.GetKeyDown(KeyCode.LeftShift) && isJetpackUnlocked)

??????? {

??????????? Jet();//噴射上升

??????? }

??? }

}

?

②噴射方法

  • PlayerCharacterController腳本 中的m_LastTimeJumped?變量修飾符改為public,方便在Jetpack腳本中調(diào)用。

  • Jetpack腳本聲明噴射速度jetUpSpeed。

  • 噴射時修改角色豎直向上的速度(characterVelocity的Y方向的值),并且刷新m_LastTimeJumped,免去起飛時的地面檢測,否則會被往地上吸。

public class Jetpack : MonoBehaviour

{

??? //...

??? public float jetUpSpeed=26f;

??? //...

??? public void Jet()

??? {

???? ???m_PlayerCharacterController.m_LastTimeJumped = Time.time;

??????? //抵消向下的速度

??????? var tempV = m_PlayerCharacterController.characterVelocity;

??????? tempV.y = 0;

??????? m_PlayerCharacterController.characterVelocity = tempV;

??????? m_PlayerCharacterController.characterVelocity += Vector3.up * jetUpSpeed;

??? }

}

?

推進背包的主要功能基本就改造完成了,還有冷卻時間之類的細節(jié)追求完美的小伙伴可自行添加~

二、武器制作

1 火箭發(fā)射器

法雞的火箭發(fā)射器是單發(fā)、無擴散的、6發(fā)彈藥,那么我們開始設(shè)置吧~

(1)打開文件夾Assets > FPS > Prefabs > Weapons,找到Weapon_Blaster預(yù)制體,Ctrl+D復(fù)制做好備份。

(2)雙擊Weapon_Blaster進入預(yù)制體編輯模式。

(3)在Inspector窗口中找到Weapon Controller腳本組件,調(diào)節(jié)以下參數(shù):

①Shoot Parameters(射擊參數(shù)):

  • Delay Between Shot(射擊間隔):0.5,兩槍的最短間隔時間為0.5秒。

  • Bullet Spread Angle(發(fā)射角度):0,無擴散。

  • Bullets Per Shot(每次發(fā)射子彈數(shù)):1,每次射1顆子彈。

②Ammo Parameters(彈藥參數(shù)):

  • Ammo Reload Rate(每秒填充彈藥的速度):6,每秒恢復(fù)6次發(fā)射次數(shù)。

  • Ammo Reload Delay:0.5,停止開火0.5秒后開始恢復(fù)發(fā)射次數(shù)(換彈)。

  • Max Ammo(最大彈藥數(shù)):6,表示最多可以連發(fā)6次。


2 火箭彈

武器參數(shù)已經(jīng)調(diào)節(jié)完成,接下來開始設(shè)置火箭彈。

(1)創(chuàng)建火箭彈預(yù)制體

① 在Hierarchy窗口中新建空的GameObject,重命名為Projectile_Rocket,并且Reset?Transform。

② 把Projectile_Rocket拖進文件夾Assets > FPS > Prefabs >?Projectiles,生成預(yù)制體,然后刪除Hierarchy窗口中的Projectile_Rocket。

③?雙擊Projectile_Cookie打開預(yù)制體:

  • 打開文件夾Assets > ModAssets >?SpaceProps

  • 把Rocket拖動到Hierarchy窗口的Projectile_Rocket下,作為其子對象。

  • 調(diào)節(jié)Rocket的Transform組件參數(shù):Rotation:(90,0,0);?Scale:(0.05,0.05,0.05)。設(shè)置后火箭頭的朝向就是移動的方向。


(2)添加腳本并設(shè)置參數(shù)

通過以上操作便完成了火箭彈的外觀設(shè)置,下邊來要完成腳本上的設(shè)置。

①在Hierarchy窗口中選中Projectile_Rocket,在Inspector面板中搜索并添加添加腳本:

  • ProjectileBase(發(fā)射物基礎(chǔ)腳本)

  • ProjectileStandard(用于調(diào)節(jié)子彈的碰撞判定、飛行速度和傷害等)

  • DamageArea(傷害范圍)


②設(shè)置ProjectileStandard參數(shù)

a 設(shè)置碰撞相關(guān)參數(shù)

  • 在Rocket下新建空物體,命名為Tip,并且移動到火箭的位置。

  • 在Rocket下新建空物體,命名為Tail,并且移動到火箭的位置。

  • 把Tail拖進ProjectileStandard腳本的Root中進行賦值。

  • 把Tip拖進ProjectileStandard腳本的Tip中進行賦值。

  • Radius:0.1,把炮彈的檢測半徑設(shè)為0.1。


b 設(shè)置Movement炮彈移動相關(guān)參數(shù)

法雞的火箭彈不是即時命中的子彈,因此飛行速度相對子彈來說較慢。

  • Speed(飛行速度):30。

  • Trajectory Correction Distance(軌道修正距離):10,炮彈在飛行前10米的過程中,會漸漸修正到發(fā)射時屏幕中心正方向的軌道上。

c 設(shè)置傷害

  • Damage:120。


③設(shè)置DamageArea參數(shù)

火箭彈具有濺射傷害,通過DamageArea腳本可以設(shè)置傷害范圍,并且傷害能隨著距離變化。

  • Area Of Effect Distance:5,傷害范圍半徑。

  • Damage Ratio Over Distance:點擊右側(cè)圖框,可以通過曲線調(diào)節(jié)傷害,使距離爆炸中心越遠,濺射傷害越低。

  • 把設(shè)置好的Damage Area拖進ProjectileStandard的 Area Of Damage變量框中。

完成以上操作便能進行初步試玩了,可是現(xiàn)在只會投射一個小火箭頭出去,看起來沒有什么威力。

3 添加特效

為了讓火箭彈更加看起來更加有表現(xiàn)力,需要在火箭的尾部添加煙霧效果,并且擊中目標時播放爆炸特效。特效可以自行制作或者在Asset Store里邊找合適的,底部鏈接地址提供本次使用的兩個特效。

雙擊打開Projectile_Rocket預(yù)制體進行編輯:

(1)把煙霧特效VFX_TailSmokeEffect拖到Hierarchy窗口中的Tail節(jié)點下。

(2)找到Projectile Standard腳本,把爆炸特效VFX_DiskRange_Rocket拖到Impact VFX框中。

趕緊試試效果吧,是不是酷炫了好多呢~

結(jié)語:FPS Microgame的法老之鷹MOD制作分享就到這里了,小伙伴們可以充分發(fā)揮自己的想象力,做出各種自己喜歡的功能,例如艾什的延時雷管等等,希望大家玩得愉快。

煙霧和爆炸特效鏈接:https://pan.baidu.com/share/init?surl=OvmZoPdiVXqRj4sl2aERBw

提取碼:78w3

參考資料:

FPS Microgame官方教程:


咱們的游戲開發(fā)交流群也歡迎強勢插入:869551769

希望參與線下游戲開發(fā)學(xué)習(xí)的,歡~~~~~~迎訪問:levelpp.com/

FPS Microgame 的法老之鷹MOD制作分享的評論 (共 條)

分享到微博請遵守國家法律
依兰县| 凌云县| 天峨县| 商南县| 许昌县| 永嘉县| 图片| 静宁县| 东阿县| 常山县| 临汾市| 日土县| 黄骅市| 乌审旗| 潼关县| 湘阴县| 泾源县| 崇仁县| 通河县| 邳州市| 梧州市| 乐亭县| 衢州市| 万源市| 平阴县| 红原县| 威远县| 革吉县| 东莞市| 新野县| 建阳市| 南溪县| 汉源县| 台山市| 高密市| 武夷山市| 松滋市| 成武县| 遂川县| 文登市| 济阳县|