Files
HauntedBloodlines/Assets/Obi/Editor/Common/Blueprints/RenderModes/ObiBlueprintRenderModeMesh.cs
2025-05-29 22:31:40 +03:00

46 lines
1.5 KiB
C#

using UnityEditor;
namespace Obi
{
public class ObiBlueprintRenderModeMesh : ObiBlueprintRenderMode
{
public override string name
{
get { return "Mesh"; }
}
public ObiMeshBasedActorBlueprintEditor meshBasedEditor
{
get { return editor as ObiMeshBasedActorBlueprintEditor; }
}
public ObiBlueprintRenderModeMesh(ObiMeshBasedActorBlueprintEditor editor) : base(editor)
{
}
public override void OnSceneRepaint(SceneView sceneView)
{
if (meshBasedEditor.currentTool is ObiPaintBrushEditorTool)
{
ObiPaintBrushEditorTool paintTool = (ObiPaintBrushEditorTool)meshBasedEditor.currentTool;
float[] weights = new float[editor.selectionStatus.Length];
for (int i = 0; i < weights.Length; i++)
{
if (paintTool.selectionMask && !editor.selectionStatus[i])
weights[i] = 0;
else
weights[i] = 1;
}
float[] wireframeWeights = new float[paintTool.paintBrush.weights.Length];
for (int i = 0; i < wireframeWeights.Length; i++)
wireframeWeights[i] = paintTool.paintBrush.weights[i];
meshBasedEditor.DrawGradientMesh(weights, wireframeWeights);
}
else
meshBasedEditor.DrawGradientMesh();
}
}
}