dx
This commit is contained in:
@@ -0,0 +1,111 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
#if PROCEDURAL_TOOLKIT
|
||||
using ProceduralToolkit.Buildings;
|
||||
#endif
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Building depth below ground level
|
||||
/// </summary>
|
||||
public float buildingBasementDepth = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Where to take height of the bottom points
|
||||
/// </summary>
|
||||
public RealWorldTerrainBuildingBottomMode buildingBottomMode = RealWorldTerrainBuildingBottomMode.followRealWorldData;
|
||||
|
||||
/// <summary>
|
||||
/// Height of the floor.
|
||||
/// </summary>
|
||||
public float buildingFloorHeight = 3.5f;
|
||||
|
||||
/// <summary>
|
||||
/// Range the number of floors buildings.
|
||||
/// </summary>
|
||||
public RealWorldTerrainRangeI buildingFloorLimits = new RealWorldTerrainRangeI(5, 7, 1, 50);
|
||||
|
||||
/// <summary>
|
||||
/// Index of building generator.
|
||||
/// 0 - Built-in
|
||||
/// 1 - BuildR
|
||||
/// 2 - BuildR2
|
||||
/// 3 - Instantiate prefabs
|
||||
/// </summary>
|
||||
public int buildingGenerator = 0;
|
||||
|
||||
/// <summary>
|
||||
/// List of buildings materials.
|
||||
/// </summary>
|
||||
public List<RealWorldTerrainBuildingMaterial> buildingMaterials;
|
||||
|
||||
/// <summary>
|
||||
/// List of prefabs to instantiate
|
||||
/// </summary>
|
||||
public List<RealWorldTerrainBuildingPrefab> buildingPrefabs;
|
||||
|
||||
/// <summary>
|
||||
/// Whether to save meshes and materials of buildings in the assets folder.
|
||||
/// When false, meshes and materials may be lost when the scene is saved.
|
||||
/// </summary>
|
||||
public bool buildingSaveInResult = true;
|
||||
|
||||
/// <summary>
|
||||
/// TRUE - All buildings will be loaded in one request to OSM Overpass, FALSE - buildings will be loaded in several requests (useful for megacities).
|
||||
/// </summary>
|
||||
public bool buildingSingleRequest = true;
|
||||
|
||||
/// <summary>
|
||||
/// Use colors from OSM?
|
||||
/// </summary>
|
||||
public bool buildingUseColorTags = false;
|
||||
|
||||
/// <summary>
|
||||
/// Type of collider for BuildR buildings.
|
||||
/// </summary>
|
||||
public RealWorldTerrainBuildR2Collider buildRCollider = RealWorldTerrainBuildR2Collider.none;
|
||||
|
||||
/// <summary>
|
||||
/// Generate colliders for BuildR3.
|
||||
/// </summary>
|
||||
public bool buildR3Collider = false;
|
||||
|
||||
/// <summary>
|
||||
/// Render mode for BuildR buildings.
|
||||
/// </summary>
|
||||
public RealWorldTerrainBuildR2RenderMode buildRRenderMode = RealWorldTerrainBuildR2RenderMode.full;
|
||||
|
||||
public List<RealWorldTerrainBuildR2Material> buildR2Materials;
|
||||
public List<RealWorldTerrainBuildR3Material> buildR3Materials;
|
||||
|
||||
/// <summary>
|
||||
/// Instance ID of BuildR generator style.
|
||||
/// </summary>
|
||||
public int customBuildRGeneratorStyle = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Instance ID of BuildR generator texture pack.
|
||||
/// </summary>
|
||||
public int customBuildRGeneratorTexturePack = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Array of BuildR presets.
|
||||
/// </summary>
|
||||
public RealWorldTerrainBuildRPresetsItem[] customBuildRPresets;
|
||||
|
||||
public bool dynamicBuildings = true;
|
||||
|
||||
#if PROCEDURAL_TOOLKIT
|
||||
public FacadePlanningStrategy ptFacadePlanningStrategy;
|
||||
public FacadeConstructionStrategy ptFacadeConstructionStrategy;
|
||||
public RoofPlanningStrategy ptRoofPlanningStrategy;
|
||||
public RoofConstructionStrategy ptRoofConstructionStrategy;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b4f4f6dc4d6250f42973f0188c0fb5f2
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,33 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Density of grass.
|
||||
/// </summary>
|
||||
public int grassDensity = 100;
|
||||
|
||||
/// <summary>
|
||||
/// Grass engine ID.
|
||||
/// </summary>
|
||||
public string grassEngine;
|
||||
|
||||
/// <summary>
|
||||
/// List of grass textures.
|
||||
/// </summary>
|
||||
public List<Texture2D> grassPrefabs;
|
||||
|
||||
public List<int> vegetationStudioGrassTypes;
|
||||
|
||||
/// <summary>
|
||||
/// What to do with outside points for VolumeGrass?
|
||||
/// </summary>
|
||||
public RealWorldTerrainVolumeGrassOutsidePoints volumeGrassOutsidePoints;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a8c4881629c8dbf4e91ef71fc16d3316
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,48 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using UnityEngine;
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
public string[] erRoadTypes;
|
||||
|
||||
public bool erGenerateConnection = true;
|
||||
|
||||
/// <summary>
|
||||
/// EasyRoads3D SnapToTerrain
|
||||
/// </summary>
|
||||
public bool erSnapToTerrain = true;
|
||||
|
||||
public float erWidthMultiplier = 1;
|
||||
|
||||
public bool normalizeRoadDistances = true;
|
||||
|
||||
/// <summary>
|
||||
/// Name of road engine.
|
||||
/// </summary>
|
||||
public string roadEngine;
|
||||
|
||||
/// <summary>
|
||||
/// Types of roads that will be created.
|
||||
/// </summary>
|
||||
public RealWorldTerrainRoadType roadTypes = (RealWorldTerrainRoadType)(~0);
|
||||
|
||||
/// <summary>
|
||||
/// The mode of generation of road types
|
||||
/// </summary>
|
||||
public RealWorldTerrainRoadTypeMode roadTypeMode = RealWorldTerrainRoadTypeMode.simple;
|
||||
|
||||
/// <summary>
|
||||
/// The material that will be used to SplineBend roads.
|
||||
/// </summary>
|
||||
public Material splineBendMaterial;
|
||||
|
||||
/// <summary>
|
||||
/// The mesh that will be used to SplineBend roads.
|
||||
/// </summary>
|
||||
public Mesh splineBendMesh;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5a02c8ab3ec725943877e39683e5ce27
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,161 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using UnityEngine;
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
/// <summary>
|
||||
/// If disabled terrains will have zero Y at minimum elevation. <br/>
|
||||
/// If enabled, terrains will have zero Y on the water line(zero elevation).
|
||||
/// </summary>
|
||||
public bool alignWaterLine;
|
||||
|
||||
public Vector2 autoDetectElevationOffset = new Vector2(100, 100);
|
||||
|
||||
/// <summary>
|
||||
/// Resolution of the base map used for rendering far patches on the terrain.
|
||||
/// </summary>
|
||||
public int baseMapResolution = 1024;
|
||||
|
||||
/// <summary>
|
||||
/// Flag indicating that the zero is used as unknown value.
|
||||
/// </summary>
|
||||
public bool bingMapsUseZeroAsUnknown;
|
||||
|
||||
/// <summary>
|
||||
/// Resolution of control texture.
|
||||
/// </summary>
|
||||
public int controlTextureResolution = 512;
|
||||
|
||||
/// <summary>
|
||||
/// Escarpment of the seabed. Greater value - steeper slope.
|
||||
/// </summary>
|
||||
public float depthSharpness = 0;
|
||||
|
||||
/// <summary>
|
||||
/// The resolution of the map that controls grass and detail meshes.<br/>
|
||||
/// For performance reasons (to save on draw calls) the lower you set this number the better.
|
||||
/// </summary>
|
||||
public int detailResolution = 2048;
|
||||
|
||||
/// <summary>
|
||||
/// Elevation provider
|
||||
/// </summary>
|
||||
public RealWorldTerrainElevationProvider elevationProvider = RealWorldTerrainElevationProvider.SRTM;
|
||||
|
||||
public RealWorldTerrainElevationRange elevationRange = RealWorldTerrainElevationRange.autoDetect;
|
||||
|
||||
public RealWorldTerrainElevationType elevationType = RealWorldTerrainElevationType.realWorld;
|
||||
|
||||
/// <summary>
|
||||
/// The fixed size of terrain.<br/>
|
||||
/// X - Terrain Width<br/>
|
||||
/// Y - Terrain Height<br/>
|
||||
/// Z - Terrain Length
|
||||
/// </summary>
|
||||
public Vector3 fixedTerrainSize = new Vector3(500, 600, 500);
|
||||
|
||||
/// <summary>
|
||||
/// The resolution of GAIA stamp
|
||||
/// </summary>
|
||||
public int gaiaStampResolution = 1024;
|
||||
|
||||
/// <summary>
|
||||
/// Generate unknown underwater areas based on known data
|
||||
/// </summary>
|
||||
public bool generateUnderWater;
|
||||
|
||||
/// <summary>
|
||||
/// The HeightMap resolution for each Terrain.
|
||||
/// </summary>
|
||||
public int heightmapResolution = 129;
|
||||
|
||||
/// <summary>
|
||||
/// Errors of SRTM should be ignored?
|
||||
/// </summary>
|
||||
public bool ignoreSRTMErrors;
|
||||
|
||||
public float fixedMaxElevation = 1000;
|
||||
public float fixedMinElevation = 0;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Type of max elevation value.
|
||||
/// </summary>
|
||||
public RealWorldTerrainMaxElevation maxElevationType = RealWorldTerrainMaxElevation.autoDetect;
|
||||
|
||||
/// <summary>
|
||||
/// Elevation value when there is no data.
|
||||
/// </summary>
|
||||
public short nodataValue;
|
||||
|
||||
/// <summary>
|
||||
/// The order of bytes in a RAW file.
|
||||
/// </summary>
|
||||
public RealWorldTerrainByteOrder rawByteOrder = RealWorldTerrainByteOrder.Windows;
|
||||
|
||||
/// <summary>
|
||||
/// Filename of RAW result
|
||||
/// </summary>
|
||||
public string rawFilename = "terrain";
|
||||
|
||||
/// <summary>
|
||||
/// Height of RAW result
|
||||
/// </summary>
|
||||
public int rawHeight = 1024;
|
||||
|
||||
/// <summary>
|
||||
/// Width of RAW result
|
||||
/// </summary>
|
||||
public int rawWidth = 1024;
|
||||
|
||||
/// <summary>
|
||||
/// Type of RAW result
|
||||
/// </summary>
|
||||
public RealWorldTerrainRawType rawType = RealWorldTerrainRawType.RAW;
|
||||
|
||||
/// <summary>
|
||||
/// Specifies the size in pixels of each individually rendered detail patch. <br/>
|
||||
/// A larger number reduces draw calls, but might increase triangle count since detail patches are culled on a per batch basis. <br/>
|
||||
/// A recommended value is 16. <br/>
|
||||
/// If you use a very large detail object distance and your grass is very sparse, it makes sense to increase the value.
|
||||
/// </summary>
|
||||
public int resolutionPerPatch = 16;
|
||||
|
||||
/// <summary>
|
||||
/// Type of result (terrain, mesh).
|
||||
/// </summary>
|
||||
public RealWorldTerrainResultType resultType = RealWorldTerrainResultType.terrain;
|
||||
|
||||
/// <summary>
|
||||
/// Specifies whether the projection will be determined by the size of the area.<br/>
|
||||
/// 0 - Real world sizes.<br/>
|
||||
/// 1 - Mercator sizes.<br/>
|
||||
/// 2 - Fixed size.
|
||||
/// </summary>
|
||||
public int sizeType = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Scale of terrains.
|
||||
/// </summary>
|
||||
public Vector3 terrainScale = Vector3.one;
|
||||
|
||||
/// <summary>
|
||||
/// The source of water detection.
|
||||
/// </summary>
|
||||
public RealWorldTerrainWaterDetectionSource waterDetectionSource = RealWorldTerrainWaterDetectionSource.texture;
|
||||
|
||||
/// <summary>
|
||||
/// The bit mask of water detection.
|
||||
/// </summary>
|
||||
public TextAsset waterDetectionBitMask;
|
||||
|
||||
/// <summary>
|
||||
/// The texture of water detection.
|
||||
/// </summary>
|
||||
public Texture2D waterDetectionTexture;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a4bf248828f293544887a7e56df66868
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,87 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
public int hugeTexturePageSize = 2048;
|
||||
public int hugeTextureRows = 13;
|
||||
public int hugeTextureCols = 13;
|
||||
|
||||
/// <summary>
|
||||
/// Texture type ID.
|
||||
/// </summary>
|
||||
public string mapTypeID;
|
||||
|
||||
/// <summary>
|
||||
/// Texture type extra fields.
|
||||
/// </summary>
|
||||
public string mapTypeExtraFields;
|
||||
|
||||
/// <summary>
|
||||
/// The maximum level of zoom, to be used for texture generation.\n
|
||||
/// 0 - Autodetect.\n
|
||||
/// 1+ - Level of zoom.
|
||||
/// </summary>
|
||||
public int maxTextureLevel;
|
||||
|
||||
/// <summary>
|
||||
/// Reducing the size of the texture, reduces the time texture generation and memory usage.
|
||||
/// </summary>
|
||||
public bool reduceTextures = true;
|
||||
|
||||
/// <summary>
|
||||
/// Count of textures.
|
||||
/// </summary>
|
||||
public RealWorldTerrainVector2i textureCount = RealWorldTerrainVector2i.one;
|
||||
|
||||
/// <summary>
|
||||
/// Type of texture file output
|
||||
/// </summary>
|
||||
public RealWorldTerrainTextureFileType textureFileType = RealWorldTerrainTextureFileType.jpg;
|
||||
|
||||
/// <summary>
|
||||
/// Quality of file output
|
||||
/// </summary>
|
||||
public int textureFileQuality = 100;
|
||||
|
||||
/// <summary>
|
||||
/// Provider of textures.
|
||||
/// </summary>
|
||||
public RealWorldTerrainTextureProvider textureProvider = RealWorldTerrainTextureProvider.virtualEarth;
|
||||
|
||||
/// <summary>
|
||||
/// URL pattern of custom texture provider.
|
||||
/// </summary>
|
||||
public string textureProviderURL = "http://localhost/tiles/{zoom}/{x}/{y}";
|
||||
|
||||
/// <summary>
|
||||
/// Size of texture.
|
||||
/// </summary>
|
||||
public RealWorldTerrainVector2i textureSize = new RealWorldTerrainVector2i(1024, 1024);
|
||||
|
||||
/// <summary>
|
||||
/// Use mip-mapping for textures (not recommended)
|
||||
/// </summary>
|
||||
public bool textureMipMaps = false;
|
||||
|
||||
/// <summary>
|
||||
/// Type of result texture
|
||||
/// </summary>
|
||||
public RealWorldTerrainTextureResultType textureResultType = RealWorldTerrainTextureResultType.regularTexture;
|
||||
|
||||
/// <summary>
|
||||
/// Type of tile texture.
|
||||
/// </summary>
|
||||
public RealWorldTerrainTextureType textureType = RealWorldTerrainTextureType.satellite;
|
||||
|
||||
public List<TerrainLayer> vectorTerrainBaseLayers;
|
||||
public Vector2 vectorTerrainBaseLayersNoiseOffset = Vector2.zero;
|
||||
public float vectorTerrainBaseLayersNoiseScale = 16;
|
||||
public List<RealWorldTerrainVectorTerrainLayerFeature> vectorTerrainLayers;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ddd41e3b7da1ce442baa6726d9e61512
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,26 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Density of trees.
|
||||
/// </summary>
|
||||
public int treeDensity = 100;
|
||||
|
||||
public string treeEngine;
|
||||
|
||||
/// <summary>
|
||||
/// List of tree prefabs.
|
||||
/// </summary>
|
||||
public List<GameObject> treePrefabs;
|
||||
|
||||
public List<int> vegetationStudioTreeTypes;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ab0e9905bf61c2c4dbe4d8691893936c
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,44 @@
|
||||
/* INFINITY CODE */
|
||||
/* https://infinity-code.com */
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
|
||||
namespace InfinityCode.RealWorldTerrain
|
||||
{
|
||||
/// <summary>
|
||||
/// Basic settings generation of terrain.
|
||||
/// </summary>
|
||||
[Serializable]
|
||||
public partial class RealWorldTerrainPrefsBase
|
||||
{
|
||||
/// <summary>
|
||||
/// List of points of interest.
|
||||
/// </summary>
|
||||
public List<RealWorldTerrainPOI> POI;
|
||||
|
||||
public string riverEngine = "Built-In";
|
||||
|
||||
public Material riverMaterial;
|
||||
|
||||
#if RAM2019
|
||||
public LakePolygonProfile ramAreaProfile;
|
||||
public SplineProfile ramSplineProfile;
|
||||
#endif
|
||||
|
||||
/// <summary>
|
||||
/// Title
|
||||
/// </summary>
|
||||
public string title;
|
||||
|
||||
#if VEGETATION_STUDIO || VEGETATION_STUDIO_PRO
|
||||
#if !VEGETATION_STUDIO_PRO
|
||||
public AwesomeTechnologies.VegetationPackage vegetationStudioPackage;
|
||||
#else
|
||||
public AwesomeTechnologies.VegetationSystem.VegetationPackagePro vegetationStudioPackage;
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ba74bddcf98bac947b7a2a6bdd832758
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user