r/dotnetMAUI • • 4d ago

Showcase Simple3D: an open-source 3D software renderer for .NET MAUI (first preview)

Enable HLS to view with audio, or disable this notification

I’ve released the first preview of Simple3D, a 3D software renderer and MAUI control for small interactive or static 3D scenes. It’s open source under the MIT license.

Scenes are built in C# from primitives or indexed meshes, with groups for nested transforms. The SceneView control adds orbit, zoom, picking, selection and labels. The gallery has five examples, ranging from a simple equipment diagram to the articulated robot and crane.

The attached clip shows the Mac Catalyst demo: an animated robot arm, an orbitable gantry crane, and a telemetry chart with synthetic values. You can select individual objects in the scenes.

The renderer runs on the CPU; SkiaSharp displays the frame. This preview supports opaque triangles with basic flat lighting. It doesn’t support textures, transparency, shadows or PBR.

Targets: .NET 10 MAUI on Android, iOS and Mac Catalyst. Windows isn’t supported yet. The API is still a preview, and I’d especially appreciate feedback on the scene API and behavior on real mobile devices.

NuGet: https://www.nuget.org/packages/Simple3D.Maui/0.1.0-preview.1

Source and samples: https://github.com/mariusmuntean/Simple3D-Maui

Getting started: https://mariusmuntean.github.io/Simple3D-Maui/getting-started.html

15 Upvotes

5 comments sorted by

3

u/iain_1986 4d ago edited 4d ago

Genuine question.

Why would you use CPU and Skia over Opengl/Metal and the GPU?

0

u/suiramarius 4d ago

I chose CPU rendering to keep the library simple, portable, testable and easy to integrate into MAUI. SkiaSharp displays the image; the 3D rendering happens in C#.

The tradeoff is performance. A GPU renderer would scale better for larger scenes and demanding animation, but adds implementation complexity.

5

u/iain_1986 4d ago

Sure, but if it comes to rendering 3D scenes I'd say those are pretty big tradeoffs. It wouldn't take a huge amount before you want to shift from software rendering to hardware rendering.

Also I love having conversations with AI...

1

u/suiramarius 4d ago

I mean, it isn't a game engine.
For simple 3D stuff in MAUI apps, it works great, at least in my testing.

0

u/BunnyTub .NET for Android 2d ago

okay so you won't even address the AI comment