Editor dummy code
This commit is contained in:
parent
dd3bbf1d5b
commit
16b04ea22a
30
Nerfed.Editor/Editor/EditorGui.cs
Normal file
30
Nerfed.Editor/Editor/EditorGui.cs
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
namespace Nerfed.Editor.Editor
|
||||||
|
{
|
||||||
|
internal static class EditorGui
|
||||||
|
{
|
||||||
|
internal static void Initialize()
|
||||||
|
{
|
||||||
|
// Create GuiController.
|
||||||
|
|
||||||
|
// Subscribe to GUI update.
|
||||||
|
// GuiController.OnGui call => UpdateDock;
|
||||||
|
// GuiController.OnGui call => UpdateEditorWindows;
|
||||||
|
// GuiController.OnGui call => ...;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static void Update()
|
||||||
|
{
|
||||||
|
// Update GuiController.
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static void Render()
|
||||||
|
{
|
||||||
|
// Reneder GuiController.
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void UpdateDock()
|
||||||
|
{
|
||||||
|
// Setup default dockspace for the main window.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -23,8 +23,8 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Nerfed.Runtime\Nerfed.Runtime.csproj"/>
|
<ProjectReference Include="..\Nerfed.Runtime\Nerfed.Runtime.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<Import Project=".\CopyLibs.targets"/>
|
<Import Project=".\CopyLibs.targets" />
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -6,6 +6,33 @@ internal class Program
|
|||||||
{
|
{
|
||||||
private static void Main(string[] args)
|
private static void Main(string[] args)
|
||||||
{
|
{
|
||||||
|
Engine.OnInitialize += HandleOnInitialize;
|
||||||
|
Engine.OnUpdate += HandleOnUpdate;
|
||||||
|
Engine.OnRender += HandleOnRender;
|
||||||
|
Engine.OnQuit += HandleOnQuit;
|
||||||
|
|
||||||
Engine.Run(args);
|
Engine.Run(args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void HandleOnInitialize()
|
||||||
|
{
|
||||||
|
// Open project.
|
||||||
|
// Setip EditorGui.
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void HandleOnUpdate()
|
||||||
|
{
|
||||||
|
// Editor Update.
|
||||||
|
|
||||||
|
// Try Catch UserCode Update.
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void HandleOnRender()
|
||||||
|
{
|
||||||
|
// Editor GUI Render.
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void HandleOnQuit()
|
||||||
|
{
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,12 +1,17 @@
|
|||||||
using System.Diagnostics;
|
|
||||||
using Nerfed.Runtime.Audio;
|
using Nerfed.Runtime.Audio;
|
||||||
using Nerfed.Runtime.Graphics;
|
using Nerfed.Runtime.Graphics;
|
||||||
using SDL2;
|
using SDL2;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace Nerfed.Runtime;
|
namespace Nerfed.Runtime;
|
||||||
|
|
||||||
public static class Engine
|
public static class Engine
|
||||||
{
|
{
|
||||||
|
public static event Action OnInitialize;
|
||||||
|
public static event Action OnUpdate;
|
||||||
|
public static event Action OnRender;
|
||||||
|
public static event Action OnQuit;
|
||||||
|
|
||||||
public static TimeSpan MaxDeltaTime { get; set; } = TimeSpan.FromMilliseconds(100);
|
public static TimeSpan MaxDeltaTime { get; set; } = TimeSpan.FromMilliseconds(100);
|
||||||
public static bool VSync { get; set; }
|
public static bool VSync { get; set; }
|
||||||
|
|
||||||
@ -65,11 +70,15 @@ public static void Run(string[] args)
|
|||||||
|
|
||||||
AudioDevice = new AudioDevice();
|
AudioDevice = new AudioDevice();
|
||||||
|
|
||||||
|
OnInitialize?.Invoke();
|
||||||
|
|
||||||
while (!quit)
|
while (!quit)
|
||||||
{
|
{
|
||||||
Tick();
|
Tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
OnQuit?.Invoke();
|
||||||
|
|
||||||
GraphicsDevice.UnclaimWindow(MainWindow);
|
GraphicsDevice.UnclaimWindow(MainWindow);
|
||||||
MainWindow.Dispose();
|
MainWindow.Dispose();
|
||||||
GraphicsDevice.Dispose();
|
GraphicsDevice.Dispose();
|
||||||
@ -146,6 +155,7 @@ private static void Tick()
|
|||||||
ProcessSDLEvents();
|
ProcessSDLEvents();
|
||||||
|
|
||||||
// Tick game here...
|
// Tick game here...
|
||||||
|
OnUpdate?.Invoke();
|
||||||
|
|
||||||
AudioDevice.WakeThread();
|
AudioDevice.WakeThread();
|
||||||
accumulatedUpdateTime -= Timestep;
|
accumulatedUpdateTime -= Timestep;
|
||||||
@ -154,6 +164,7 @@ private static void Tick()
|
|||||||
double alpha = accumulatedUpdateTime / Timestep;
|
double alpha = accumulatedUpdateTime / Timestep;
|
||||||
|
|
||||||
// Render here..
|
// Render here..
|
||||||
|
OnRender?.Invoke();
|
||||||
|
|
||||||
accumulatedDrawTime -= framerateCapTimeSpan;
|
accumulatedDrawTime -= framerateCapTimeSpan;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user