跳到主要內容

發表文章

目前顯示的是 4月, 2025的文章

visual scripting 升級后無法編輯

 之前練習時用了別人 github 項目製作 visual scripting,結果後來升級后出現無法編輯的信息 執行 regenerate Nodes 把 unity 關掉重啓 就可以編輯了

spine重新生成atlas referece,造成資源異動

 項目成員git更新后總是會出現變動,不管刪掉還是怎樣還是會再出現,試過了刪除 Library 還是一樣 查看 Editor.log 發現兩次 import message 再往callback查詢發現是 Spine-Unity 的 AssetUtility.cs 自動生成新的 Material 刪掉原本的 Material 查看了流程發現是因爲 atlas.txt 裏面指定的 png 檔案是 03, 後來項目直接修改了 material 名稱,結果 reimport 下,spine-unity 會走重新生成流程,就造成問題了

試用 visual script 製作功能

 最近在研究如何有效的製作動畫表現, 找了下想起了之前適用的 xNode, 也順帶找到官方支援的 visual script 索性就試試看 這個是用程式方式實現的功能, 功能要就是設定物件位置、生成效果 prefab、顯示傷害數字、刪除生成資源,并不複雜 使用visual script 製作如下 相較之下 vs 製作的時間就比較長,同樣内容大概花了半個多小時才做完,另外也要花點時間習慣這個流程,好處就是能夠實時看到數據内容并且修改參數。

Universal Render 模式下的多組 camera 管理

項目中使用到多組 camera, 造成戰鬥表現上面被 ui 給覆蓋, 起因是因為項目使用了 ugui 並且 Can vas 設定 Render Mode 為 Screen Space - Overlay 使用了 Screen Space - Overlay 的話 UI 會永遠在最上層並不需要 camera 就會顯示, 這也是為什麼修改 uiCamera culling 始終無法關閉介面顯示的原因, 游戲中有3組 camera, 1)UI Camera:用來顯示ui 2)Stage Camera:用來顯示戰場 3)Fight Camera:用來顯示戰鬥表現 目前設計上來説沒有做切換場景的功能,所有介面跟物件都在一起,如果有切換場景就能規避這個問題; 第一組 UI Camera 但是 Canvas 設定了 Overlay, 所以 UI Camera 其實沒作用,以至於後面修改 UI Camera culling mask 發現完全無效。 第二組 Stage Camera 第三組 Fight Camera Fight Camera 雖然設定為 Orth 并且 culling mask 是 UI,但其實只是爲了顯示 PanelFight 裏面的 Skeleton model,可以看到 Skeleton 被設定為 UI Layer 這個做法并不是很好,修改后的做法如下 1)將 UIManager 跟子物件 layer 都設定為 UI 2)所有的 Layer 都要設定 Screen Space - Camera , 并將 UIcamera 指定進去  3)建立一個 mainCamera 管理所有 camera 4)Fight Camera 不可以放在 UI Canvas 底下,scale 會受到 Canvas 影響變得很小,必須拉到最外側,并且設定 Scale = 1,效果如下,在 Fight Camera 底下的 Image 可以遮蔽 UI Camera 下的 UI