-
Hello, I've been using Estragonia as a reference for integrating Avalonia into my custom engine. It's been a great help. I'm getting stuck on getting Avalonia to output anything other than a white quad (RenderDoc shows that What do I need to setup in order for Avalonia to output draw commands? I'm also not exactly sure what Compositor and RenderTimer do. In summary, this is what I do each frame: // Setup - Ran once at the start
builder.Start(false); // This creates the AppBuilder and starts it in non-designer mode.
TopLevel = new EngineAvaloniaTopLevel(new EngineAvaloniaTopLevelImpl(graphics, window));
TopLevel.Prepare();
TopLevel.StartRendering();
TopLevel.Content = new HelloWorldView(); // HelloWorldView is copied from Estragonia
// Render - Ran once a frame
renderTimer.TriggerTick(TimeSpan.FromSeconds(time.DeltaTime));
TopLevel.Impl.Render(); For context, I'm using DiligentEngine's C# bindings (a custom version with the Vulkan side of the rendering framework exposed), Silk.Net for their Vulkan bindings, and SDL2-CS for windowing. Those likely don't matter in this case though. Everything Avalonia related should be fairly similar to what you have in Estragonia. I've been primarily referencing your fourth commit and I think this commit before you added Vulkan synchronization. Here's most of my Avalonia related code for reference: Avalonia.zip |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
It looks like I have to provide a DispatcherImpl. I'm guessing what is happening is that the commands were getting queued, but never submitted. |
Beta Was this translation helpful? Give feedback.
It looks like I have to provide a DispatcherImpl. I'm guessing what is happening is that the commands were getting queued, but never submitted.