*
This commit is contained in:
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: dafb6bfb42294ab44bbc4d05d0e02cd6
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1478632487
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEditor;
|
||||||
|
using System.Collections;
|
||||||
|
|
||||||
|
[CustomEditor(typeof(TreeGenerator))]
|
||||||
|
public class TreeGeneratorEditor : Editor {
|
||||||
|
public override void OnInspectorGUI()
|
||||||
|
{
|
||||||
|
base.OnInspectorGUI();
|
||||||
|
if (GUILayout.Button("Generate"))
|
||||||
|
{
|
||||||
|
(target as TreeGenerator).Generate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: bcb1fb04195ea784b93737ec16a96431
|
||||||
|
timeCreated: 1478632499
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ad4245db34302df4c8fc848466196a43
|
||||||
|
timeCreated: 1478632299
|
||||||
|
licenseType: Free
|
||||||
|
NativeFormatImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 710ea136b31bb8d4a8c0a7760351ae45
|
||||||
|
folderAsset: yes
|
||||||
|
timeCreated: 1481457885
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,100 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
|
||||||
|
public class BoxGenerator : MeshProcessor
|
||||||
|
{
|
||||||
|
public Vector3 Size = Vector3.one;
|
||||||
|
public int SliceX;
|
||||||
|
public int SliceY;
|
||||||
|
public int SliceZ;
|
||||||
|
|
||||||
|
public override void Execute(ProceduralMeshData m)
|
||||||
|
{
|
||||||
|
ProceduralMeshData[] sides = new ProceduralMeshData[6];
|
||||||
|
|
||||||
|
PlaneGenerator p = new PlaneGenerator();
|
||||||
|
p.Width = 1;
|
||||||
|
p.Height = 1;
|
||||||
|
|
||||||
|
//x+
|
||||||
|
sides[0] = new ProceduralMeshData();
|
||||||
|
p.WidthSlices = SliceZ;
|
||||||
|
p.HeightSlices = SliceY;
|
||||||
|
p.Execute(sides[0]);
|
||||||
|
|
||||||
|
//x-
|
||||||
|
sides[1] = new ProceduralMeshData();
|
||||||
|
p.Execute(sides[1]);
|
||||||
|
|
||||||
|
//y+
|
||||||
|
sides[2] = new ProceduralMeshData();
|
||||||
|
p.WidthSlices = SliceX;
|
||||||
|
p.HeightSlices = SliceZ;
|
||||||
|
p.Execute(sides[2]);
|
||||||
|
|
||||||
|
//y-
|
||||||
|
sides[3] = new ProceduralMeshData();
|
||||||
|
p.Execute(sides[3]);
|
||||||
|
|
||||||
|
//z+
|
||||||
|
sides[4] = new ProceduralMeshData();
|
||||||
|
p.WidthSlices = SliceX;
|
||||||
|
p.HeightSlices = SliceY;
|
||||||
|
p.Execute(sides[4]);
|
||||||
|
|
||||||
|
//z-
|
||||||
|
sides[5] = new ProceduralMeshData();
|
||||||
|
p.Execute(sides[5]);
|
||||||
|
|
||||||
|
//x+
|
||||||
|
TransformVertexNode transform = new TransformVertexNode();
|
||||||
|
transform.Offset = Vector3.right*0.5f;
|
||||||
|
transform.Rotation = Quaternion.AngleAxis(-90, Vector3.up) * Quaternion.AngleAxis(-90, Vector3.right);
|
||||||
|
transform.Execute(sides[0]);
|
||||||
|
|
||||||
|
//x-
|
||||||
|
transform.Offset = Vector3.right * -0.5f;
|
||||||
|
transform.Rotation = Quaternion.AngleAxis(90, Vector3.up) * Quaternion.AngleAxis(-90, Vector3.right);
|
||||||
|
transform.Execute(sides[1]);
|
||||||
|
|
||||||
|
|
||||||
|
//y+
|
||||||
|
transform.Offset = Vector3.up * 0.5f;
|
||||||
|
transform.Rotation = Quaternion.identity;
|
||||||
|
transform.Execute(sides[2]);
|
||||||
|
|
||||||
|
//y-
|
||||||
|
transform.Offset = Vector3.up * -0.5f;
|
||||||
|
transform.Rotation = Quaternion.AngleAxis(180, Vector3.forward);
|
||||||
|
transform.Execute(sides[3]);
|
||||||
|
|
||||||
|
//z+
|
||||||
|
transform.Offset = Vector3.forward * 0.5f;
|
||||||
|
transform.Rotation = Quaternion.AngleAxis(180, Vector3.up) * Quaternion.AngleAxis(-90, Vector3.right);
|
||||||
|
transform.Execute(sides[4]);
|
||||||
|
|
||||||
|
//z-
|
||||||
|
transform.Offset = Vector3.forward * -0.5f;
|
||||||
|
transform.Rotation = Quaternion.AngleAxis(-90, Vector3.right);
|
||||||
|
transform.Execute(sides[5]);
|
||||||
|
|
||||||
|
CombineMeshNode combiner = new CombineMeshNode();
|
||||||
|
combiner.Source.Add(sides[0]);
|
||||||
|
combiner.Source.Add(sides[1]);
|
||||||
|
combiner.Source.Add(sides[2]);
|
||||||
|
combiner.Source.Add(sides[3]);
|
||||||
|
combiner.Source.Add(sides[4]);
|
||||||
|
combiner.Source.Add(sides[5]);
|
||||||
|
combiner.Execute(m);
|
||||||
|
|
||||||
|
CombineSubmeshesNode submeshCombiner = new CombineSubmeshesNode();
|
||||||
|
submeshCombiner.Execute(m);
|
||||||
|
|
||||||
|
transform.Offset = Vector3.zero;
|
||||||
|
transform.Rotation = Quaternion.identity;
|
||||||
|
transform.Scale = Size;
|
||||||
|
transform.Execute(m);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 20da85e4530510045b3327cf8857fde1
|
||||||
|
timeCreated: 1481452209
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class CombineMeshNode : MeshProcessor {
|
||||||
|
public List<ProceduralMeshData> Source = new List<ProceduralMeshData>();
|
||||||
|
|
||||||
|
public override void Execute(ProceduralMeshData m)
|
||||||
|
{
|
||||||
|
List<Vector3> vertices = new List<Vector3>();
|
||||||
|
List<int[]> indices = new List<int[]>();
|
||||||
|
List<Vector3> normals = new List<Vector3>();
|
||||||
|
List<Vector4> tangents = new List<Vector4>();
|
||||||
|
List<List<Vector4>> uvs = new List<List<Vector4>>();
|
||||||
|
|
||||||
|
//combine
|
||||||
|
foreach (var meshData in Source)
|
||||||
|
{
|
||||||
|
if (meshData != null)
|
||||||
|
{
|
||||||
|
//append all indices
|
||||||
|
foreach (var submeshIndices in meshData.Indices)
|
||||||
|
{
|
||||||
|
var newIndices = new int[submeshIndices.Length];
|
||||||
|
//offset indices
|
||||||
|
for (int i = 0; i < newIndices.Length; ++i)
|
||||||
|
{
|
||||||
|
newIndices[i] = submeshIndices[i] + vertices.Count;
|
||||||
|
}
|
||||||
|
indices.Add(newIndices);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
vertices.AddRange(meshData.Vertices);
|
||||||
|
|
||||||
|
normals.AddRange(meshData.Normals);
|
||||||
|
|
||||||
|
if (meshData.Tangents != null)
|
||||||
|
{
|
||||||
|
tangents.AddRange(meshData.Tangents);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
while (uvs.Count < meshData.Uvs.Count){
|
||||||
|
uvs.Add(new List<Vector4>());
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < meshData.Uvs.Count; ++i)
|
||||||
|
{
|
||||||
|
uvs[i].AddRange(meshData.Uvs[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
m.Vertices = vertices.ToArray();
|
||||||
|
m.Indices = indices;
|
||||||
|
m.Normals = normals.ToArray();
|
||||||
|
m.Tangents = tangents.Count == 0 ? null : tangents.ToArray();
|
||||||
|
m.Uvs = uvs;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c69a57e361120bf4db873f79fdc136de
|
||||||
|
timeCreated: 1481458480
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class CombineSubmeshesNode : MeshProcessor {
|
||||||
|
|
||||||
|
public override void Execute(ProceduralMeshData m)
|
||||||
|
{
|
||||||
|
List<int> indices = new List<int>();
|
||||||
|
|
||||||
|
foreach (var i in m.Indices)
|
||||||
|
{
|
||||||
|
indices.AddRange(i);
|
||||||
|
}
|
||||||
|
m.Indices = new List<int[]>();
|
||||||
|
m.Indices.Add(indices.ToArray());
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: ff34137884a6c4f47a6c6bb289cfc1d9
|
||||||
|
timeCreated: 1481577533
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public abstract class MeshProcessor
|
||||||
|
{
|
||||||
|
public abstract void Execute(ProceduralMeshData m);
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8e6532d55438865429adf68ffdc9b141
|
||||||
|
timeCreated: 1481457685
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Generate XZ plane
|
||||||
|
/// </summary>
|
||||||
|
public class PlaneGenerator : MeshProcessor
|
||||||
|
{
|
||||||
|
public float Width = 1;
|
||||||
|
public float Height = 1;
|
||||||
|
|
||||||
|
public int WidthSlices = 0;
|
||||||
|
public int HeightSlices = 0;
|
||||||
|
|
||||||
|
|
||||||
|
public override void Execute(ProceduralMeshData m)
|
||||||
|
{
|
||||||
|
int widthVertexCount = 2 + WidthSlices;
|
||||||
|
int heightVertexCount = 2 + HeightSlices;
|
||||||
|
int vertexCount = widthVertexCount*heightVertexCount;
|
||||||
|
|
||||||
|
//generate vertices && normals
|
||||||
|
Vector3 offset = new Vector3(-Width / 2, 0, Height / 2);
|
||||||
|
m.Vertices = new Vector3[vertexCount];
|
||||||
|
m.Normals = new Vector3[vertexCount];
|
||||||
|
|
||||||
|
for (int x = 0; x < widthVertexCount; ++x)
|
||||||
|
{
|
||||||
|
for (int z = 0; z < heightVertexCount; ++z)
|
||||||
|
{
|
||||||
|
int id = z*widthVertexCount + x;
|
||||||
|
m.Vertices[id]= new Vector3((Width / (widthVertexCount - 1)) * x, 0, (-Height / (heightVertexCount - 1)) * z) + offset;
|
||||||
|
m.Normals[id] = Vector3.up;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//generate indices
|
||||||
|
int[] indices = new int[(widthVertexCount - 1) * (heightVertexCount - 1) * 6];
|
||||||
|
int indexOffset = 0;
|
||||||
|
for (int x = 0; x < widthVertexCount - 1; ++x){
|
||||||
|
for (int z = 0; z < heightVertexCount - 1; ++z) {
|
||||||
|
indices[indexOffset + 0] = z * widthVertexCount + x;
|
||||||
|
indices[indexOffset + 1] = z * widthVertexCount + x + 1;
|
||||||
|
indices[indexOffset + 2] = (z + 1) * widthVertexCount + x;
|
||||||
|
indices[indexOffset + 3] = indices[indexOffset + 2];
|
||||||
|
indices[indexOffset + 4] = indices[indexOffset + 1];
|
||||||
|
indices[indexOffset + 5] = (z + 1) * widthVertexCount + x + 1;
|
||||||
|
indexOffset += 6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
m.Indices.Add(indices);
|
||||||
|
|
||||||
|
//generate uvs
|
||||||
|
List<Vector4> uvs = new List<Vector4>(vertexCount);
|
||||||
|
for (int z = 0; z < heightVertexCount; ++z)
|
||||||
|
{
|
||||||
|
for (int x = 0; x < widthVertexCount; ++x)
|
||||||
|
{
|
||||||
|
|
||||||
|
uvs.Add(new Vector4((float)x / (widthVertexCount - 1), (float)z / (heightVertexCount - 1), 0, 0));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
m.Uvs.Add(uvs);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cc5da59754a9bd84c81c707581bd1a6b
|
||||||
|
timeCreated: 1481452239
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,32 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class ProceduralMeshData {
|
||||||
|
public Vector3[] Vertices;
|
||||||
|
public Vector3[] Normals;
|
||||||
|
public Vector4[] Tangents;
|
||||||
|
public List<int[]> Indices = new List<int[]>();
|
||||||
|
public List<List<Vector4>> Uvs = new List<List<Vector4>>();
|
||||||
|
|
||||||
|
public void ApplyToMesh(Mesh m)
|
||||||
|
{
|
||||||
|
m.Clear();
|
||||||
|
m.subMeshCount = Indices.Count;
|
||||||
|
|
||||||
|
m.vertices = Vertices;
|
||||||
|
|
||||||
|
for (int i = 0; i < Indices.Count; ++i)
|
||||||
|
{
|
||||||
|
m.SetIndices(Indices[i], MeshTopology.Triangles, i);
|
||||||
|
}
|
||||||
|
|
||||||
|
m.normals = Normals;
|
||||||
|
m.tangents = Tangents;
|
||||||
|
|
||||||
|
for (int i = 0; i < Uvs.Count; ++i){
|
||||||
|
m.SetUVs(i, Uvs[i]);
|
||||||
|
}
|
||||||
|
m.UploadMeshData(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d40bf391bd891254fa896c0c953cdc60
|
||||||
|
timeCreated: 1481453030
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
public class TransformVertexNode : MeshProcessor
|
||||||
|
{
|
||||||
|
public Vector3 Offset = Vector3.zero;
|
||||||
|
public Quaternion Rotation = Quaternion.identity;
|
||||||
|
public Vector3 Scale = Vector3.one;
|
||||||
|
|
||||||
|
public override void Execute(ProceduralMeshData m){
|
||||||
|
var transform = Matrix4x4.TRS(Offset, Rotation, Scale);
|
||||||
|
int count = m.Vertices.Length;
|
||||||
|
for (int i = 0; i < count; ++i){
|
||||||
|
m.Vertices[i] = transform.MultiplyPoint3x4(m.Vertices[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
var normalTransform = Matrix4x4.TRS(Vector3.zero, Rotation, Scale).inverse.transpose;
|
||||||
|
|
||||||
|
for (int i = 0; i < count; ++i) {
|
||||||
|
m.Normals[i] = normalTransform.MultiplyPoint3x4(m.Normals[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (m.Tangents != null)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < count; ++i)
|
||||||
|
{
|
||||||
|
var t = normalTransform.MultiplyPoint3x4((Vector3)m.Tangents[i]);
|
||||||
|
m.Tangents[i] = new Vector4(t.x, t.y, t.z, m.Tangents[i].w);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8d5f93e1c179aab4b8ed81b816616c32
|
||||||
|
timeCreated: 1481457925
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cd4baea18a7d61a4ea0fb743d6d4d54d
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 1b1c25eaa058d364fb039e2a27f08979
|
||||||
|
timeCreated: 1478632719
|
||||||
|
licenseType: Free
|
||||||
|
DefaultImporter:
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 83c55413cc7e7ed4e9e7c6773c8730b7
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 112000000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,130 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3c8a436ff4d920649907586e58f9310e
|
||||||
|
TextureImporter:
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
serializedVersion: 13
|
||||||
|
mipmaps:
|
||||||
|
mipMapMode: 0
|
||||||
|
enableMipMap: 1
|
||||||
|
sRGBTexture: 1
|
||||||
|
linearTexture: 0
|
||||||
|
fadeOut: 0
|
||||||
|
borderMipMap: 0
|
||||||
|
mipMapsPreserveCoverage: 0
|
||||||
|
alphaTestReferenceValue: 0.5
|
||||||
|
mipMapFadeDistanceStart: 1
|
||||||
|
mipMapFadeDistanceEnd: 3
|
||||||
|
bumpmap:
|
||||||
|
convertToNormalMap: 0
|
||||||
|
externalNormalMap: 0
|
||||||
|
heightScale: 0.25
|
||||||
|
normalMapFilter: 0
|
||||||
|
flipGreenChannel: 0
|
||||||
|
isReadable: 0
|
||||||
|
streamingMipmaps: 0
|
||||||
|
streamingMipmapsPriority: 0
|
||||||
|
vTOnly: 0
|
||||||
|
ignoreMipmapLimit: 0
|
||||||
|
grayScaleToAlpha: 0
|
||||||
|
generateCubemap: 6
|
||||||
|
cubemapConvolution: 1
|
||||||
|
seamlessCubemap: 1
|
||||||
|
textureFormat: 1
|
||||||
|
maxTextureSize: 2048
|
||||||
|
textureSettings:
|
||||||
|
serializedVersion: 2
|
||||||
|
filterMode: 2
|
||||||
|
aniso: 0
|
||||||
|
mipBias: 0
|
||||||
|
wrapU: 1
|
||||||
|
wrapV: 1
|
||||||
|
wrapW: 1
|
||||||
|
nPOTScale: 1
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 0
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 0
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 0
|
||||||
|
textureShape: 2
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 100
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Android
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID:
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,90 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
public class TreeGenerator : MonoBehaviour
|
||||||
|
{
|
||||||
|
public int SliceX;
|
||||||
|
public int SliceY;
|
||||||
|
public int SliceZ;
|
||||||
|
|
||||||
|
public int RootBranches = 3;
|
||||||
|
|
||||||
|
public Vector3 TrunkSize = Vector3.one;
|
||||||
|
private float branchStep;
|
||||||
|
public float BranchAngle = 60;
|
||||||
|
|
||||||
|
public ProceduralMeshData GenerateTrunk(Vector3 size){
|
||||||
|
ProceduralMeshData m = new ProceduralMeshData();
|
||||||
|
BoxGenerator box = new BoxGenerator();
|
||||||
|
box.SliceX = SliceX;
|
||||||
|
box.SliceY = SliceY;
|
||||||
|
box.SliceZ = SliceZ;
|
||||||
|
box.Size = size;
|
||||||
|
box.Execute(m);
|
||||||
|
|
||||||
|
TransformVertexNode offsetPivot = new TransformVertexNode();
|
||||||
|
offsetPivot.Offset = Vector3.forward * size.z * 0.5f;
|
||||||
|
offsetPivot.Execute(m);
|
||||||
|
return m;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public void Generate() {
|
||||||
|
var mf = GetComponent<MeshFilter>();
|
||||||
|
if (mf == null) {
|
||||||
|
mf = gameObject.AddComponent<MeshFilter>();
|
||||||
|
}
|
||||||
|
|
||||||
|
var mesh = mf.sharedMesh;
|
||||||
|
if (mesh == null)
|
||||||
|
{
|
||||||
|
mesh = new Mesh();
|
||||||
|
mf.sharedMesh = mesh;
|
||||||
|
}
|
||||||
|
branchStep = TrunkSize.z/(RootBranches + 1);
|
||||||
|
|
||||||
|
var mTrunk = GenerateTrunk(TrunkSize);
|
||||||
|
|
||||||
|
List<ProceduralMeshData> branches = new List<ProceduralMeshData>();
|
||||||
|
for (int i = 0; i < RootBranches; ++i)
|
||||||
|
{
|
||||||
|
float zOffset = branchStep*(i + 1);
|
||||||
|
|
||||||
|
|
||||||
|
var branchSize = TrunkSize;
|
||||||
|
branchSize.x *= 0.7f;
|
||||||
|
branchSize.y *= 0.7f;
|
||||||
|
branchSize.z *= Mathf.Pow(0.65f, i + 1) * 0.5f;
|
||||||
|
|
||||||
|
var l = GenerateTrunk(branchSize);
|
||||||
|
var r = GenerateTrunk(branchSize);
|
||||||
|
|
||||||
|
TransformVertexNode branchTransform = new TransformVertexNode();
|
||||||
|
branchTransform.Rotation = Quaternion.AngleAxis(BranchAngle, Vector3.up);
|
||||||
|
branchTransform.Offset = new Vector3(0,0, zOffset);
|
||||||
|
branchTransform.Execute(r);
|
||||||
|
|
||||||
|
branchTransform.Rotation = Quaternion.AngleAxis(-BranchAngle, Vector3.up);
|
||||||
|
branchTransform.Execute(l);
|
||||||
|
|
||||||
|
branches.Add(l);
|
||||||
|
branches.Add(r);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CombineMeshNode combiner = new CombineMeshNode();
|
||||||
|
combiner.Source.Add(mTrunk);
|
||||||
|
combiner.Source.AddRange(branches);
|
||||||
|
|
||||||
|
ProceduralMeshData result = new ProceduralMeshData();
|
||||||
|
combiner.Execute(result);
|
||||||
|
|
||||||
|
|
||||||
|
CombineSubmeshesNode submeshCombiner = new CombineSubmeshesNode();
|
||||||
|
submeshCombiner.Execute(result);
|
||||||
|
|
||||||
|
result.ApplyToMesh(mesh);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 16e47fd9404a13b4aa027a7f4f43330b
|
||||||
|
timeCreated: 1478632373
|
||||||
|
licenseType: Free
|
||||||
|
MonoImporter:
|
||||||
|
serializedVersion: 2
|
||||||
|
defaultReferences: []
|
||||||
|
executionOrder: 0
|
||||||
|
icon: {instanceID: 0}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
Binary file not shown.
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b2105f5c9d12623469923145f38cb7c0
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 4890085278179872738
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
{
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.multiplayer.center": "1.0.0",
|
||||||
|
"com.unity.modules.accessibility": "1.0.0",
|
||||||
|
"com.unity.modules.ai": "1.0.0",
|
||||||
|
"com.unity.modules.androidjni": "1.0.0",
|
||||||
|
"com.unity.modules.animation": "1.0.0",
|
||||||
|
"com.unity.modules.assetbundle": "1.0.0",
|
||||||
|
"com.unity.modules.audio": "1.0.0",
|
||||||
|
"com.unity.modules.cloth": "1.0.0",
|
||||||
|
"com.unity.modules.director": "1.0.0",
|
||||||
|
"com.unity.modules.imageconversion": "1.0.0",
|
||||||
|
"com.unity.modules.imgui": "1.0.0",
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0",
|
||||||
|
"com.unity.modules.particlesystem": "1.0.0",
|
||||||
|
"com.unity.modules.physics": "1.0.0",
|
||||||
|
"com.unity.modules.physics2d": "1.0.0",
|
||||||
|
"com.unity.modules.screencapture": "1.0.0",
|
||||||
|
"com.unity.modules.terrain": "1.0.0",
|
||||||
|
"com.unity.modules.terrainphysics": "1.0.0",
|
||||||
|
"com.unity.modules.tilemap": "1.0.0",
|
||||||
|
"com.unity.modules.ui": "1.0.0",
|
||||||
|
"com.unity.modules.uielements": "1.0.0",
|
||||||
|
"com.unity.modules.umbra": "1.0.0",
|
||||||
|
"com.unity.modules.unityanalytics": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequestassetbundle": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequestaudio": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequesttexture": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequestwww": "1.0.0",
|
||||||
|
"com.unity.modules.vehicles": "1.0.0",
|
||||||
|
"com.unity.modules.video": "1.0.0",
|
||||||
|
"com.unity.modules.vr": "1.0.0",
|
||||||
|
"com.unity.modules.wind": "1.0.0",
|
||||||
|
"com.unity.modules.xr": "1.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,268 @@
|
|||||||
|
{
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.multiplayer.center": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.uielements": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.accessibility": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.ai": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.androidjni": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.animation": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.assetbundle": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.audio": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.cloth": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.director": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.audio": "1.0.0",
|
||||||
|
"com.unity.modules.animation": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.hierarchycore": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 1,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.imageconversion": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.imgui": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.jsonserialize": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.particlesystem": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.physics": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.physics2d": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.screencapture": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.imageconversion": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.subsystems": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 1,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.terrain": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.terrainphysics": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics": "1.0.0",
|
||||||
|
"com.unity.modules.terrain": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.tilemap": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics2d": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.ui": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.uielements": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.ui": "1.0.0",
|
||||||
|
"com.unity.modules.imgui": "1.0.0",
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0",
|
||||||
|
"com.unity.modules.hierarchycore": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.umbra": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unityanalytics": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0",
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unitywebrequest": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unitywebrequestassetbundle": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.assetbundle": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unitywebrequestaudio": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0",
|
||||||
|
"com.unity.modules.audio": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unitywebrequesttexture": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0",
|
||||||
|
"com.unity.modules.imageconversion": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.unitywebrequestwww": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequestassetbundle": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequestaudio": "1.0.0",
|
||||||
|
"com.unity.modules.audio": "1.0.0",
|
||||||
|
"com.unity.modules.assetbundle": "1.0.0",
|
||||||
|
"com.unity.modules.imageconversion": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.vehicles": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.video": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.audio": "1.0.0",
|
||||||
|
"com.unity.modules.ui": "1.0.0",
|
||||||
|
"com.unity.modules.unitywebrequest": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.vr": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0",
|
||||||
|
"com.unity.modules.physics": "1.0.0",
|
||||||
|
"com.unity.modules.xr": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"com.unity.modules.wind": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {}
|
||||||
|
},
|
||||||
|
"com.unity.modules.xr": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "builtin",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics": "1.0.0",
|
||||||
|
"com.unity.modules.jsonserialize": "1.0.0",
|
||||||
|
"com.unity.modules.subsystems": "1.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,35 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!387306366 &1
|
||||||
|
MemorySettings:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_EditorMemorySettings:
|
||||||
|
m_MainAllocatorBlockSize: -1
|
||||||
|
m_ThreadAllocatorBlockSize: -1
|
||||||
|
m_MainGfxBlockSize: -1
|
||||||
|
m_ThreadGfxBlockSize: -1
|
||||||
|
m_CacheBlockSize: -1
|
||||||
|
m_TypetreeBlockSize: -1
|
||||||
|
m_ProfilerBlockSize: -1
|
||||||
|
m_ProfilerEditorBlockSize: -1
|
||||||
|
m_BucketAllocatorGranularity: -1
|
||||||
|
m_BucketAllocatorBucketsCount: -1
|
||||||
|
m_BucketAllocatorBlockSize: -1
|
||||||
|
m_BucketAllocatorBlockCount: -1
|
||||||
|
m_ProfilerBucketAllocatorGranularity: -1
|
||||||
|
m_ProfilerBucketAllocatorBucketsCount: -1
|
||||||
|
m_ProfilerBucketAllocatorBlockSize: -1
|
||||||
|
m_ProfilerBucketAllocatorBlockCount: -1
|
||||||
|
m_TempAllocatorSizeMain: -1
|
||||||
|
m_JobTempAllocatorBlockSize: -1
|
||||||
|
m_BackgroundJobTempAllocatorBlockSize: -1
|
||||||
|
m_JobTempAllocatorReducedBlockSize: -1
|
||||||
|
m_TempAllocatorSizeGIBakingWorker: -1
|
||||||
|
m_TempAllocatorSizeNavMeshWorker: -1
|
||||||
|
m_TempAllocatorSizeAudioWorker: -1
|
||||||
|
m_TempAllocatorSizeCloudWorker: -1
|
||||||
|
m_TempAllocatorSizeGfx: -1
|
||||||
|
m_TempAllocatorSizeJobWorker: -1
|
||||||
|
m_TempAllocatorSizeBackgroundWorker: -1
|
||||||
|
m_TempAllocatorSizePreloadManager: -1
|
||||||
|
m_PlatformMemorySettings: {}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!655991488 &1
|
||||||
|
MultiplayerManager:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_EnableMultiplayerRoles: 0
|
||||||
|
m_StrippingTypes: {}
|
||||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,37 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &1
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 53
|
||||||
|
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: 13964, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_EnablePreReleasePackages: 0
|
||||||
|
m_AdvancedSettingsExpanded: 1
|
||||||
|
m_ScopedRegistriesSettingsExpanded: 1
|
||||||
|
m_SeeAllPackageVersions: 0
|
||||||
|
m_DismissPreviewPackagesInUse: 0
|
||||||
|
oneTimeWarningShown: 0
|
||||||
|
oneTimeDeprecatedPopUpShown: 0
|
||||||
|
m_Registries:
|
||||||
|
- m_Id: main
|
||||||
|
m_Name:
|
||||||
|
m_Url: https://packages.unity.com
|
||||||
|
m_Scopes: []
|
||||||
|
m_IsDefault: 1
|
||||||
|
m_Capabilities: 7
|
||||||
|
m_ConfigSource: 0
|
||||||
|
m_UserSelectedRegistryName:
|
||||||
|
m_UserAddingNewScopedRegistry: 0
|
||||||
|
m_RegistryInfoDraft:
|
||||||
|
m_Modified: 0
|
||||||
|
m_ErrorMessage:
|
||||||
|
m_UserModificationsInstanceId: -884
|
||||||
|
m_OriginalInstanceId: -886
|
||||||
|
m_LoadAssets: 0
|
||||||
Binary file not shown.
@@ -0,0 +1,7 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1386491679 &1
|
||||||
|
PresetManager:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_DefaultPresets: {}
|
||||||
Binary file not shown.
@@ -0,0 +1,2 @@
|
|||||||
|
m_EditorVersion: 6000.0.37f1
|
||||||
|
m_EditorVersionWithRevision: 6000.0.37f1 (090b7797214c)
|
||||||
Binary file not shown.
@@ -0,0 +1,121 @@
|
|||||||
|
{
|
||||||
|
"templatePinStates": [],
|
||||||
|
"dependencyTypeInfos": [
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.AnimationClip",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEditor.Animations.AnimatorController",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.AnimatorOverrideController",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEditor.Audio.AudioMixerController",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.ComputeShader",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Cubemap",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.GameObject",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEditor.LightingDataAsset",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.LightingSettings",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Material",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEditor.MonoScript",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.PhysicsMaterial",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.PhysicsMaterial2D",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Rendering.PostProcessing.PostProcessProfile",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Rendering.PostProcessing.PostProcessResources",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Rendering.VolumeProfile",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEditor.SceneAsset",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Shader",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.ShaderVariantCollection",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Texture",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Texture2D",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "UnityEngine.Timeline.TimelineAsset",
|
||||||
|
"defaultInstantiationMode": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"defaultDependencyTypeInfo": {
|
||||||
|
"userAdded": false,
|
||||||
|
"type": "<default_scene_template_dependencies>",
|
||||||
|
"defaultInstantiationMode": 1
|
||||||
|
},
|
||||||
|
"newSceneOverride": 0
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,19 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!937362698 &1
|
||||||
|
VFXManager:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_IndirectShader: {fileID: 0}
|
||||||
|
m_CopyBufferShader: {fileID: 0}
|
||||||
|
m_SortShader: {fileID: 0}
|
||||||
|
m_StripUpdateShader: {fileID: 0}
|
||||||
|
m_EmptyShader: {fileID: 0}
|
||||||
|
m_RenderPipeSettingsPath:
|
||||||
|
m_FixedTimeStep: 0.016666668
|
||||||
|
m_MaxDeltaTime: 0.05
|
||||||
|
m_MaxScrubTime: 30
|
||||||
|
m_MaxCapacity: 100000000
|
||||||
|
m_CompiledVersion: 0
|
||||||
|
m_RuntimeVersion: 0
|
||||||
|
m_RuntimeResources: {fileID: 0}
|
||||||
|
m_BatchEmptyLifetime: 300
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!890905787 &1
|
||||||
|
VersionControlSettings:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_Mode: Visible Meta Files
|
||||||
|
m_TrackPackagesOutsideProject: 0
|
||||||
Reference in New Issue
Block a user