void PrefabStageOpened(PrefabStage stage) { if (m_PreviewObject != null) { EditorUtility.MoveToActiveScene(m_PreviewObject); } }
void SetPreviewMesh(ProBuilderMesh mesh) { ApplyPreviewTransform(mesh); Mesh umesh = mesh.mesh; umesh.hideFlags = HideFlags.DontSave; if (m_PreviewObject) { var mf = m_PreviewObject.GetComponent <MeshFilter>(); if (mf.sharedMesh != null) { DestroyImmediate(mf.sharedMesh); } m_PreviewObject.GetComponent <MeshFilter>().sharedMesh = umesh; mesh.preserveMeshAssetOnDestroy = true; m_PreviewObject.name = mesh.gameObject.name; DestroyImmediate(mesh.gameObject); } else { m_PreviewObject = mesh.gameObject; mesh.preserveMeshAssetOnDestroy = true; DestroyImmediate(mesh); Selection.activeTransform = m_PreviewObject.transform; } m_PreviewObject.GetComponent <MeshRenderer>().sharedMaterial = BuiltinMaterials.ShapePreviewMaterial; EditorUtility.MoveToActiveScene(m_PreviewObject.gameObject); }
void SetPreviewMesh(ProBuilderMesh mesh) { ApplyPreviewTransform(mesh); Mesh umesh = mesh.mesh; if (umesh != null) { umesh.hideFlags = HideFlags.DontSave; } if (m_PreviewObject) { if (!m_PreviewObject.TryGetComponent(out MeshFilter mf)) { mf = m_PreviewObject.AddComponent <MeshFilter>(); } if (mf.sharedMesh != null) { DestroyImmediate(mf.sharedMesh); } m_PreviewObject.GetComponent <MeshFilter>().sharedMesh = umesh; mesh.preserveMeshAssetOnDestroy = true; m_PreviewObject.name = mesh.gameObject.name; if (!m_PreviewObject.name.EndsWith("-preview")) { m_PreviewObject.name += "-preview"; } DestroyImmediate(mesh.gameObject); } else { m_PreviewObject = mesh.gameObject; m_PreviewObject.hideFlags = HideFlags.DontSave; mesh.preserveMeshAssetOnDestroy = true; DestroyImmediate(mesh); Selection.activeTransform = m_PreviewObject.transform; m_PreviewObject.name += "-preview"; } m_PreviewObject.GetComponent <MeshRenderer>().sharedMaterial = EditorMaterialUtility.GetShapePreviewMaterial(); EditorUtility.MoveToActiveScene(m_PreviewObject.gameObject); }
void SetPreviewMesh(ProBuilderMesh mesh) { EditorUtility.MoveToActiveScene(mesh.gameObject); ApplyPreviewTransform(mesh); DestroyPreviewObject(); mesh.selectable = false; m_PreviewObject = mesh.gameObject; mesh.preserveMeshAssetOnDestroy = true; var umesh = mesh.mesh; DestroyImmediate(mesh); umesh.hideFlags = HideFlags.DontSave; m_PreviewObject.hideFlags = HideFlags.DontSave; m_PreviewObject.GetComponent <MeshRenderer>().sharedMaterial = BuiltinMaterials.ShapePreviewMaterial; Selection.activeTransform = m_PreviewObject.transform; }