日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Unity小组工程实践项目《最强外卖员》策划案纠错文档

發布時間:2023/12/14 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Unity小组工程实践项目《最强外卖员》策划案纠错文档 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Unity小組工程實踐項目《最強外賣員》策劃案&糾錯文檔

二人小組合作開發的工程實踐Unity游戲,在此記錄策劃案和糾錯文檔,以便日后方便查詢
開發平臺:Unity
使用語言:C#
團隊成員:2人

**

策劃案:

**
最強外賣員策劃案
背景:
開始顯示ui:
在十字城市中長期存在兩個惡勢力A,B組織,他們之間長期存在不正當的交易,你作為C組織派來的特務,要想方設法幫助自己的組織獲得秘密情報,從而占領這座城市。C組織得知,AB組織都不愿過多暴露自己的勢力,經常假借外賣線下委托單讓當地的高星級評分外賣員為他們傳送情報,因此,你決定以外賣員的身份為偽裝,一方面走街串巷了解城市基本情況,更重要的是截取AB組織的重要情報并上報給自己的組織……

十字城部分
游戲封面 開始游戲,設置,退出游戲
點擊開始游戲
出現操作說明UI:人物操作按鍵,任務:這里是當前需要派單的外賣清單,會根據完成情況隨時更新,請注意查收(當收到新任務的時候會有小紅點提示)
背包系統:里面是待運送的貨物,以禮品UI顯示
進入UI顯示,右上角分別是職業等級,道德指數,摩托車生命值
初始外賣組長提醒玩家好好上班以及,需要隨時關注摩托電量,以及及時充電,不然可能會影響派單

為了避免沖突,加油P,對話M

對話臺詞(為了方便展示,游戲里面對話臺詞是中英對照,因為確實不能對話框里面放太多字不然小的根本看不見,所以中英確實沒辦法末尾換行,如果后面效果不佳,酌情取消中英對照,只使用純英文內容)
n-TheDeliveryBro 外賣團長
Hey there, new guy! Welcome to join our delivery team!
你好啊,新來的!歡迎加入我們外賣員隊伍!
n-TheDeliveryBro 外賣團長
I’m the head of the delivery team, and since this is your first time in the business, I have a few words of advice for you:
我是這里的外賣團長,鑒于你是第一回干這行,有幾句話哥得叮囑你:
n-TheDeliveryBro 外賣團長
First, when delivering takeout, you must check the destination and kind of the deliveries.第一,送外賣的時候一定要看清楚目的地和外賣類型
n-TheDeliveryBro 外賣團長
Be careful not to send them to the wrong place, or customers will give bad comments!小心不要送錯了,不然顧客會給差評的!
n-TheDeliveryBro 外賣團長
Second, although 996 is a blessing, but also pay attention to not tired out!
雖然996是福報,但是也要注意不要累壞了身子!
n-TheDeliveryBro 外賣團長
If you feel tired, be sure to get to one of the delivery man‘s rest stops around here in time to replenish your energy!
如果感到體力不支,務必及時趕到這附近的外賣員休息站補充體力!
n-TheDeliveryBro 外賣團長
第三,這座城市并不太平,時刻注意安全。
n-TheDeliveryBro 外賣團長
Good luck, little brother! Strive to be the best delivery man!
祝你好運,小兄弟!努力成為最強外賣員吧!
n-you 你
All right! Thank you!
好嘞!謝謝團長!

充電站 預制體名字:Electricity_Meter_04 Unpack之后改名ChargePlace
上面給他放了個UI表示這里有電,G鍵長按空格充電,直到充滿

升級外賣第二顆星
從最好的豬肉焦燒送到健康食品店旁邊的鐵門
From “The best pork charred” to the iron door next to the "health food store.
送肉,枚舉類型meat


顧客對話內容:
n-you 你
Hello, this is your takeout!
您好,這是您的外賣!
n-Customers waiting for takeout 等外賣的顧客
Wow, that’s just in time. Thank you!
哇,太及時了,謝謝你!

升級第三顆,從不知名魚店送到女裝童裝店和水族館之間的鐵門
From “unknown fish shop” to an iron door which is between “children’s clothing shop” and “aquarium”
送魚,枚舉類型fish

顧客對話內容:
n-you 你
Hello, here’s your takeaway!
您好,您的外賣在這!
n-Customers waiting for takeout 等外賣的顧客
Thank you so much, five-star review!
太感謝了,五星好評!

升級第四顆星,從不知名外賣作坊送到國家美食餐廳
From anonymous Takeout to National Cuisine.
枚舉類型vegetable

顧客對話內容:
n-Customers waiting for takeout 等外賣的顧客
Thank you for delivering our takeout, young man!
謝謝你送來我們的外賣,小伙子辛苦了!
n-you 你
You’re welcome
不客氣
———————————————————————————————————————
送完后,禁止玩家控制權,從旁邊走出一個大哥,對話內容:
n- the Social Bro 社會大哥
Wait,please.
等等,別走!
n- the Social Bro 社會大哥
I heard that you are our best delivery man, I have a big order, with very high salary, take?
聽說你是我們這最好的外賣員,我這有個大單子,薪酬很高,接嗎?
n-you 你
Okay, no problem. I 'll take it.
好的,沒問題,包在我身上!
n- the Social Bro 社會大哥
Be careful, this must be delivered!
你可小心點,一定要送到

從國家美食餐廳送到來自大陸的鮮花店
From “national gourmet restaurants” to “flower shops from the mainland”
枚舉類型document

n-theSocialSister 黑幫大姐
Thank you. I got your stuff, but I have something which needs you to take back.
謝謝你,東西我收到了,不過我這有一樣東西需要你送回去。
n-you 你
Sure,OK.
好的可以。
———————————————————————————————————————

從來自大陸的鮮花店送回國家美食中心
From “flower shop from mainland China” to “national gourmet restaurant”
枚舉類型special
玩家自言自語:
等大姐走后,玩家自言自語:“終于拿到了組織需要的文件,我得趕快離開這里!”(為了實現方便,這段劇情被移到這了)
I finally got the files the boss needed! I need to get out of here ASAP!
終于拿到了上級需要的文件,我得盡快離開這里!
In case not to be questioned, I’d better talk to the Delivery team leader.
為了防止被懷疑,還是跟團長交代一下吧。

因為要和組長對話兩次,所以第一次對話完要移除talkable腳本,結尾對話讓Conditional Talkable腳本發揮作用

n-you 你
Sorry,Bro, I have chores to deal with recently and I have to ask for leave for some time.
團長,我手頭最近有一些私事,需要離職一段時間。
n-TheDeliveryBro 外賣團長
Okay, that’s fine.
好的,沒事。

———————————————————————————————————————
小偷碰到玩家偷外賣對話(就一個小偷)
n-The thief小偷
This free gift mine,thank you very much
你的好東西我拿走啦,謝謝您嘞!

———————————————————————————————————————
警察逮到主角對話(就一輛警車)
n-The police 警察
You! Why do you see us so nervous? Come and have a chat with us!
你!看見我們這么緊張干什么?跟我們走一趟聊聊天去!

玩家回到出生點,跟組長交接工作,游戲結束,任務勝利。

如果玩家拿著大哥的東西直接跑了,準備跑回去,從保險代理人這里觸發傳送

進入新場景則出現對話,大哥狂笑:"
n-the SocialBro 社會大哥
II knew it! You were a C agent!
哼,我就知道你是C組織的奸細!
n-the SocialBro 社會大哥
Naive child, you didn’t realize what I gave you was fake, did you?
小子,你沒想到我給你的東西是假的吧?
n-the SocialBro 社會大哥
Now let’s see where you’re going
這下看你往哪跑!
———————————————————————————————————————

倒計時3,2,1,開始跑酷,玩家出生點NewBirthPlace 掛著和大哥的以上對話腳本和碰撞體Box Collider

系統提示:你現在正在被大哥追殺,需要跑回自己組織的勢力范圍。
進入碰撞體:成功逃離但是任務失敗
出口的設置地點有些變動,詳見HandOver交付文檔

文檔里面大概在這個位置:

如果中途被敵人追上,就是顯示已被敵人擊殺
摩托車生命值少于百分之20提示玩家需要充電
死法:任務失敗或者中途摩托車沒電被追上了

———————————————————————————————————————
路人情報對話:
Passby1:
n-passers-by 路人
Boy, I’m lost. Do you know how to get to the National Gourmet restaurant?
小伙子,我迷路了,請問你知道國家美食餐廳怎么走嗎?
n-you 你
It’s easy. Just turn left and go straight for 50 meters.
很簡單,您只需要向左轉然后直走50米就到啦!
n-passers-by 路人
Thank you so much! I was going to a party, and I heard that all the bigwigs of this town like to party there!
太謝謝了!我是去赴宴的,本市黑白兩道的大人物都喜歡在那里聚會!
———————————————————————————————————————
Passby2:
n-passers-by 路人
What, another delivery guy?
怎么,又一個送外賣的?
n-you 你

n-passers-by 路人
I have no regard for you errand boys, only god knows who you are secretly working for!
我可瞧不上你們這幫跑腿的,鬼知道你們背地里都給誰當狗腿子!
n-you 你
Well, I guess this gentleman’s parents didn’t teach him to respect other people’s work!
好吧,看來這位先生的家長并沒教過他要尊重別人的工作!

**

糾錯文檔

**
**

最強外賣員糾錯文檔The strongest delivery man:error correction document

本文檔用以記錄開發過程當中遇到的所有錯誤以及解決辦法

**
This document is used to document all errors encountered during development and how to resolve them

1在測試任務系統時,意外發現部分UI顏色、透明度等屬性消失
如圖,在BUG出現時,圖中所有UI有字的地方全部變成了純黑色,Panel的透明度設置也消失。整個UI帶顏色的部分就是一片死黑
解決辦法:1.重新運行,2.如果重新運行不行的話整個項目關了重新啟動,之后啥都正常了
Unity項目老不好,多半是欠重開和刪檔
(圖片是跟著網課學的測試項目)

2.Unity項目打不開,一打開就卡回hub界面
解決辦法:強行退出hub,重開,發現提示準可證不合要求,去管理準可證發現是沒登錄,應該是之前重啟電腦更新,hub被自動退出了,重新登錄hub,成功打開。
參考文檔:
【Unity 之 關于UnityHub無法打開項目的問題(彈出Unity啟動界面有退回到Hub選擇工程界面)】https://mbd.baidu.com/ma/s/Vq1tL3tL

基本上所有的問題這里面都涉及了。

3.使用CreateAssetMenu通過CreateAssetMenu為使用自定義資源(.asset) 添加 Assets 菜單按鈕時發現無法創建

檢查腳本,發現類別繼承錯誤,不能繼承MonoBehaviour類,應該繼承ScriptableObject 類
相關知識:
Unity 通過CreateAssetMenu為使用自定義資源(.asset) 添加 Assets 菜單按鈕_LixiSchool的博客-CSDN博客_createassetmenu unity

更正繼承類別之后,問題解決。

4.UI的scrollbar 無法滑動到底部,而且UI無法穩定在調好的大小
解決辦法:scrollbar以及handle都不要用圓形的UI,用長條形的
目前slider沒問題,如果不行的話參考這條的解決辦法

5.導入購買的模型素材之后,運行模式無動畫播放
解決辦法:檢查發現模型缺少avatar組件,在模型預制體的inspector界面選中rig—avatar Definition,create from this model,生成avatar組件,然后賦給模型身上自己創建的動畫狀態機,并且把模型動畫拖入狀態機,再運行即可看見模型動畫。

(模型是淘寶素材店買的)

3dmax 動作導出到unity里會有個avatar 怎么去掉它? - 知乎 (zhihu.com)
在最后一步換個選項選擇,這個教程是教怎么移除avatar組件的,而我是需要生成avatar組件。

6.使用NavMeshAgent組件時,報錯Stop()函數已過時

附錄:一個關于導航網格代理的不錯網課:
零基礎學Unity教程之導航系統的建立(完整版)從零開始制作游戲角色和導航系統 一學就會 U3D/Unity/游戲制作/導航 B0096_嗶哩嗶哩_bilibili

7.切換場景不銷毀物體的辦法:

給導航網格添加障礙物,不希望玩家穿過場景當中的某些東西尋路
靜止物體:地形類型選用Not Walkable
移動物體:使用Nav Mesh Obstacle組件,勾選Carve選項在導航網格上掏出一個洞,Center和Size調節偏移尺寸,Shape選形狀(圓形、方形—)

8.對話系統播放第一個字就沒有然后了
解決辦法:經過檢查,發現是開啟對話系統之后暫停的功能惹的禍,可能是暫停游戲導致了協程停止和動畫不能播放,把這行代碼去掉之后問題解決,并且任何代碼都不能寫暫停對話系統

9.拿外賣的角色到達銷毀地點之后并沒有銷毀自己,而是繼續原地維持行走狀態
解決辦法:對比黑幫大哥的腳本,這個GotoDestination函數要在Update里面每幀調用,這樣才能保證isArrive()函數每幀都在判斷是否玩家到達了既定地點,然后才能執行為true的操作,不然只調用一次GoToDestination的話,雖然NPC最后到達了銷毀地點,但是IsArrived始終是False,所以他不會停下行走動畫,也不會銷毀自身


修改代碼以后,問題解決:

10.不兼容游戲自設的快捷鍵按E對話,也不允許運行模式下按ESC出去更改參數:快捷鍵不兼容,更換成冷門不容易沖突的M鍵,不用按ESC,把鼠標硬拽出去,在旁邊的場景下點一下即可
移除對話圖標(NPC子物體)時遇到代碼報錯:

11.因為場景過大,跳轉場景時卡死無法運行

解決辦法:移除另一個場景的攝像機和缺少腳本等一切報錯組件,拖拽成為一個大型預制體嵌入初始場景內,避免場景跳轉造成卡頓。


12.跳轉到廢土場景時,玩家閃爍一下到達目的地,然后被卡在距離原位有一段距離的墻里面
猜測原因:
因為倆套模型的拼接,nav導航系統并沒有連起來,導致玩家到不了那個地點從而被打回了原nav能到達的最遠處


使用了現炒現賣現學現用的OffMeshLink,把Nav的跳躍距離和水平跨度都拉大,把中間缺失的路復制預制體補平,都不行。

截止目前我已經十分確定,這就是那個大樓搞得事情,那個路線規劃都劃到從樓頂上一躍而下了啊!
此圖沒有截,喊我撤回很不容易對勁的Nav去給這個礙事的大樓一個特寫?不可能!絕對不可能!
本來打算當穿山甲拆條路出來,但是因為這個場景的模型是一體的,沒有辦法,我只能強拆了一棟樓。

這下沒事了,看吧,我就說我的腳本沒問題,哈哈。
我打算從周邊挪一些用不著的樓來美化一下這個空缺,瞧瞧,為了這個礙事的樓,Nav和主角的犧牲多么大啊,這都可以隨便找個地兒落地成盒了。

就這樣吧,有點擠,但是玩家過得了(微笑)

妙啊!!

15在實現長按充電的時候受到了困惑,不知道怎么寫長按的代碼,經過百度、B站、CSDN的搜刮,最后偶然看見下面這個帖子:
Unity的GetKey()、GetKeyDown()以及GetKeyUp()區別與用法_顫抖的小學弟的博客-CSDN博客_getkey
把GetKeyDown改為GetKey,問題解決

16.制作路人隨機行走功能時,發現CheckDir(檢測距離)和CheckAngle(檢測角度)這兩個變量賦值失敗,雖然定義時寫了默認值,也在初始化函數里面調用了賦值函數,但是Inspector面板里面還是都是0

解決辦法:在每個Inspector面板里面手動賦值,問題解決,而且就這么來了一趟,所有的都好了,就很奇妙

17.因為所有隨機行走人員身上都是一模一樣的腳本,用Random.Range產生的隨機數也是一模一樣,導致他們一運行所有人都往同一個地方走,不夠隨機真實。
解決辦法:經過百度,找到了產生每次不一樣隨機數的辦法:
Unity使用Random每次生成與上次不一致的隨機數_游在雨城的博客-CSDN博客_unity 隨機數

經過自行修改,封裝為函數以后,實現功能。
public int GetRangeNum()//得到每次不一樣的隨機數,避免路人都往一個地方走
{
//最后輸出的與上次隨機數不同的隨機數
int getRangeNum = 0;
//每次隨機產生的隨機數,用于與上次進行比較
int rangeRadomNum = 0;
//用于統計每次輸出的數,方便觀察
//int numCount = 0;
//numCount++;
do
{
rangeRadomNum = Random.Range(0, directPoints.Length);//產生0-目的地數組長度之內的隨機數
}
while (getRangeNum == rangeRadomNum);//只要當前得到的數和上次得到的數一樣就繼續執行
getRangeNum = rangeRadomNum;//把最后得到的這個不一樣的數保存下來并且返回回去
//Debug.Log(“第” + numCount.ToString() + “得到的隨機數:” + getRangeNum);
return getRangeNum;
}

”我們各奔東西,大家都有光明的未來“:

18.運行模式下無法拖動人物改變位置,檢查nav無問題
解決辦法:拖動人物一定要拖到最外層級,不要拖成了里面的某一個子物體,這不是nav的問題

19.不明原因報錯,點不開具體寫的是哪段代碼的毛病:

這種莫名其妙的毛病一般都是Unity自己抽風卡出來的,關了重開就行了

20.導入汽車模型之后,測試運行發現模型往下掉
嚇得我趕緊上網搜了個教程看看:
Unity物體往下掉 如何站在地面上_劉建杰的博客-CSDN博客_unity穿過地形往下掉

我一看這也沒勾選啊,整不會了都

那就手動找找問題吧,看了一下掉的最厲害的四個輪子,我不理解,你說他把use gravity用上干啥?

把重力取消了,測試項目里面倒好了

可是正式項目里面他還是往下掉!!!

沒辦法,我只能再去查個教程
https://mbd.baidu.com/ma/s/WjcWWkbv

跟上一個教程說的正好相反····:


但是勾選之后真的不掉下去了耶!

等等,只是車身不掉下去了,那幾個輪子動畫一播放還是照樣該掉不誤。
搞生氣了,之間給他剛體組件移除了!

可算是不掉了,動畫也正常了,可把我累的······

21.動畫狀態機報錯AnimationEvent has no function name specified!
Unity3D “xx AnimationEvent has no function name specified!”解決方案_Emperor_Dandy的博客-CSDN博客

這個是添加Event的

這個才是我們要的添加關鍵幀的

22.一個奇怪的錯誤,不知道為什么運行模式下發現UI畫布跑到了場景中間,試圖把整個場景物體拖拽到UI后面,發現就不是初始運行那個漂亮的景象了,所以我猜測讓UI跑這里是作者為了一運行就這個景色有意為之(估計是固定的Camera的位置?因為我們的項目需要定位在主角附近所以這里可以隨便改)


不知道為什么會出現這種靈車漂移慘案:

解決辦法:經過檢查,發現應該是誤觸了Nav Mesh Agent的如下屬性:


跑酷的另一條路Nav尋路無法到達
一個并沒有解決問題但是以后可能用得著的鏈接:
Unity學習筆記–解決NavMeshAgent無法到達的點_就一枚小白的博客-CSDN博客
Unity-導航網格鏈接 (NavMesh Link)
23.如圖所示,在通往錯誤出口的這條路上Nav不知道什么原因無法烘焙,始終不愿意相連
解決辦法:如果確實無法調整Nav適應的話,可能只好考慮禁用玩家身上的Nav Mesh Agent

24.不知道怎么實現跑酷開始前倒計時
解決辦法:
Unity中實現倒計時的幾種方式_上班摸魚.的博客-CSDN博客_unity倒計時實現

報錯:Unity 報錯TLS Allocator ALLOC_TEMP_THREAD, underlying allocator ALLOC_TEMP_THREAD has unfreed allocati
解決:重開,不要看網上的騷操作

解決辦法:

此處刪去空格即可
25.加入Nav障礙物的步驟:
(2條消息) unity-Navigation尋路-添加障礙物Obstacle_蝶泳奈何橋.的博客-CSDN博客

沒有動畫狀態機的物體掛上需要調用狀態機的腳本報錯
解決辦法:創建空狀態機,隨便建立幾個空狀態,把觸發條件一律都寫上,這樣就不會報錯,也沒有什么影響。

總結

以上是生活随笔為你收集整理的Unity小组工程实践项目《最强外卖员》策划案纠错文档的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。