升级obi

This commit is contained in:
2026-01-22 22:08:21 +08:00
parent 120b8cda26
commit 20f14322bc
1067 changed files with 149894 additions and 29583 deletions

View File

@@ -1,8 +1,5 @@
using UnityEditor;
using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;
namespace Obi{
@@ -11,28 +8,34 @@ namespace Obi{
{
ObiRopeMeshRenderer renderer;
public void OnEnable(){
renderer = (ObiRopeMeshRenderer)target;
}
private void BakeMesh()
[MenuItem("CONTEXT/ObiRopeMeshRenderer/Bake mesh")]
static void Bake(MenuCommand command)
{
if (renderer != null && renderer.deformedMesh != null)
ObiRopeMeshRenderer renderer = (ObiRopeMeshRenderer)command.context;
if (renderer.actor.isLoaded)
{
ObiEditorUtils.SaveMesh(renderer.deformedMesh, "Save deformed mesh", "rope mesh");
var system = renderer.actor.solver.GetRenderSystem<ObiRopeMeshRenderer>() as ObiMeshRopeRenderSystem;
if (system != null)
{
var mesh = new Mesh();
system.BakeMesh(renderer, ref mesh, true);
ObiEditorUtils.SaveMesh(mesh, "Save rope mesh", "rope mesh");
GameObject.DestroyImmediate(mesh);
}
}
}
public void OnEnable(){
renderer = (ObiRopeMeshRenderer)target;
}
public override void OnInspectorGUI() {
serializedObject.UpdateIfRequiredOrScript();
if (GUILayout.Button("BakeMesh"))
{
BakeMesh();
}
Editor.DrawPropertiesExcluding(serializedObject,"m_Script");
// Apply changes to the serializedProperty
@@ -40,8 +43,6 @@ namespace Obi{
serializedObject.ApplyModifiedProperties();
renderer.UpdateRenderer(renderer.GetComponent<ObiRopeBase>());
}
}