public static NoteData ConvertNoteData(NoteData note, RawNoteData rawNoteData, float3 lineOffset) { float3 position = GetPosition(rawNoteData.LineIndex, rawNoteData.LineLayer, lineOffset); note.TransformData.Position = position; if (rawNoteData.CutDirection >= 1000) { note.TransformData.LocalRotation = Quaternion.Euler(0, 0, -(rawNoteData.CutDirection - 1000)); } return(note); }
public static NoteData ConvertNoteData(NoteData note, RawNoteData rawNoteData, float3 lineOffset) { note.TransformData = ConvertTransform(note.TransformData, rawNoteData.CustomData, 0, 0, lineOffset); return(note); }
public static NoteData ConvertNoteDataWithVanillaMethod(RawNoteData rawNoteData, float3 lineOffset) { float3 euler = new float3(); quaternion rotation = new quaternion(); switch ((CutDirection)rawNoteData.CutDirection) { case CutDirection.Upwards: euler = new float3(0, 0, 180); rotation = new quaternion(0, 0, 1, 0); break; case CutDirection.Downwards: rotation = new quaternion(0, 0, 0.0008726948f, 0.9999996f); break; case CutDirection.TowardsLeft: euler = new float3(0, 0, -90); rotation = new quaternion(0, 0, -0.7071068f, 0.7071068f); break; case CutDirection.TowardsRight: euler = new float3(0, 0, 90); rotation = new quaternion(0, 0, 0.7071068f, 0.7071068f); break; case CutDirection.TowardsTopLeft: euler = new float3(0, 0, -135); rotation = new quaternion(0, 0, -0.9238796f, 0.3826833f); break; case CutDirection.TowardsTopRight: euler = new float3(0, 0, 135); rotation = new quaternion(0, 0, 0.9238796f, 0.3826834f); break; case CutDirection.TowardsBottomLeft: euler = new float3(0, 0, -45); rotation = new quaternion(0, 0, -0.3826834f, 0.9238796f); break; case CutDirection.TowardsBottomRight: euler = new float3(0, 0, 45); rotation = new quaternion(0, 0, 0.3826834f, 0.9238796f); break; case CutDirection.Any: rotation = new quaternion(0, 0, 0.0008726948f, 0.9999996f); break; default: break; } var note = new NoteData { Time = rawNoteData.Time, CutDirection = rawNoteData.CutDirection, Type = rawNoteData.Type, TransformData = new TransformData { Position = GetVanillaPosition(rawNoteData.LineIndex, rawNoteData.LineLayer, lineOffset), LocalRotation = rotation, }, }; return(note); }