public void Initialize(RoMapData mapData, Material material, Material shadowMaterial, RectInt bounds, float tileSize, bool paintEmptyTilesBlack) { ChunkBounds = bounds; MapData = mapData; MeshRenderer = gameObject.GetOrAddComponent <MeshRenderer>(); MeshFilter = gameObject.GetOrAddComponent <MeshFilter>(); //Material = new Material(material); Material = material; ShadowMaterial = material; if (!MapData.IsWalkTable) { MeshRenderer.shadowCastingMode = ShadowCastingMode.TwoSided; } else { MeshRenderer.shadowCastingMode = ShadowCastingMode.Off; MeshRenderer.receiveShadows = false; } Collider = gameObject.AddComponent <MeshCollider>(); MeshRenderer.material = Material; RebuildMeshData(tileSize, paintEmptyTilesBlack); RebuildUvs(); }
public void Initialize(RoMapData data) { mapData = data; if (mapData.IsWalkTable) { TileSize = 1f; } RebuildMesh(); MakeStatic(); }
public RoMapSharedMeshData(RoMapData data) { this.data = data; vertexData = new Vector3[data.Width * data.Height][]; normalData = new Vector3[data.Width * data.Height][]; colorData = new Color[data.Width * data.Height][]; cellNormals = new Vector3[data.Width * data.Height]; cellColors = new Color[data.Width * data.Height]; }