本次的作業是,修改飛碟程式。它使用以下 json 文字控制程式(你可以自由新增內容)
1、遠端控制目錄(有四個json檔案)
game_info.json -
disk_level_1.json -
2、修改飛碟程式,並發布
由於我是二年級生,所以很多大的思路都**於大三師兄的部落格。
尤其是胡江川師兄。他的部落格寫的十分的完整、易懂。所以這門課在他的部落格上面我真的是受益匪淺。
傳送門:simba的部落格
好了我們來看下這一次的作業。要求用json檔案來儲存遊戲的資訊。這是乙個在實際遊戲中常見,也是十分重要的功能。這一次我們用json簡單地模擬一下其讀寫。
其中儲存了每一關的資訊。包括飛碟的顏色,發射的位置,發射的方向,發射的速度,第幾回合等等。根據這些資訊在初始化的時候我們就可以直接讀取json檔案,提取相應資訊,賦值即可。
建立完json檔案之後我們要考慮的問題就是如何將json檔案變成data.根據課上的內容以及一些文件的提示。
首先我們建立乙個filemanager.cs的指令碼
可以通過如下的方法拿到我們的資料:
// 輸入關卡檔名,啟動協程讀取檔案
public
void
loadleveljson(string name)
ienumerator loadlevel()
}
public void stagelevel(string json)
同樣的方法適用於disk_level_1.json
這樣子我們就完成了filemanager.cs檔案。將其掛載主攝像機上。
[serializefield] attribute
強制unity去序列化乙個私有域
這是乙個內部的unity序列化功能,有時候我們需要serialize乙個private或者protected的屬性,這個時候可以使用[serializefield]這個attribute:
在unity最新的ui系統中,ui屬性上方全部新增[serializefield] ,如下所示
[serializefield]
private button btn1;
serializefield參考文件:
因此,我們在scenecontroller中gameinfo和disklevel進行序列化
[serializefield]
public
class gameinfo
}[serializefield]
public
class leveldata
}
拿到game_info的資料後肯定要顯示在主介面上。
我們將這些資料都寫在我們的控制器中,並將其置為public變數。
public
string _version;
public
int _totalround;
public color color;
然後在ui中對text進行賦值
小小的遊戲展示:可以看到顯示了json檔案儲存的內容,
Unity3D 通過JSON查詢天氣
獲取天氣資訊,首先要找到提供天氣資料的介面,我使用的是高德地圖免費為我們提供的,為 使用的前提是註冊乙個高德賬號用來獲取返回引數中所需要的key,步驟很簡單,按照 中的提示來就可以了。獲取網路資料,需要用到unitywebrequest類,通過它的get方法可以得到 中的資訊,返回的是含有uri中資...
Unity3D開發(九) Unity3d流光效果
遊戲開 壇 hello game 遊戲開發群 201276069 之前曾經注意過material 中紋理的屬性都有 tiling 和offset 但沒有深究過其用途,今天才知道竟然可以利用 offset做uv 動畫,從而完成各種有趣的動畫,比如流光效果!流過效果即通常一條高光光在物體上劃過,模擬高光...
Unity3D 文字輸入正則規範使用
網路遊戲在註冊賬號時,需要對新的賬戶名和密碼進行規範。這裡記錄一些常用的檢測方法 1,純數字檢測 public string a 0 9 2,11位手機號碼 1開頭 public string b 1 d 3,數字或英文 public string c a za z0 9 4,純漢字 public ...