public WaterChunksMerger(string fileFilter, int fileX = -1, int fileZ = -1) { _fileLog = fileFilter + "[" + fileX + "," + fileZ + "]"; _waterReader = new VFDataReader(VFVoxelTerrain.MapDataPath_Zip + "/water", OnChunkDataLoad, false); _terraReader = new VFDataReader(VFVoxelTerrain.MapDataPath_Zip + "/map", OnChunkDataLoad, false); River2Voxel.ReadRiverChunksList(ref _riverChunkFileList, fileFilter, fileX, fileZ); _chunkPosList = _riverChunkFileList.Keys.Cast <IntVector4>().ToList(); }
public void Import(Pathea.PeRecordReader r) { ApplyQuality(SystemSettingData.Instance.WaterRefraction, SystemSettingData.Instance.WaterDepth); SaveLoad = new VFVoxelSave(ArchiveKey, AddtionalReader, AddtionalWriter); SaveLoad.Import(r); if (s_surfaceChunkData == null) { InitSufaceChunkData(); } #if RIVER_DATA_FILE_TST // Load river chunk pos River2Voxel.ReadRiverChunksList(ref _riverChunkFileList); #endif }
public override void OnInspectorGUI() { if (!riverScript.finalized) { EditorGUILayout.Separator(); riverScript.terrainLayer = LayerMaskField("Terrain Layer", riverScript.terrainLayer, true); //EditorGUILayout.BeginHorizontal(); //EditorGUILayout.PrefixLabel("Show handles"); //riverScript.showHandles = EditorGUILayout.Toggle(riverScript.showHandles); //EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); riverScript.riverSmooth = (int)EditorGUILayout.IntSlider("Mesh Smooth", riverScript.riverSmooth, 5, 30); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); riverScript.defRiverDepth = EditorGUILayout.Slider("Def River Depth", riverScript.defRiverDepth, 0f, 10f); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); riverScript.defRiverWidth = EditorGUILayout.Slider("Def River Width", riverScript.defRiverWidth, 0f, 100f); EditorGUILayout.EndHorizontal(); if (riverScript.nodeObjects != null) { int nNodes = riverScript.nodeObjects.Count; for (int i = 0; i <= nNodes; i++) { if (DrawRiverNodes(i, nNodes)) { break; } } } if (GUI.changed && riverScript.curRiverNodeToPosite < 0) { EditorUtility.SetDirty(riverScript); riverScript.CreateMesh(riverScript.riverSmooth); } GUILayout.Label("Press r to refresh"); if (GUILayout.Button("Gen Voxel Data")) { River2Voxel river2voxel = new River2Voxel(); river2voxel.GenRiverVoxels(riverScript); } } }