ThreeNet 0.12.1
dotnet add package ThreeNet --version 0.12.1
NuGet\Install-Package ThreeNet -Version 0.12.1
<PackageReference Include="ThreeNet" Version="0.12.1" />
<PackageVersion Include="ThreeNet" Version="0.12.1" />
<PackageReference Include="ThreeNet" />
paket add ThreeNet --version 0.12.1
#r "nuget: ThreeNet, 0.12.1"
#:package ThreeNet@0.12.1
#addin nuget:?package=ThreeNet&version=0.12.1
#tool nuget:?package=ThreeNet&version=0.12.1
Three.Net
Native multiplatform 3D for .NET: a Rust + wgpu rendering core (DirectX 12, Metal, Vulkan) behind a Three.js style C# API. Made by Gravicode Studios, led by Kang Fadhil.
| Package | Contents |
|---|---|
ThreeNet |
Scene graph, geometry, PBR / Phong / Lambert / Basic materials, lights, cameras, renderer (HDR, bloom, tone mapping), glTF/OBJ loading, raycasting, native window with input |
ThreeNet.Native |
The native core for win-x64, linux-x64 and osx-arm64 (pulled in automatically) |
ThreeNet.Avalonia |
ThreeNetView control and OrbitController for Avalonia 12 |
dotnet add package ThreeNet
using System.Numerics;
using ThreeNet;
using Scene scene = new();
Node cube = scene.AddMesh(scene.CreateBoxGeometry(), scene.CreateMaterial(MaterialOptions.Pbr(Colors.Orange, 0.1f, 0.4f)));
Node sun = scene.AddLight(Light.Directional(Vector3.One, 3f));
sun.Position = new Vector3(4, 6, 4);
sun.LookAt(Vector3.Zero);
Node camera = scene.AddCamera(Camera.Perspective(55f.ToRadians()), new Vector3(0, 2, 6));
camera.LookAt(Vector3.Zero);
AppWindow window = new(WindowOptions.Default with { Title = "Hello Three.Net" });
float t = 0;
window.Render += (renderer, dt) =>
{
cube.EulerAngles = new Vector3(0, t += dt, 0);
renderer.Render(scene, camera);
};
window.Run();
Documentation, samples (ThreeGallery), the AI app generator (ThreeAppGen) and the Three.js converter: https://github.com/DotNetVibeCoderz/Vibe_Graphics/tree/main/ThreeNet
Requirements: .NET 10 and a GPU with DirectX 12, Metal or Vulkan.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- ThreeNet.Native (>= 0.12.1)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on ThreeNet:
| Package | Downloads |
|---|---|
|
ThreeNet.Avalonia
Avalonia UI control hosting a Three.Net scene, with an orbit camera controller. |
|
|
Gravicode.CAD.ThreeNet
Gravicode.CAD desktop rendering adapter for ThreeNet (Rust + wgpu: DirectX 12, Metal, Vulkan): turns CAD models into ThreeNet scenes with PBR materials, crease-aware normals, feature-edge overlays, studio lighting and camera framing. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.12.1 | 58 | 11/11/2026 |
| 0.12.0 | 311 | 10/15/2026 |
| 0.11.0 | 105 | 10/14/2026 |
| 0.10.0 | 104 | 10/14/2026 |
| 0.9.0 | 109 | 10/8/2026 |
| 0.8.0 | 129 | 10/4/2026 |
| 0.7.0 | 169 | 9/29/2026 |
| 0.6.0 | 118 | 9/24/2026 |
| 0.5.0 | 134 | 9/21/2026 |
| 0.4.2 | 124 | 9/21/2026 |
| 0.4.1 | 132 | 9/17/2026 |
| 0.4.0 | 122 | 9/17/2026 |
| 0.3.0 | 130 | 9/17/2026 |
| 0.1.0 | 129 | 9/15/2026 |