原创 Unity中運用BehaviorDesigner開發AI的一些問題探索

AI的設計我選擇了BehaviorDesigner行爲樹,比狀態機效率相對高,在前面已經介紹過BehaviorDesigner的一些用法,遊戲框架基本完成,進入開發的中間過程,對AI的要求又要迭代更新了,要求真正的表現出高逼真高智

原创 網絡遊戲中主遊戲客戶端的時間協同問題解決辦法

網絡遊戲中如何在玩家進入房間後,當主客戶端點擊開始後,其他客戶端同步開始加載進度,這是每個開發網絡遊戲必然要遇到的問題,如何解決? 思路其實與之前的網絡遊戲解決時間同步問題的解決辦法類似,原理很簡單,主客戶端(充當服務器作用的客戶

原创 遊戲中超級逼真岩漿效果開發實戰

岩漿效果的實現上乾貨,不清楚留言。 超級逼真岩漿效果實現如下: 上乾貨,不清楚留言。

原创 戰鬥場景效果使用或升級到URP,實現最新效果

以往很多時候羨慕別人的場景效果非常酷炫,但是之前的手遊支持比較有限,一些UNITY內設的shader也比較有限,很多shader也支持不好,後來推出了LWRP實現了手遊端的效果提升,shader graph的出現實現了很多人效果酷

原创 超級逼真爆炸效果火燒痕跡創作實戰

接着盤一個老shader,如圖: 把他改造成shader graph如下: 效果前後對比: 效果比對還可以,尤其背景基本一致,改造成功。 需要注意的問題:選用unlit,不需要燈光烘培的,要自發光類型,alpha要設置爲0

原创 遊戲中冰凍效果與毒球效果製作實戰

接着改造一個稍微複雜些的冰凍、毒球的shader,遊戲中比較通用,可通過改造參數實現一些被擊打後的效果特效。shader 代碼如下: Shader “Effects/Ice/IceFront” { Properties { _Co

原创 【Unity開發】Unity3d中定時器使用

using UnityEngine; using System.Collections; using System.Timers; public class Timer : MonoBehaviour { int iCount=0

原创 buff製作

遊戲人物頭頂的buff製作 直接上乾貨,第一個腳本負責生成buff並掛載到英雄頭頂。 public class ShowBuff : MonoBehaviour { public GameObject target; float

原创 技能攻擊碰撞的幾點思考

英雄釋放技能需要檢測是否攻擊到對方?範圍攻擊還是指向攻擊或是巡航攻擊?技能釋放後如何不傷害到自己?我採用的方法有:射線檢測,物理碰撞,範圍判斷。其中物理碰撞中避免攻擊到自己的方法是實例化技能物體時,直接兩個物體進行設置不發生碰撞,

原创 AI 中技能判斷與釋放

AI符合攻擊條件時,要來判斷是否有攻擊技能可以釋放,如果有攻擊技能,進行釋放攻擊,如果沒有不再追擊,防止被他人攻擊。 用到協程計時,非常好用,推薦。 public override TaskStatus OnUpdate() {

原创 AI例子

using Assets; using System.Collections; using System.Collections.Generic; using UnityEngine; public class Ai : Mono

原创 物體的移動轉動及離開戰場的銷燬處理

物體的移動轉動及離開戰場的銷燬處理 移動 GetComponent().velocity = transform.forward * speed; 轉動 GetComponent().angularVelocity = Rando

原创 基於Photon實現的網絡遊戲中AI的設計關鍵點

基於PHOTON網絡遊戲AI中的設計思路 首先要搞清楚photon的網絡實現框架,要不然在網絡多客戶端設計上就容易混亂,有時還不太好調試bug。 photon中平等的客戶端中有一個是主客戶端,masterclient,他要兼任服務

原创 BehaviorDesigner學習

行爲樹: 行爲樹設計師插件是一個專門爲unity設計的AI插件。 通過繼承Behavior中的Task下的四個節點,可以創建自己的行爲樹節點。 行爲樹中的自定義類型均爲sharedType:SharedInt,Sharedfloa

原创 Unity中update與lateupdate使用區別

Unity中Update()與lateUpdate(),記住關鍵區別Update()理解成立即觸發,lateupdate()是隨後觸發,可以理解成一幀中立刻執行,另外是一幀最後執行,像一些攝像頭跟隨這種可以用lateUpdate(