四、遊戲物件與圖形基礎(牧師與魔鬼 動作分離版)
1、基本操作演練【建議做】
下載 Fantasy Skybox FREE, 構建自己的遊戲場景
- 資源商店下載天空盒
- 在 main camera新增元件 Skybox
- 構建地形 Terrain,下載的天空盒會有構建好成型的地形,可複製過來,可以種樹,畫坡…
寫一個簡單的總結,總結遊戲物件的使用
遊戲物件主要是:
- Empty (不顯示卻是最常用物件之一)
- 作為子物件的容器
- 建立一個新的物件空間
- 3D 物體
- 基礎 3D 物體(Primitive Object):立方體(Cube)、球體(Sphere)、膠囊體(Capsule)、圓柱體(Sylinder)、平面(Plane)、四邊形(Quad)
- 構造 3D 物體:由三角形網格構建的物體:如地形等
- Camera 攝像機,觀察遊戲世界的視窗
- Light 光線,遊戲世界的光源
- Audio 聲音
遊戲物件的使用:
可以給物件新增元件,元件包括物體是不是剛體,受不受重力影響等等,還可以通過編寫指令碼,並將其新增到元件上面來用指令碼控制遊戲物件的行為
2、程式設計實踐(二選一)
牧師與魔鬼 動作分離版
【2019開始的新要求】:設計一個裁判類,當遊戲達到結束條件時,通知場景控制器遊戲結束
獎勵關卡的遊戲原型設計
- 動作管理器設計的核心程式碼參照了潘老師的課程網站
- 這裡給出裁判類 Referee 的程式碼
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Referee : MonoBehaviour
{
public int start_priest;
public int start_devil;
public int end_priest;
public int end_devil;
public int[] boat_role_num = {0, 0};
public int boat_sign;
public Referee(){
start_devil = 0;
start_priest = 0;
end_devil = 0;
end_priest = 0;
boat_sign = 0;
}
public void set(int sp, int sd, int ep, int ed, int[] brn, int bs){
start_priest = sp;
start_devil = sd;
end_priest = ep;
end_devil = ed;
boat_role_num = brn;
boat_sign = bs;
}
public int check() {
if (end_priest + end_devil == 6)
return 2; // 勝利
if (boat_sign == 1)
{
start_priest += boat_role_num[0];
start_devil += boat_role_num[1];
}
else
{
end_priest += boat_role_num[0];
end_devil += boat_role_num[1];
}
if (start_priest > 0 && start_priest < start_devil)
{
return 1; // 失敗,岸上牧師人數少於惡魔
}
if (end_priest > 0 && end_priest < end_devil)
{
return 1; // 失敗,岸上牧師人數少於惡魔
}
return 0;
}
}
專案地址:
相關文章
- 3D遊戲程式設計與設計4——遊戲物件與圖形基礎3D遊戲程式設計物件
- OpenGL基礎圖形程式設計(一)OpenGL與3D圖形世界程式設計3D
- OpenGL基礎圖形程式設計(四)基礎程式結構程式設計
- js基礎--原型物件與原型物件鏈JS原型物件
- Nginx作為動靜分離、快取與負載均衡初探Nginx快取負載
- Python基礎-類與物件Python物件
- SVG 基礎圖形SVG
- 物件導向——意圖與邏輯(四)物件
- 前後端分離的思考與實踐(四)後端
- 「技美之路 第07篇」圖形 2.2 模型與材質基礎模型
- Java基礎系列(七):物件與類(下)Java物件
- 程式碼的分離與解耦,向移動架構師進階!解耦架構
- 與遊戲世界互動-作業與練習(5)遊戲
- 圖形學基礎知識
- 組合遊戲與博弈論基礎遊戲
- C++記憶體分配與物件構造的分離C++記憶體物件
- CSS基礎定位與精靈圖CSS
- Python3基礎18——類與物件Python物件
- Python基礎語法(七:類與物件)Python物件
- Java 在Excel中新增分離型餅圖、環形圖JavaExcel
- 橫版動作經典遊戲IP與肉鴿戰棋的全新碰撞遊戲
- 「管理數學基礎」3.1 凸分析:凸集與凸集分離定理、Farkas引理
- 前端基礎進階(四):詳細圖解作用域鏈與閉包前端圖解
- Shader 繪製基礎圖形
- Javascript基礎與物件導向基礎~第一講啥叫程式設計,啥叫程式設計師JavaScript物件程式設計師
- AJAX基礎知識及核心原理詳解。前後端分離和不分離的優勢與弊端後端
- 基礎篇——html與php聯動HTMLPHP
- 離散意義下的基礎機率與期望
- web基礎(四)嚴格模式與混雜模式Web模式
- Java:實驗四 Java圖形介面與事件處理(頭歌)Java事件
- Nginx 動靜分離與負載均衡的實現Nginx負載
- 表現與資料分離
- 動作與射擊漫談:格鬥遊戲中的動作設計遊戲
- 【matplotlib基礎】--3D圖形3D
- 利用NEO與Unity製作遊戲(第3部分)Unity遊戲
- 作業系統基礎第四講作業系統
- 與Linux進行基礎互動Linux
- HanLP程式碼與詞典分離方案與流程HanLP