コード例 #1
0
ファイル: SkyTool.cs プロジェクト: ubisoft/vrtist
        public void OnSaveCurrentGradientButtonClicked()
        {
            if (gradientList.CurrentIndex >= 0)
            {
                GlobalState.Settings.skies[gradientList.CurrentIndex] = GlobalState.Settings.sky;

                GradientItem currentItem = gradientList.GetItems()[gradientList.CurrentIndex].Content.GetComponent <GradientItem>();
                currentItem.Colors = GlobalState.Settings.sky;
            }
        }
コード例 #2
0
        public void OnDeletePrefab()
        {
            prefabs.RemoveAt(prefabList.CurrentIndex);

            var currentDLItem = prefabList.GetItems()[prefabList.CurrentIndex];

            prefabList.RemoveItem(currentDLItem);

            prefabList.CurrentIndex = -1;
            RebuildPrefabList();
        }
コード例 #3
0
ファイル: CameraTool.cs プロジェクト: ubisoft/vrtist
        private void OnCameraRenamed(GameObject gObject)
        {
            CameraController cameraController = gObject.GetComponent <CameraController>();

            if (null == cameraController)
            {
                return;
            }
            foreach (UIDynamicListItem item in cameraList.GetItems())
            {
                CameraItem cameraItem = item.Content.gameObject.GetComponent <CameraItem>();
                if (cameraItem.cameraObject == gObject)
                {
                    cameraItem.SetItemName(gObject.name);
                }
            }
        }
コード例 #4
0
        private void OnLightRemoved(GameObject gObject)
        {
            LightController controller = gObject.GetComponent <LightController>();

            if (null == controller)
            {
                return;
            }
            foreach (var item in lightList.GetItems())
            {
                LightItem lightItem = item.Content.GetComponent <LightItem>();
                if (lightItem.lightObject == gObject)
                {
                    lightList.RemoveItem(item);
                    return;
                }
            }
        }
コード例 #5
0
ファイル: Lobby.cs プロジェクト: AnthonyMir/vrtist
        private void Update()
        {
            // ROTATE 45
            float camY           = Camera.main.transform.localEulerAngles.y;
            float lobbyY         = transform.localEulerAngles.y;
            bool  headHasRotated = Mathf.Abs(Mathf.DeltaAngle(camY, lobbyY)) > 45f;

            if (headHasRotated)
            {
                transform.localEulerAngles = new Vector3(0f, camY, 0f);
                needToSetCameraRef         = true;
            }

            // ROTATE while HOVER
            foreach (var pi in projectList.GetItems())
            {
                ProjectItem projectItem = pi.Content.GetComponent <ProjectItem>();
                if (pi.Hovered)
                {
                    projectItem.Rotate();
                }
                else
                {
                    projectItem.ResetRotation(0f);
                }
            }

            // SET Camera Ref position
            if (needToSetCameraRef)
            {
                Vector3 currentCamPos = Camera.main.transform.position;
                if (currentCamPos.sqrMagnitude > 1e-5)
                {
                    foreach (var pi in projectList.GetItems())
                    {
                        ProjectItem projectItem = pi.Content.GetComponent <ProjectItem>();
                        projectItem.SetCameraRef(Camera.main.transform.position);
                    }
                    needToSetCameraRef = false; // only reset it if cam not null.
                }
            }
        }
コード例 #6
0
ファイル: PaintGrassTool.cs プロジェクト: ubisoft/vrtist
        private void OnGrassAdded(GameObject gObject)
        {
            GrassController grassController = gObject.GetComponent <GrassController>();

            if (null == grassController)
            {
                return;
            }

            // Grass is added two times. Dont duplicate.
            bool grassFound = false;

            foreach (var it in grassList.GetItems())
            {
                GrassItem gIt = it.Content.GetComponentInChildren <GrassItem>();
                if (gIt != null)
                {
                    if (gIt.grassObject.name == gObject.name)
                    {
                        grassFound = true;
                    }
                }
            }

            if (!grassFound)
            {
                GameObject grassItemObject = Instantiate(grassItemPrefab);
                GrassItem  grassItem       = grassItemObject.GetComponentInChildren <GrassItem>();
                grassItem.SetGrassObject(gObject);
                Transform         t    = grassItem.transform;
                UIDynamicListItem item = grassList.AddItem(t);
                item.UseColliderForUI = true;
            }
            else
            {
                // TODO: Update image of the item, now that the painting is done.
            }
        }
コード例 #7
0
ファイル: UIShotManager.cs プロジェクト: ubisoft/vrtist
 public ShotItem GetShotItem(int index)
 {
     return(shotList.GetItems()[index].Content.GetComponent <ShotItem>());
 }