timeline poc

This commit is contained in:
4sval 2023-02-12 00:13:27 +01:00
parent a77d76ff34
commit c7d532fff9
2 changed files with 13 additions and 1 deletions

View File

@ -53,6 +53,18 @@ public class Animation : IDisposable
public void ImGuiTimeline()
{
var canvasP0 = ImGui.GetCursorScreenPos();
var canvasSize = ImGui.GetContentRegionAvail();
var canvasP1 = new Vector2(canvasP0.X + canvasSize.X, canvasP0.Y + canvasSize.Y);
var ratio = canvasSize / Sequences[CurrentSequence].MaxFrame;
var drawList = ImGui.GetWindowDrawList();
drawList.AddRectFilled(canvasP0, canvasP1, 0xFF242424);
var l1 = new Vector2(canvasP0.X + Sequences[CurrentSequence].Frame * ratio.X, canvasP0.Y);
var l2 = new Vector2(l1.X, canvasP1.Y);
drawList.AddLine(l1, l2, 0xFF0000FF, 2f);
ImGui.Text($"{Sequences[CurrentSequence].Name} > {(CurrentSequence < SequencesCount - 1 ? Sequences[CurrentSequence + 1].Name : Sequences[0].Name)}");
ImGui.Text($"Frame: {Sequences[CurrentSequence].Frame}/{Sequences[CurrentSequence].MaxFrame}");
ImGui.Text($"FPS: {Sequences[CurrentSequence].FramesPerSecond}");

View File

@ -362,7 +362,7 @@ public class Material : IDisposable
var origin = new Vector2(canvasP0.X + _scrolling.X, canvasP0.Y + _scrolling.Y);
var absoluteMiddle = canvasSize / 2.0f;
ImGui.InvisibleButton("canvas", canvasSize, ImGuiButtonFlags.MouseButtonLeft | ImGuiButtonFlags.MouseButtonRight);
ImGui.InvisibleButton("texture_inspector_canvas", canvasSize, ImGuiButtonFlags.MouseButtonLeft | ImGuiButtonFlags.MouseButtonRight);
if (ImGui.IsItemActive() && ImGui.IsMouseDragging(ImGuiMouseButton.Left))
{
_scrolling.X += io.MouseDelta.X;