public void Write(SceneWriter writer, object component) { Renderer mr = component as Renderer; if (mr == null) { throw new Exception(GetType() + " cannot export components of type " + component.GetType()); } if (!mr.enabled) { writer.WriteElement("enabled", mr.enabled); } if (mr.lightmapIndex > -1) { writer.WriteElement("lightmapIndex", mr.lightmapIndex); writer.WriteElement("lightmapTilingOffset", mr.lightmapTilingOffset); } writer.WriteElement("sharedMaterials", mr.sharedMaterials); SkinnedMeshRenderer smr = mr as SkinnedMeshRenderer; if (smr != null) { string[] bones = new string[smr.bones.Length]; for (int i = 0; i < smr.bones.Length; i++) { bones[i] = smr.bones[i].name; } writer.WriteElement("bones", bones); writer.WriteMesh(smr.sharedMesh, "sharedMesh"); } if (mr is LineRenderer) { writer.WriteElement("useWorldSpace", (mr as LineRenderer).useWorldSpace); } }
public void Write(SceneWriter scene, object component) { MeshFilter filter = (component as Component).GetComponent <MeshFilter>(); if (filter == null) { throw new Exception(GetType() + " cannot export components of type " + component.GetType()); } if (filter.sharedMesh != null) { scene.WriteMesh(filter.sharedMesh, "mesh"); } }