public void UpdateTerrain(Vector3 terSize) { // Does not actually modify the actual current terrain size but sets other related properites based on the current selected terrain size // A hobclob of different actions we take when terrain modified, including positions of player, water, bounds, horizon currentMap.map.GetComponent <Terrain>().basemapDistance = 2000; blockPlayerCube.transform.position = new Vector3(terSize.x / 2f, 0, terSize.z / 2f); blockPlayerCube.transform.localScale = Vector3.one * terSize.x / 1000f * 1.1f; LevelBuilder.inst.camSkyNorthEastBoundary.transform.position = new Vector3(terSize.x, 0, terSize.z); // // commented Debug.Log("tersize x:"+terSize.x); float hardcodedYposForTerrainFX = -210f; float hardcodedYscaleForTerrainFX = 500f; float hardcodedToonWaterHeight = 41.68f; // float hardcodedHorizonObjectTransformPosY = 44f; waterFX.transform.position = new Vector3(terSize.x / 2f, hardcodedYposForTerrainFX, terSize.z / 2f); waterFX.transform.localScale = new Vector3(terSize.x * 3f, hardcodedYscaleForTerrainFX, terSize.z * 3f); waterFXskyCam.transform.position = new Vector3(terSize.x / 2f, 23f, terSize.z / 2f); float waterFxMod = 1.4f; waterFXskyCam.transform.localScale = new Vector3(terSize.x + camBoundBuffer * waterFxMod, 22f, terSize.z + camBoundBuffer * waterFxMod); // hardcoded values here waterFXskyCam.SetActive(LevelBuilder.inst.levelBuilderIsShowing); // // commented Debug.Log("utwc size:"+utwc.config.size); float waterSizeDelta = 2f; // waterSmallerOffsetForHorizonFXtoBlendSmoothly utwc.config.meshPointDistance = 48; // utwc.config.size = new Vector2(terSize.x*waterSizeDelta,terSize.z*waterSizeDelta); utwc.config.size = new Vector2(2000, 2000); // // commented Debug.Log("utwc size:"+utwc.config.size); utwc.transform.position = new Vector3(terSize.x / 2f, hardcodedToonWaterHeight, terSize.z / 2f); utwc.Init(); // Horizon.HorizonMaster hm = FindObjectOfType<Horizon.HorizonMaster>(); // hm.transform.position = new Vector3(terSize.x/2f,0,terSize.z/2f); //// hm.transform.Find("Horizon[ON]_Transition_Terrain").transform.localPosition = new Vector3(0,45,0); // hm.transform.Find("Horizon[ON]_Transition_Terrain").transform.localScale = new Vector3(terSize.x,1,terSize.z); // hm.transform.Find("BakedAndCombinedAndReduced").transform.localScale = Vector3.one * terSize.x / 1000f + Vector3.up; if (LevelBuilder.inst.firstTimeOpened) { SetCameraZoomByTerrainSize(); } }
void OnEnable() { dimObj = new SerializedObject(target); bUseGPU = dimObj.FindProperty("useGPU"); bStickToTarget = dimObj.FindProperty("stickToTarget"); bMoveTextures = dimObj.FindProperty("moveTextures"); bMoveMesh = dimObj.FindProperty("meshWaves"); bPreviewMode = dimObj.FindProperty("previewMode"); tTarget = dimObj.FindProperty("target"); fNow = dimObj.FindProperty("now"); config = dimObj.FindProperty("config"); InitWaterConfig(); UltimateToonWaterC UTW = (UltimateToonWaterC)target; UTW.Init(); EditorApplication.update += Simulate; }