Esempio n. 1
0
 void KeyResetCam()
 {
     if (Input.GetKeyDown(KeyCode.R) && !UICamera.inputHasFocus && !Input.GetMouseButton(0) && !s_ProtectLock0)
     {
         VCECamera cam_scr = m_MainCamera.GetComponent <VCECamera>();
         cam_scr.SmoothReset();
     }
 }
Esempio n. 2
0
 void Start()
 {
     m_MainCameraBehaviour = VCEditor.Instance.m_MainCamera.GetComponent <VCECamera>();
     m_FocusMaterial       = Material.Instantiate(m_FocusMaterial) as Material;
     m_OriginMaterial      = Material.Instantiate(m_OriginMaterial) as Material;
     m_XAxisMaterial       = Material.Instantiate(m_XAxisMaterial) as Material;
     m_YAxisMaterial       = Material.Instantiate(m_YAxisMaterial) as Material;
     m_ZAxisMaterial       = Material.Instantiate(m_ZAxisMaterial) as Material;
     m_NXAxisMaterial      = Material.Instantiate(m_NXAxisMaterial) as Material;
     m_NYAxisMaterial      = Material.Instantiate(m_NYAxisMaterial) as Material;
     m_NZAxisMaterial      = Material.Instantiate(m_NZAxisMaterial) as Material;
 }
Esempio n. 3
0
 void KeyFocus()
 {
     if ((Input.GetKeyDown(KeyCode.F) || VCEInput.s_RightDblClick) && !UICamera.inputHasFocus && !Input.GetMouseButton(0) && !s_ProtectLock0)
     {
         VCEMath.DrawTarget dtar;
         if (VCEMath.RayCastDrawTarget(VCEInput.s_PickRay, out dtar, VCEMath.MC_ISO_VALUE))
         {
             Vector3 newtar = (dtar.snapto.ToVector3() + dtar.cursor.ToVector3() + Vector3.one) * 0.5f * s_Scene.m_Setting.m_VoxelSize;
             // New look distance to keep the origin distance
             VCECamera cam_scr = m_MainCamera.GetComponent <VCECamera>();
             float     dist    = cam_scr.Distance;
             // Maximum distance
             float maxdist = s_Scene.m_Setting.m_VoxelSize * 10.0f;
             if (dist > maxdist)
             {
                 dist = maxdist;
             }
             cam_scr.SetTarget(newtar);
             cam_scr.SetDistance(dist);
         }
     }
 }
Esempio n. 4
0
    private static void AfterSceneChanged(VCESceneSetting setting)
    {
        // Mirror
        s_Mirror = new VCEMirrorSetting();
        s_Mirror.Reset(setting.m_EditorSize.x, setting.m_EditorSize.y, setting.m_EditorSize.z);

        // Mesh manager
        VCEditor.Instance.m_MeshMgr.m_VoxelSize = s_Scene.m_Setting.m_VoxelSize;
        VCEditor.Instance.m_MeshMgr.m_MeshMat   = s_Scene.m_TempIsoMat.m_EditorMat;

        // Set gameobject parameters
        // Camera
        float scale = setting.m_EditorSize.ToVector3().magnitude *setting.m_VoxelSize;

        s_Instance.m_MainCamera.nearClipPlane = setting.m_VoxelSize * 0.5f;
        s_Instance.m_MainCamera.farClipPlane  = scale * 5F;
        VCECamera vce_camera = s_Instance.m_MainCamera.GetComponent <VCECamera>();

        if (s_Scene.m_IsoData.m_Voxels.Count == 0)
        {
            vce_camera.BeginTarget   = setting.m_EditorSize.ToVector3() * setting.m_VoxelSize * 0.5F;
            vce_camera.BeginTarget.y = 0;
            vce_camera.BeginDistance = new Vector2(setting.m_EditorSize.x, setting.m_EditorSize.z).magnitude *setting.m_VoxelSize * 1.2F;
            vce_camera.MinDistance   = setting.m_VoxelSize * 0.5f;
            vce_camera.MaxDistance   = scale * 3F;
            vce_camera.Reset();
        }
        else
        {
            vce_camera.BeginTarget   = setting.m_EditorSize.ToVector3() * setting.m_VoxelSize * 0.5F;
            vce_camera.BeginDistance = setting.m_EditorSize.ToVector3().magnitude *setting.m_VoxelSize * 1.2F;
            vce_camera.MinDistance   = setting.m_VoxelSize * 0.5f;
            vce_camera.MaxDistance   = scale * 3F;
            vce_camera.Reset();
        }
        // GLs
        GLGridPlane[] gps = s_Instance.m_GLGroup.GetComponentsInChildren <GLGridPlane>(true);
        GLBound[]     gbs = s_Instance.m_GLGroup.GetComponentsInChildren <GLBound>(true);
        foreach (GLGridPlane gp in gps)
        {
            gp.m_CellCount         = new IntVector3(setting.m_EditorSize.x, setting.m_EditorSize.y, setting.m_EditorSize.z);
            gp.m_CellSize          = Vector3.one * setting.m_VoxelSize;
            gp.m_MajorGridInterval = setting.m_MajorInterval;
            gp.m_MinorGridInterval = setting.m_MinorInterval;
            gp.m_Fdisk             = setting.m_Category == EVCCategory.cgDbSword;
        }
        foreach (GLBound gb in gbs)
        {
            gb.m_Bound = new Bounds(Vector3.zero, Vector3.zero);
            gb.m_Bound.SetMinMax(Vector3.zero, setting.m_EditorSize.ToVector3() * setting.m_VoxelSize);
        }

        // UIs
        s_Instance.m_UI.OnSceneCreate();

        // VARS
        // Recent vars
        VCESelectMethod_Box.s_RecentDepth         = 1;
        VCESelectMethod_Box.s_RecentFeatherLength = 0;
        VCESelectMethod_Box.s_RecentPlaneFeather  = true;

        // Selected
        SelectedColor = Color.white;
    }
Esempio n. 5
0
 void Awake()
 {
     s_Instance = this;
 }