1.修复一些错误2.准备专门提供基于距离的spline3.tracydll存在崩溃问题
This commit is contained in:
@@ -2,6 +2,7 @@ using Convention;
|
||||
using Convention.WindowsUI;
|
||||
using Convention.WindowsUI.Variant;
|
||||
using Demo.Game;
|
||||
using Dreamteck.Splines;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
@@ -12,6 +13,7 @@ using UnityEngine.SceneManagement;
|
||||
|
||||
namespace Demo.Editor
|
||||
{
|
||||
[DefaultExecutionOrder(-9999)]
|
||||
public class EditorController : MonoSingleton<EditorController>
|
||||
{
|
||||
/// <summary>
|
||||
@@ -43,6 +45,7 @@ namespace Demo.Editor
|
||||
/// TODO: 替换为Dict<Tex>纹理组,这将用来支持更高的精度
|
||||
/// </summary>
|
||||
private Texture2D SpectrumRenderTexture;
|
||||
private bool IsEnableUpdateSpectrumRenderTexture = false;
|
||||
|
||||
private Color backgroundColor = new(0, 0, 0, 0);
|
||||
private Color waveformColor = new(1, 1, 1, 1);
|
||||
@@ -150,8 +153,10 @@ namespace Demo.Editor
|
||||
SpectrumRawImage.texture = SpectrumRenderTexture;
|
||||
}
|
||||
}
|
||||
using (Profiler.BeginZone(nameof(UpdateSpectrumRenderTexture)))
|
||||
UpdateSpectrumRenderTexture();
|
||||
|
||||
if (IsEnableUpdateSpectrumRenderTexture)
|
||||
using (Profiler.BeginZone(nameof(UpdateSpectrumRenderTexture)))
|
||||
UpdateSpectrumRenderTexture();
|
||||
}
|
||||
|
||||
private void InjectSongLoadOverCallback(BasicAudioSystem audio)
|
||||
@@ -370,37 +375,41 @@ namespace Demo.Editor
|
||||
}));
|
||||
}
|
||||
|
||||
private void RegisterVariableGenerater()
|
||||
{
|
||||
// Generate Framework
|
||||
var generaters = DefaultInstantiate.GetScriptableObjectInstantiate();
|
||||
foreach (var asm in AppDomain.CurrentDomain.GetAssemblies())
|
||||
{
|
||||
foreach (var type in asm.GetTypes())
|
||||
{
|
||||
string filename = Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater.GetTypename(type);
|
||||
if (Convention.RScript.Variable.RScriptInjectVariableGenerater.AllRScriptInjectVariables.ContainsKey(filename))
|
||||
continue;
|
||||
if (generaters.TryGetValue(filename, out var generater))
|
||||
{
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(type, () => generater(), null, filename).Register();
|
||||
}
|
||||
else if (typeof(ScriptableObject).IsAssignableFrom(type))
|
||||
{
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(type, null, null, filename).Register();
|
||||
}
|
||||
}
|
||||
}
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(typeof(MathExtension.EaseCurveType), null, null,
|
||||
Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater.GetTypename(typeof(MathExtension.EaseCurveType))).Register();
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(typeof(SplineComputer.SampleMode), null, null,
|
||||
Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater.GetTypename(typeof(SplineComputer.SampleMode))).Register();
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(typeof(Spline.Type), null, null,
|
||||
Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater.GetTypename(typeof(Spline.Type))).Register();
|
||||
}
|
||||
|
||||
private void Start()
|
||||
{
|
||||
Profiler.AppInfo(Application.productName);
|
||||
|
||||
GlobalConfig.ConstConfigFile = "config.easysave";
|
||||
// Generate Framework
|
||||
{
|
||||
var generaters = DefaultInstantiate.GetScriptableObjectInstantiate();
|
||||
foreach (var asm in AppDomain.CurrentDomain.GetAssemblies())
|
||||
{
|
||||
foreach (var type in asm.GetTypes())
|
||||
{
|
||||
string filename = Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater.GetTypename(type);
|
||||
if (Convention.RScript.Variable.RScriptInjectVariableGenerater.AllRScriptInjectVariables.ContainsKey(filename))
|
||||
continue;
|
||||
if (generaters.TryGetValue(filename, out var generater))
|
||||
{
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(type, () => generater(), null, filename).Register();
|
||||
Debug.Log($"{filename} register");
|
||||
}
|
||||
else if (typeof(ScriptableObject).IsAssignableFrom(type))
|
||||
{
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(type, null, null, filename).Register();
|
||||
Debug.Log($"{filename} register");
|
||||
}
|
||||
}
|
||||
}
|
||||
new Convention.RScript.Variable.CStyle.CScriptRScriptVariableGenerater(
|
||||
typeof(MathExtension.EaseCurveType), null, null, nameof(MathExtension.EaseCurveType) + "Getter").Register();
|
||||
Debug.Log($"{typeof(MathExtension.EaseCurveType)} register");
|
||||
}
|
||||
RegisterVariableGenerater();
|
||||
|
||||
// Helper Files
|
||||
ToolFile helperHeaderDir = new ToolFile(PersistentHelperPath);
|
||||
@@ -450,6 +459,10 @@ namespace Demo.Editor
|
||||
{
|
||||
IsLowPerformance = true;
|
||||
}
|
||||
else if (arg == "-UpdateSpectrumRenderTexture")
|
||||
{
|
||||
IsEnableUpdateSpectrumRenderTexture = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user