1 用c# 實現單例
參考:
https://www.cnblogs.com/Dean27/p/7744452.html
繼承MonoBehaviour的單體
public class Singleton : MonoBehaviour { public static Singleton _Instance; public static Singleton Instance { get { if(_Instance==null) { _Instance = FindObjectOfType(typeof(Singleton)) as Singleton; } return _Instance; } } // Use this for initialization void Start () { } public void TestResut() { Debug.Log("hihi 一個最簡單的單例"); } }
測試
Singleton.Instance.TestResut()
使用泛型抽象類實現的單例
public abstract class NotDestorySingleton<T> : MonoBehaviour where T: NotDestorySingleton <T> { protected static T _Instance; public static T Instance { get { if (_Instance == null) { GameObject ND = GameObject.Find("ND"); if(ND == null) { ND = new GameObject("ND"); ND.AddComponent<T>(); DontDestroyOnLoad(ND); } _Instance=ND.GetComponent<T>(); } return _Instance; } } // Use this for initialization void Start () { } // Update is called once per frame void Update () { } }
public class NotDestoryTest : NotDestorySingleton<NotDestoryTest> { // Use this for initialization void Start () { } public void TestResult() { Debug.Log("這是一個使用泛型抽象類實現的單例"); } // Update is called once per frame void Update () { } }
NotDestoryTest.Instance.TestResult();
完結撒花
2 一個Cube父物體,下面有一個子物體(cuber). 如何將子物體cube移動到0點, 子物體cube移動到0點時Rotation也置為0
思路一 子物體和父物體交換, 使用tranform.localRotaion=Quaternion.identy; transform.localPosition=Vector3.zero; 然后父物體和子物體再交換順序
3 渲染管線的理解
4 Unity 各個版本的區別
Unity 2019
AR/VR方面的更新
**AR Foundation
AR Foundation幫助Unity開發者快速開始構建AR項目。你可以在自己的AR體驗選擇要加入的功能,只需構建一次,就能同時部署到支持ARKit和ARCore的設備。
AR Foundation以資源包的形式在資源包管理器提供,它把ARKit和ARCore的底層API結合到同一個框架中,包含額外功能以幫助開發者應對AR開發的最大挑戰。
**AR Remote(預覽版)
AR Remote允許你在設備和Unity編輯器之間傳遞數據,不必在每次測試功能的時候把項目構建到設備上。
AR Remote包含Session Recording & Playback會話錄制和回放功能。它可以錄制設備上的會話過程,在編輯器進行回放,以實現高效的應用程序測試過程,並迭代預覽效果。
**手持式AR示例項目
手持式AR示例項目已經發布。該項目的場景、預制件和輔助組件都基於AR Foundation開發,用於展示如何處理平面預覽、對象放置等功能。
手持式AR示例項目介紹如何使用輕量級渲染管線LWRP和AR Foundation。它包含所有開發時需要的組件,使開發者可以快速構建和運行自己的AR項目。
圖形改進
LWRP支持AR和VR
AR Foundation對輕量級渲染管線LWRP的支持以預覽版資源包的形式推出,讓開發者為AR體驗使用LWRP。
在新版本和LWRP最新資源包中,開發者可以利用Shader Graph着色器視圖和LWRP的性能優化功能來為Unity支持的所有VR平台構建VR體驗。
立體渲染模式回退功能
當目標設備不支持立體實例化時,立體渲染功能會自動回退為單通道渲染。開發者可以安全地使用更高效的Stereo Instancing立體實例化渲染模式,不必擔心特定設備的圖形API是否支持該模式。在此前版本中,立體渲染模式會回退為多通道渲染。
立體實例化的后期處理支持
在Unity 2019.1和最新后期處理特效包中,所有對VR可見的后期處理效果都適用於Stereo Instancing立體實例化渲染模式。
對Magic Leap的內置支持
構建到Magic Leap One的支持現在已經加入Unity 2019.1,這意味着開發者不必為了Magic Leap開發而使用特定的技術預覽版Unity,只要使用Unity 2019.1就可以了
5 實現網絡通信
丟包等處理
6 整理一下重點項目的框架 設計思路 設計方法
7 c++ 可以子類可以繼承多個父類, c# 不能同時繼承多個,用什么技術可以達到相同效果
interface 接口
8 兩個物體 如何才能發生碰撞
rigibody
9 unity 有哪些性能優化方法
10 對 c# 協同的理解
11 stringBulider 和 StringBuffer,的區別
12 lua , lua和unity 是如何工作的,原理是什么