生活随笔
收集整理的這篇文章主要介紹了
《射击游戏》游戏开发记录
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
游戲開發(fā)的學(xué)習(xí)記錄⑥
項目:射擊游戲
開始時間:2022.9.29
(已經(jīng)結(jié)束很久了,一直忘了寫,補一下)
新學(xué)到的:
做小地圖,用來看自己和敵人的位置
float ratio
= (float)Screen
.width
/ (float)Screen
.height
;
this.GetComponent<Camera>().rect
= new Rect((1 - 0.2f), (1 - 0.2f * ratio
), 0.2f, 0.2f * ratio
);
在做小地圖這段中,我新認(rèn)識了Rect,下面是關(guān)于官網(wǎng)中rect的截圖,官網(wǎng)上的圖讓我一度認(rèn)為y值設(shè)的越小,距離上方越近。
但是在x值不變的情況下,當(dāng)y=0.65反而比0.2距離上方近
所以,這里還不是很理解
敵人狀態(tài)的一個轉(zhuǎn)換
m_timer
-= Time
.deltaTime
;AnimatorStateInfo stateInfo
= m_ani
.GetCurrentAnimatorStateInfo(0);if (stateInfo
.fullPathHash
== Animator
.StringToHash("Base Layer.idle") && !m_ani
.IsInTransition(0)){m_ani
.SetBool("idle", false);if (m_timer
> 0){return;}if (Vector3
.Distance(m_transform
.position
, m_player
.m_transform
.position
) < 1.5f){m_agent
.ResetPath();m_ani
.SetBool("attack", true);}else{m_timer
= 1;m_agent
.SetDestination(m_player
.m_transform
.position
);m_ani
.SetBool("run", true);}}
Vector3.Distance:
敵人自動轉(zhuǎn)向玩家
void RotateTo(){Vector3 targetdir
= m_player
.m_transform
.position
- m_transform
.position
;Vector3 newDir
= Vector3
.RotateTowards(transform
.forward
, targetdir
, m_rotSpeed
* Time
.deltaTime
, 0.0f);m_transform
.rotation
= Quaternion
.LookRotation(newDir
);}
Vector3.RotateTowards:
槍的射擊
RaycastHit info
;
bool hit
= Physics
.Raycast(m_muzzlepoint
.position
, m_camTransform
.TransformDirection(Vector3
.forward
), out info
, 100, m_layer
);
public static bool Raycast
(Vector3 origin
, Vector3 direction
, float maxDistance
= Mathf
.Infinity
, int layerMask
= DefaultRaycastLayers
, QueryTriggerInteraction queryTriggerInteraction
= QueryTriggerInteraction
.UseGlobal
);
參數(shù)意思
| origin | 射線在世界坐標(biāo)系中的起點 |
| direction | 射線的方向 |
| maxDistance | 射線應(yīng)檢查碰撞的最大距離。 |
| layerMask | 層遮罩,用于在投射射線時有選擇地忽略碰撞體 |
| queryTriggerInteraction | 指定該查詢是否命中觸發(fā)器 |
成品部分截圖:
這部分是自己做了一個簡單的登錄,因為人機交互作業(yè)的實驗二是文本交互,可以基于javaweb做網(wǎng)頁的登錄界面,但還是對unity更熟悉點,所以在這個前面加了登錄界面,交了人機交互的作業(yè),我真是個小機靈鬼。
加了一個簡單的開始界面。上面兩張背景圖都是網(wǎng)上找的素材。
這是游戲內(nèi)的場景。
🈶一個小記錄:
這算是第一個小的3d方面的游戲了,最近沒做什么新的了,在研究vr怎么做,真的不懂!!!還沒接觸代碼,還在學(xué)一些渲染相關(guān)的,又裝了做材質(zhì)的軟件,還有建模軟件blender,以前用過3dmax,不知道blander好上手不好,但它和unity的配合真的蠻好用的,不用把模型再導(dǎo)進導(dǎo)出了。
(繼續(xù)加油 ? )
總結(jié)
以上是生活随笔為你收集整理的《射击游戏》游戏开发记录的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。