ソースを参照

Procedural Generation 14/21

Nathan Gusatto 1 ヶ月 前
コミット
0859b1043a
47 ファイル変更303 行追加79 行削除
  1. 19 0
      Assets/Editor/UpdatableDataEditor.cs
  2. 2 0
      Assets/Editor/UpdatableDataEditor.cs.meta
  3. 0 0
      Assets/Imported.meta
  4. 0 0
      Assets/Imported/Animals.meta
  5. 0 0
      Assets/Imported/Animals/Forest.meta
  6. 0 0
      Assets/Imported/Animals/Forest/Animal_Fox_01.prefab
  7. 0 0
      Assets/Imported/Animals/Forest/Animal_Fox_01.prefab.meta
  8. 0 0
      Assets/Imported/_Source_Files.meta
  9. 0 0
      Assets/Imported/_Source_Files/FBX.meta
  10. 0 0
      Assets/Imported/_Source_Files/FBX/Animations.fbx
  11. 0 0
      Assets/Imported/_Source_Files/FBX/Animations.fbx.meta
  12. 0 0
      Assets/Imported/_Source_Files/FBX/Animations_IK.fbx
  13. 0 0
      Assets/Imported/_Source_Files/FBX/Animations_IK.fbx.meta
  14. 0 0
      Assets/Imported/_Source_Files/FBX/Animations_Static.fbx
  15. 0 0
      Assets/Imported/_Source_Files/FBX/Animations_Static.fbx.meta
  16. 0 0
      Assets/Imported/_Source_Files/FBX/Fox.fbx
  17. 0 0
      Assets/Imported/_Source_Files/FBX/Fox.fbx.meta
  18. 0 0
      Assets/Imported/_Source_Files/FBX/Materials.meta
  19. 0 0
      Assets/Imported/_Source_Files/FBX/Materials/lambert1.mat
  20. 0 0
      Assets/Imported/_Source_Files/FBX/Materials/lambert1.mat.meta
  21. 0 0
      Assets/Imported/_Source_Files/Materials.meta
  22. 0 0
      Assets/Imported/_Source_Files/Materials/SimpleForestAnimals.mat
  23. 0 0
      Assets/Imported/_Source_Files/Materials/SimpleForestAnimals.mat.meta
  24. 0 0
      Assets/Imported/_Source_Files/Misc.meta
  25. 0 0
      Assets/Imported/_Source_Files/Misc/SFA_Animal_Fox.controller
  26. 0 0
      Assets/Imported/_Source_Files/Misc/SFA_Animal_Fox.controller.meta
  27. 0 0
      Assets/Imported/_Source_Files/Textures.meta
  28. 0 0
      Assets/Imported/_Source_Files/Textures/SimpleForestAnimalsTexture.png
  29. 0 0
      Assets/Imported/_Source_Files/Textures/SimpleForestAnimalsTexture.png.meta
  30. 35 0
      Assets/Scenes/SampleScene.unity
  31. 8 0
      Assets/Scripts/Procedural Generation/Data.meta
  32. 29 0
      Assets/Scripts/Procedural Generation/Data/NoiseData.cs
  33. 2 0
      Assets/Scripts/Procedural Generation/Data/NoiseData.cs.meta
  34. 11 0
      Assets/Scripts/Procedural Generation/Data/TerrainData.cs
  35. 2 0
      Assets/Scripts/Procedural Generation/Data/TerrainData.cs.meta
  36. 10 0
      Assets/Scripts/Procedural Generation/Data/TextureData.cs
  37. 2 0
      Assets/Scripts/Procedural Generation/Data/TextureData.cs.meta
  38. 23 0
      Assets/Scripts/Procedural Generation/Data/UpdatableData.cs
  39. 2 0
      Assets/Scripts/Procedural Generation/Data/UpdatableData.cs.meta
  40. 4 9
      Assets/Scripts/Procedural Generation/EndlessTerrain.cs
  41. 3 2
      Assets/Scripts/Procedural Generation/MapDisplay.cs
  42. 44 68
      Assets/Scripts/Procedural Generation/MapGenerator.cs
  43. 8 0
      Assets/TerrainAssets.meta
  44. 22 0
      Assets/TerrainAssets/DefaultNoise.asset
  45. 8 0
      Assets/TerrainAssets/DefaultNoise.asset.meta
  46. 61 0
      Assets/TerrainAssets/DefaultTerrain.asset
  47. 8 0
      Assets/TerrainAssets/DefaultTerrain.asset.meta

+ 19 - 0
Assets/Editor/UpdatableDataEditor.cs

@@ -0,0 +1,19 @@
+using UnityEngine;
+using UnityEditor;
+
+[CustomEditor(typeof(UpdatableData), true)]
+public class UpdatableDataEditor : Editor
+{
+    public override void OnInspectorGUI()
+    {
+        base.OnInspectorGUI();
+
+        UpdatableData data = (UpdatableData)target;
+
+        if (GUILayout.Button("Update"))
+        {
+            data.NotifyOfUpdatedValues();
+        }
+
+    }
+}

+ 2 - 0
Assets/Editor/UpdatableDataEditor.cs.meta

@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: a4d44462f918ecb42b21c0a3f8afbb73

+ 0 - 0
Assets/Course Library.meta → Assets/Imported.meta


+ 0 - 0
Assets/Course Library/Animals.meta → Assets/Imported/Animals.meta


+ 0 - 0
Assets/Course Library/Animals/Forest.meta → Assets/Imported/Animals/Forest.meta


+ 0 - 0
Assets/Course Library/Animals/Forest/Animal_Fox_01.prefab → Assets/Imported/Animals/Forest/Animal_Fox_01.prefab


+ 0 - 0
Assets/Course Library/Animals/Forest/Animal_Fox_01.prefab.meta → Assets/Imported/Animals/Forest/Animal_Fox_01.prefab.meta


+ 0 - 0
Assets/Course Library/_Source_Files.meta → Assets/Imported/_Source_Files.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX.meta → Assets/Imported/_Source_Files/FBX.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations.fbx → Assets/Imported/_Source_Files/FBX/Animations.fbx


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations.fbx.meta → Assets/Imported/_Source_Files/FBX/Animations.fbx.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations_IK.fbx → Assets/Imported/_Source_Files/FBX/Animations_IK.fbx


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations_IK.fbx.meta → Assets/Imported/_Source_Files/FBX/Animations_IK.fbx.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations_Static.fbx → Assets/Imported/_Source_Files/FBX/Animations_Static.fbx


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Animations_Static.fbx.meta → Assets/Imported/_Source_Files/FBX/Animations_Static.fbx.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Fox.fbx → Assets/Imported/_Source_Files/FBX/Fox.fbx


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Fox.fbx.meta → Assets/Imported/_Source_Files/FBX/Fox.fbx.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Materials.meta → Assets/Imported/_Source_Files/FBX/Materials.meta


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Materials/lambert1.mat → Assets/Imported/_Source_Files/FBX/Materials/lambert1.mat


+ 0 - 0
Assets/Course Library/_Source_Files/FBX/Materials/lambert1.mat.meta → Assets/Imported/_Source_Files/FBX/Materials/lambert1.mat.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Materials.meta → Assets/Imported/_Source_Files/Materials.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Materials/SimpleForestAnimals.mat → Assets/Imported/_Source_Files/Materials/SimpleForestAnimals.mat


+ 0 - 0
Assets/Course Library/_Source_Files/Materials/SimpleForestAnimals.mat.meta → Assets/Imported/_Source_Files/Materials/SimpleForestAnimals.mat.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Misc.meta → Assets/Imported/_Source_Files/Misc.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Misc/SFA_Animal_Fox.controller → Assets/Imported/_Source_Files/Misc/SFA_Animal_Fox.controller


+ 0 - 0
Assets/Course Library/_Source_Files/Misc/SFA_Animal_Fox.controller.meta → Assets/Imported/_Source_Files/Misc/SFA_Animal_Fox.controller.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Textures.meta → Assets/Imported/_Source_Files/Textures.meta


+ 0 - 0
Assets/Course Library/_Source_Files/Textures/SimpleForestAnimalsTexture.png → Assets/Imported/_Source_Files/Textures/SimpleForestAnimalsTexture.png


+ 0 - 0
Assets/Course Library/_Source_Files/Textures/SimpleForestAnimalsTexture.png.meta → Assets/Imported/_Source_Files/Textures/SimpleForestAnimalsTexture.png.meta


ファイルの差分が大きいため隠しています
+ 35 - 0
Assets/Scenes/SampleScene.unity


+ 8 - 0
Assets/Scripts/Procedural Generation/Data.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ddcde1f8d815e304888122e4944012cc
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 29 - 0
Assets/Scripts/Procedural Generation/Data/NoiseData.cs

@@ -0,0 +1,29 @@
+using UnityEngine;
+
+[CreateAssetMenu()]
+public class NoiseData : UpdatableData
+{
+    public Noise.NormalizeMode normalizeMode;
+    public float noiseScale;
+    public int octaves;
+
+    [Range(0, 1)]
+    public float persistance;
+    public float lacunarity;
+    public int seed;
+    public Vector2 offset;
+
+    protected override void OnValidate()
+    {
+        if (lacunarity < 1)
+        {
+            lacunarity = 1;
+        }
+        if (octaves < 0)
+        {
+            octaves = 0;
+        }
+
+        base.OnValidate();
+    }
+}

+ 2 - 0
Assets/Scripts/Procedural Generation/Data/NoiseData.cs.meta

@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: fa45ab131b90872439674e273d7b39c3

+ 11 - 0
Assets/Scripts/Procedural Generation/Data/TerrainData.cs

@@ -0,0 +1,11 @@
+using UnityEngine;
+
+[CreateAssetMenu]
+public class TerrainData : UpdatableData
+{
+    public float uniformScale = 2.5f;
+    public bool useFlatShading;
+    public bool useFalloff;
+    public float meshHeightMultiplier;
+    public AnimationCurve meshHeightCurve;
+}

+ 2 - 0
Assets/Scripts/Procedural Generation/Data/TerrainData.cs.meta

@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 014ab361614e69445a649581b70f9bfd

+ 10 - 0
Assets/Scripts/Procedural Generation/Data/TextureData.cs

@@ -0,0 +1,10 @@
+using UnityEngine;
+
+[CreateAssetMenu()]
+public class TextureData : UpdatableData
+{
+    public void ApplyToMaterial(Material material)
+    {
+        //
+    }
+}

+ 2 - 0
Assets/Scripts/Procedural Generation/Data/TextureData.cs.meta

@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 226f3a733c2e14541b129ec3291ae957

+ 23 - 0
Assets/Scripts/Procedural Generation/Data/UpdatableData.cs

@@ -0,0 +1,23 @@
+using UnityEngine;
+
+public class UpdatableData : ScriptableObject
+{
+    public event System.Action OnValuesUpdated;
+    public bool autoUpdate;
+
+    protected virtual void OnValidate()
+    {
+        if (autoUpdate)
+        {
+            NotifyOfUpdatedValues();
+        }
+    }
+
+    public void NotifyOfUpdatedValues()
+    {
+        if(OnValuesUpdated != null)
+        {
+            OnValuesUpdated();
+        }
+    }
+}

+ 2 - 0
Assets/Scripts/Procedural Generation/Data/UpdatableData.cs.meta

@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 36e0e780eb30e184288d47f58bee7745

+ 4 - 9
Assets/Scripts/Procedural Generation/EndlessTerrain.cs

@@ -5,8 +5,6 @@ using System.Collections.Generic;
 public class EndlessTerrain : MonoBehaviour
 {
 
-    const float scale = 2f;
-
     const float viewerMoveThresholdForChunkUpdate = 25f;
     const float sqrViewerMoveThresholdForChunkUpdate = viewerMoveThresholdForChunkUpdate * viewerMoveThresholdForChunkUpdate;
 
@@ -30,7 +28,7 @@ public class EndlessTerrain : MonoBehaviour
         mapGenerator = FindFirstObjectByType<MapGenerator>();
 
         maxViewDst = detailLevels[detailLevels.Length - 1].visibleDstThreshold;
-        chunkSize = MapGenerator.mapChunkSize - 1;
+        chunkSize = mapGenerator.mapChunkSize - 1;
         chunksVisibleInViewDst = Mathf.RoundToInt(maxViewDst / chunkSize);
 
         UpdateVisibleChunks();
@@ -38,7 +36,7 @@ public class EndlessTerrain : MonoBehaviour
 
     void Update()
     {
-        viewerPosition = new Vector2(viewer.position.x, viewer.position.z) / scale;
+        viewerPosition = new Vector2(viewer.position.x, viewer.position.z) / mapGenerator.terrainData.uniformScale;
 
         if ((viewerPositionOld - viewerPosition).sqrMagnitude > sqrViewerMoveThresholdForChunkUpdate)
         {
@@ -111,9 +109,9 @@ public class EndlessTerrain : MonoBehaviour
             meshCollider = meshObject.AddComponent<MeshCollider>();
             meshRenderer.material = material;
 
-            meshObject.transform.position = positionV3 * scale;
+            meshObject.transform.position = positionV3 * mapGenerator.terrainData.uniformScale;
             meshObject.transform.parent = parent;
-            meshObject.transform.localScale = Vector3.one * scale;
+            meshObject.transform.localScale = Vector3.one * mapGenerator.terrainData.uniformScale;
             SetVisible(false);
 
             lodMeshes = new LODMesh[detailLevels.Length];
@@ -134,9 +132,6 @@ public class EndlessTerrain : MonoBehaviour
             this.mapData = mapData;
             mapDataReceived = true;
 
-            Texture2D texture = TextureGenerator.TextureFromColourMap(mapData.colourMap, MapGenerator.mapChunkSize, MapGenerator.mapChunkSize);
-            meshRenderer.material.mainTexture = texture;
-
             UpdateTerrainChunk();
         }
 

+ 3 - 2
Assets/Scripts/Procedural Generation/MapDisplay.cs

@@ -12,9 +12,10 @@ public class MapDisplay : MonoBehaviour
         textureRenderer.transform.localScale = new Vector3(texture.width, 1, texture.height);
     }
 
-    public void DrawMesh(MeshData meshData, Texture2D texture)
+    public void DrawMesh(MeshData meshData)
     {
         meshFilter.sharedMesh = meshData.CreateMesh();
-        meshRenderer.sharedMaterial.mainTexture = texture;
+
+        meshFilter.transform.localScale = Vector3.one * FindFirstObjectByType<MapGenerator>().terrainData.uniformScale;
     }
 }

+ 44 - 68
Assets/Scripts/Procedural Generation/MapGenerator.cs

@@ -7,54 +7,43 @@ using System.Collections.Generic;
 public class MapGenerator : MonoBehaviour
 {
 
-    public enum DrawMode { NoiseMap, ColourMap, Mesh, FalloffMap };
+    public enum DrawMode { NoiseMap, Mesh, FalloffMap };
     public DrawMode drawMode;
 
-    public Noise.NormalizeMode normalizeMode;
+    public TerrainData terrainData;
+    public NoiseData noiseData;
+    public TextureData textureData;
 
-    public bool useFlatShading;
+    public Material terrainMaterial;
 
     [Range(0, 6)]
     public int editorPreviewLOD;
-    public float noiseScale;
-
-    public int octaves;
-    [Range(0, 1)]
-    public float persistance;
-    public float lacunarity;
-
-    public int seed;
-    public Vector2 offset;
-
-    public bool useFalloff;
-
-    public float meshHeightMultiplier;
-    public AnimationCurve meshHeightCurve;
 
     public bool autoUpdate;
 
-    public TerrainType[] regions;
-    static MapGenerator instance;
-
     float[,] falloffMap;
 
     Queue<MapThreadInfo<MapData>> mapDataThreadInfoQueue = new Queue<MapThreadInfo<MapData>>();
     Queue<MapThreadInfo<MeshData>> meshDataThreadInfoQueue = new Queue<MapThreadInfo<MeshData>>();
 
-    void Awake()
+    void OnValuesUpdated()
+    {
+        if (!Application.isPlaying)
+        {
+            DrawMapInEditor();
+        }
+    }
+
+    void OnTextureValuesUpdated()
     {
-        falloffMap = FallOffGenerator.GenerateFallOffMap(mapChunkSize);
+        textureData.ApplyToMaterial(terrainMaterial);
     }
 
-    public static int mapChunkSize
+    public int mapChunkSize
     {
         get
         {
-            if(instance == null)
-            {
-                instance = FindFirstObjectByType<MapGenerator>();
-            }
-            if (instance.useFlatShading)
+            if (terrainData.useFlatShading)
             {
                 return 95;
             }
@@ -74,13 +63,9 @@ public class MapGenerator : MonoBehaviour
         {
             display.DrawTexture(TextureGenerator.TextureFromHeightMap(mapData.heightMap));
         }
-        else if (drawMode == DrawMode.ColourMap)
-        {
-            display.DrawTexture(TextureGenerator.TextureFromColourMap(mapData.colourMap, mapChunkSize, mapChunkSize));
-        }
         else if (drawMode == DrawMode.Mesh)
         {
-            display.DrawMesh(MeshGenerator.GenerateTerrainMesh(mapData.heightMap, meshHeightMultiplier, meshHeightCurve, editorPreviewLOD, useFlatShading), TextureGenerator.TextureFromColourMap(mapData.colourMap, mapChunkSize, mapChunkSize));
+            display.DrawMesh(MeshGenerator.GenerateTerrainMesh(mapData.heightMap, terrainData.meshHeightMultiplier, terrainData.meshHeightCurve, editorPreviewLOD, terrainData.useFlatShading));
         }
         else if (drawMode == DrawMode.FalloffMap)
         {
@@ -117,7 +102,7 @@ public class MapGenerator : MonoBehaviour
 
     void MeshDataThread(MapData mapData, int lod, Action<MeshData> callback)
     {
-        MeshData meshData = MeshGenerator.GenerateTerrainMesh(mapData.heightMap, meshHeightMultiplier, meshHeightCurve, lod, useFlatShading);
+        MeshData meshData = MeshGenerator.GenerateTerrainMesh(mapData.heightMap, terrainData.meshHeightMultiplier, terrainData.meshHeightCurve, lod, terrainData.useFlatShading);
         lock (meshDataThreadInfoQueue)
         {
             meshDataThreadInfoQueue.Enqueue(new MapThreadInfo<MeshData>(callback, meshData));
@@ -147,48 +132,48 @@ public class MapGenerator : MonoBehaviour
 
     MapData GenerateMapData(Vector2 centre)
     {
-        float[,] noiseMap = Noise.GenerateNoiseMap(mapChunkSize + 2, mapChunkSize + 2, seed, noiseScale, octaves, persistance, lacunarity, centre + offset, normalizeMode);
+        float[,] noiseMap = Noise.GenerateNoiseMap(mapChunkSize + 2, mapChunkSize + 2, noiseData.seed, noiseData.noiseScale, noiseData.octaves, noiseData.persistance, noiseData.lacunarity, centre + noiseData.offset, noiseData.normalizeMode);
 
-        Color[] colourMap = new Color[mapChunkSize * mapChunkSize];
-        for (int y = 0; y < mapChunkSize; y++)
+        if (terrainData.useFalloff)
         {
-            for (int x = 0; x < mapChunkSize; x++)
+            if(falloffMap == null)
             {
-                if (useFalloff)
-                {
-                    noiseMap[x, y] = Mathf.Clamp01(noiseMap[x, y] - falloffMap[x, y]);
-                }
-                float currentHeight = noiseMap[x, y];
-                for (int i = 0; i < regions.Length; i++)
+                falloffMap = FallOffGenerator.GenerateFallOffMap(mapChunkSize + 2);
+            }
+
+            for (int y = 0; y < mapChunkSize + 2; y++)
+            {
+                for (int x = 0; x < mapChunkSize + 2; x++)
                 {
-                    if (currentHeight >= regions[i].height)
-                    {
-                        colourMap[y * mapChunkSize + x] = regions[i].colour;
-                    }
-                    else
+                    if (terrainData.useFalloff)
                     {
-                        break;
+                        noiseMap[x, y] = Mathf.Clamp01(noiseMap[x, y] - falloffMap[x, y]);
                     }
                 }
             }
         }
 
 
-        return new MapData(noiseMap, colourMap);
+        return new MapData(noiseMap);
     }
 
     void OnValidate()
     {
-        if (lacunarity < 1)
+        if(terrainData != null)
         {
-            lacunarity = 1;
+            terrainData.OnValuesUpdated -= OnValuesUpdated;
+            terrainData.OnValuesUpdated += OnValuesUpdated;
         }
-        if (octaves < 0)
+        if (noiseData != null)
         {
-            octaves = 0;
+            noiseData.OnValuesUpdated -= OnValuesUpdated;
+            noiseData.OnValuesUpdated += OnValuesUpdated;
+        }
+        if(textureData != null)
+        {
+            textureData.OnValuesUpdated -= OnValuesUpdated;
+            textureData.OnValuesUpdated += OnValuesUpdated;
         }
-
-        falloffMap = FallOffGenerator.GenerateFallOffMap(mapChunkSize);
     }
 
     struct MapThreadInfo<T>
@@ -206,22 +191,13 @@ public class MapGenerator : MonoBehaviour
 
 }
 
-[System.Serializable]
-public struct TerrainType
-{
-    public string name;
-    public float height;
-    public Color colour;
-}
-
 public struct MapData
 {
     public readonly float[,] heightMap;
-    public readonly Color[] colourMap;
 
-    public MapData(float[,] heightMap, Color[] colourMap)
+
+    public MapData(float[,] heightMap)
     {
         this.heightMap = heightMap;
-        this.colourMap = colourMap;
     }
 }

+ 8 - 0
Assets/TerrainAssets.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 47d15a8d397aab5488ccd28fd1549ee4
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 22 - 0
Assets/TerrainAssets/DefaultNoise.asset

@@ -0,0 +1,22 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fa45ab131b90872439674e273d7b39c3, type: 3}
+  m_Name: DefaultNoise
+  m_EditorClassIdentifier: 
+  autoUpdate: 1
+  normalizeMode: 1
+  noiseScale: 50
+  octaves: 8
+  persistance: 0.5
+  lacunarity: 2
+  seed: 0
+  offset: {x: 0, y: 0}

+ 8 - 0
Assets/TerrainAssets/DefaultNoise.asset.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 584d7da48438f384fb26e1e4e95d4261
+NativeFormatImporter:
+  externalObjects: {}
+  mainObjectFileID: 11400000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 61 - 0
Assets/TerrainAssets/DefaultTerrain.asset

@@ -0,0 +1,61 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &11400000
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 0}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 014ab361614e69445a649581b70f9bfd, type: 3}
+  m_Name: DefaultTerrain
+  m_EditorClassIdentifier: 
+  autoUpdate: 1
+  uniformScale: 2.5
+  useFlatShading: 0
+  useFalloff: 0
+  meshHeightMultiplier: 30
+  meshHeightCurve:
+    serializedVersion: 2
+    m_Curve:
+    - serializedVersion: 3
+      time: 0
+      value: 0
+      inSlope: 0
+      outSlope: 0
+      tangentMode: 0
+      weightedMode: 0
+      inWeight: 0
+      outWeight: 0
+    - serializedVersion: 3
+      time: 0.4321544
+      value: 0.10455926
+      inSlope: 0.3379594
+      outSlope: 0.3379594
+      tangentMode: 0
+      weightedMode: 0
+      inWeight: 0.33333334
+      outWeight: 0.23133722
+    - serializedVersion: 3
+      time: 0.78393525
+      value: 0.4294193
+      inSlope: 1.9452653
+      outSlope: 1.9452653
+      tangentMode: 0
+      weightedMode: 0
+      inWeight: 0.33333334
+      outWeight: 0.18317983
+    - serializedVersion: 3
+      time: 1.0013661
+      value: 1.0309523
+      inSlope: 2
+      outSlope: 2
+      tangentMode: 0
+      weightedMode: 0
+      inWeight: 0
+      outWeight: 0
+    m_PreInfinity: 2
+    m_PostInfinity: 2
+    m_RotationOrder: 4

+ 8 - 0
Assets/TerrainAssets/DefaultTerrain.asset.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d58bbc8b257b2614696e0cd72cd0d465
+NativeFormatImporter:
+  externalObjects: {}
+  mainObjectFileID: 11400000
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません