原创 Unity-Ugui渲染模式
Canvas組件下的RenderMode有3種: Screen Space - Overlay (覆蓋模式); Screen Space - Camera (攝像機模式); World Space (
原创 ArrayList和(List,LinkedList,數組) 以及 Hastable和Dictionary 的區別 以及 拆裝箱
ArrayList和LinkedList的區別:(單個元素) 1、ArrayList是實現了基於動態數組的數據結構,LinkedList是基於鏈表的數據結構。 2.、對於隨機訪問get(查詢)和set(修改),ArrayList是優於Li
原创 Unity_Shader之讀取時間優化
【1 Shader代碼片段】 Shader裏有代碼片段,可以用關鍵字(Keyword 也叫Varient)去做分支變化 步驟 (1) 定義 #pragma multi_compile v1 v2 #pragma shader_feat
原创 Unity--某射擊遊戲上機面試題
這裏只寫實現,UI界面自行考慮 1.主角 public class PlayerMove : MonoBehaviour { private Rigidbody player; public float speed = 5
原创 unity--特性(二)
一、HelpURLAttribute 從字面意思理解,是查看幫助時,跳轉到指定的頁面。 如下圖: image.png 對應着藍色小書的圖標,點擊以後會跳轉到配置的URL。 二、RangeAttribute:限定int或float的取
原创 unity--特性(三)
特性: 就是一種聲明性的標籤(類、結構體、枚舉、字段(變量)等) 下面劃分了3個方面 一、修飾字段 [Header("怪物屬性")] : 面板標題 在U3D的Inspactor面板顯示一個
原创 Unity--特性(一)
特性:是一個類,可以用來標記元素,編譯時生成到metadata裏,平時不影響程序的運行,除非主動用反射去查找,可以得到一些額外的信息/操作,然後給提供了更豐富擴展空間 。特性可以在不破壞類型封裝的前提下,額外的增加功能 例如AOP:面向
原创 Unity--四元數詳解
Quaternion類 Quaternion(四元數)用於計算Unity旋轉。它們計算緊湊高效,不受萬向節鎖的困擾,並且可以很方便快速地進行球面插值。 Unity內部使用四元數來表示所有的旋轉。 Quaternion是基於複數,並不容易直
原创 傳值、傳引用、傳地址的區別是什麼
傳值, 是把實參的值賦值給行參 那麼對行參的修改,不會影響實參的值 傳地址 是傳值的一種特殊方式,只是他傳遞的是地址,不是普通的如int 那麼傳地址以後,實參和行參都指向同一個對象 傳引用
原创 unity_shader之實現場景淡入淡出
3D遊戲中經常會用到往前走場景的淡入效果,實際就是物體從透明逐漸變實的過程用Shader實現非常簡單實現思路:1 設置淡入的起始距離 和 結束距離2 在vertex階段計算物體頂點與相機的距離3 根據距離計算alphaShader如下
原创 Unity_Shader 之TRANSFORM_TEX詳解
問: (1) TRANSFORM_TEX是做什麼的 (2)float4 _MainTex_ST 中的_MainTex_ST變量也沒有用到,爲啥非要聲明一下? 答: (1)簡單來說,TRANSFORM_TEX主要作用是拿頂點的uv去
原创 unity_shader 之實現Toggle的方法
shader實現Toggle的方法 【步驟】 1 Properties 加 [MaterialToggle]_toggle("_toggle",int) = 0 或者 [Toggle]_toggle("_toggle",int) = 0
原创 Unity---EditorWindow創建文件夾並設置AssetBundleName與後綴
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; using System.IO; usin
原创 Unity---Assets路徑下的資源文件夾打包AssetBundle
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; using System.IO; usin
原创 Unity--彈窗選擇路徑,選擇文件
在Unity中使用彈窗選擇路徑 1,將System.Windows.Forms.dll放到Assets/Plugins文件夾下(dll文件位置:\Unity\Editor\Data\Mono\lib\mono\2.0) 2,代碼中us