unity小記

  一、window下的Occlusion Culling是實現遮擋剔除效果,即再也不攝像機裏出現的物體使其不被渲染。數組

      這樣作要使物體爲靜態的,並且效果在設計時只在Occlusion面板下有效app

  二、window下的Lightmapping是實現烘培效果,可使建築物影子不隨光源位置改變而改變,節省資源。異步

      烘培的物體必須爲靜態,投影到的物體也必須是靜態的。async

  三、須要彩色光烘培時。spa

      帶有色彩的物體設爲靜態,效果物體爲非靜態,並在全部物體上選擇Use Light Probes。設計

      新建一個空物體,添加rendering下的Light Probe Group組件,使組件的感應球罩住全部烘培物體。code

      烘培,使物體有反光色彩效果。orm

 

  四、 edit/render settings/fog 選項是選擇是否給場景(天空盒)添加霧的效果。    要想修改天空盒材質(天氣或日夜切換),在代碼中htm

      RenderSettings.skybox = night 便可。blog

 

  五、Screen.showCursor = false ; 隱藏鼠標圖標。

 

  六、根據給定點畫路線,road數組爲點集。

    void OnDrawGizmos(){
        road = GameObject.FindGameObjectsWithTag("other") ;
        for(int i=0; i<road.Length; i++){
            for(int j=0; j<road.Length; j++){
                if(!Physics.Linecast(road[i].transform.position, road[j].transform.position)){
                    Gizmos.DrawLine(road[i].transform.position, road[j].transform.position) ;
                }
            }
        }
    }

   七、Vector3.sqrMagnitude 向量長度的平方

 

  八、 異步加載下一場景   異步累加等(Application下)

if(GUI.Button(new Rect(100, 100, 100, 100), "LoadNextScene")){
  async = Application.LoadLevelAsync(1) ;
  loadIsDone = true ;
}

  九、 用鼠標的移動軌跡向量和相機向量可實現cube的隨鼠標旋轉

    void Update () {
        if(Input.GetMouseButton(0)){
            mouseDirection = Input.mousePosition - mousePositionTemp;
            rotateAxis = Vector3.Cross(mouseDirection, transform.forward);
        }
        if (!Input.anyKey) {
            rotateAxis = Vector3.Lerp(rotateAxis, Vector3.zero, Time.deltaTime);
        }
        myCube.Rotate(rotateAxis, Space.World);
        mousePositionTemp = Input.mousePosition;
    }

   十、 註釋   #region #endregion縮略代碼並附加說明

          ///3斜槓註釋 給該方法一個說明  調用時顯示這個說明

相關文章
相關標籤/搜索