コード例 #1
0
    Vector3 GetInitialCameraPosition(ParcelScene parcelScene)
    {
        Vector3 middlePoint = BIWUtils.CalculateUnityMiddlePoint(parcelScene);
        Vector3 direction   = (parcelScene.transform.position - middlePoint).normalized;

        return(parcelScene.transform.position
               + direction * initialEagleCameraDistance
               + Vector3.up * initialEagleCameraHeight);
    }
コード例 #2
0
    void SetLookAtObject(ParcelScene parcelScene)
    {
        Vector3 middlePoint = BIWUtils.CalculateUnityMiddlePoint(parcelScene);

        lookAtT.position = middlePoint + Vector3.up * initialEagleCameraLookAtHeight;
    }
コード例 #3
0
    private void EnterEditMode()
    {
        if (!initialLoadingController.isActive)
        {
            return;
        }

        isEnteringEditMode = false;
        BIWNFTController.i.ClearNFTs();

        ParcelSettings.VISUAL_LOADING_ENABLED = false;

        sceneToEdit.SetEditMode(true);
        cursorGO.SetActive(false);
        parcelUnityMiddlePoint = BIWUtils.CalculateUnityMiddlePoint(sceneToEdit);

        if (HUDController.i.builderInWorldMainHud != null)
        {
            HUDController.i.builderInWorldMainHud.SetParcelScene(sceneToEdit);
            HUDController.i.builderInWorldMainHud.RefreshCatalogContent();
            HUDController.i.builderInWorldMainHud.RefreshCatalogAssetPack();
            HUDController.i.builderInWorldMainHud.SetVisibilityOfCatalog(true);
            HUDController.i.builderInWorldMainHud.SetVisibilityOfInspector(true);
        }

        CommonScriptableObjects.builderInWorldNotNecessaryUIVisibilityStatus.Set(false);
        DataStore.i.dataStoreBuilderInWorld.showTaskBar.Set(true);

        DCLCharacterController.OnPositionSet += ExitAfterCharacterTeleport;

        EnterBiwControllers();
        Environment.i.world.sceneController.ActivateBuilderInWorldEditScene();

        initialLoadingController.SetPercentage(100f);

        if (IsNewScene())
        {
            floorHandler.OnAllParcelsFloorLoaded -= OnAllParcelsFloorLoaded;
            floorHandler.OnAllParcelsFloorLoaded += OnAllParcelsFloorLoaded;
            SetupNewScene();
        }
        else
        {
            initialLoadingController.Hide(onHideAction: () =>
            {
                inputController.inputTypeMode = InputTypeMode.BUILD_MODE;
                HUDController.i.builderInWorldMainHud?.SetVisibility(true);
                CommonScriptableObjects.allUIHidden.Set(previousAllUIHidden);
                OpenNewProjectDetailsIfNeeded();
            });
        }

        isBuilderInWorldActivated = true;

        previousSkyBoxMaterial = RenderSettings.skybox;
        RenderSettings.skybox  = skyBoxMaterial;

        foreach (var groundVisual in groundVisualsGO)
        {
            groundVisual.SetActive(false);
        }
        startEditorTimeStamp = Time.realtimeSinceStartup;

        BIWAnalytics.AddSceneInfo(sceneToEdit.sceneData.basePosition, BIWUtils.GetLandOwnershipType(landsWithAccess, sceneToEdit).ToString(), BIWUtils.GetSceneSize(sceneToEdit));
        BIWAnalytics.EnterEditor(Time.realtimeSinceStartup - beginStartFlowTimeStamp);
    }