Novolis.Rendering.Presentation.Abstractions
2026.1.1.76
dotnet add package Novolis.Rendering.Presentation.Abstractions --version 2026.1.1.76
NuGet\Install-Package Novolis.Rendering.Presentation.Abstractions -Version 2026.1.1.76
<PackageReference Include="Novolis.Rendering.Presentation.Abstractions" Version="2026.1.1.76" />
<PackageVersion Include="Novolis.Rendering.Presentation.Abstractions" Version="2026.1.1.76" />
<PackageReference Include="Novolis.Rendering.Presentation.Abstractions" />
paket add Novolis.Rendering.Presentation.Abstractions --version 2026.1.1.76
#r "nuget: Novolis.Rendering.Presentation.Abstractions, 2026.1.1.76"
#:package Novolis.Rendering.Presentation.Abstractions@2026.1.1.76
#addin nuget:?package=Novolis.Rendering.Presentation.Abstractions&version=2026.1.1.76
#tool nuget:?package=Novolis.Rendering.Presentation.Abstractions&version=2026.1.1.76
Novolis.Rendering.Presentation.Abstractions
Host-neutral presentation contracts between ray tracing backends and window hosts: CPU pixel output, optional GPU surfaces, and frame presenters.
Install
dotnet add package Novolis.Rendering.Presentation.Abstractions
Prerequisites: .NET 10 SDK (net10.0), Novolis.Math.Geometry.
Quick start — CPU blit path
using Novolis.Rendering.Presentation.Abstractions;
IRenderOutput output = backend.Output;
if (output.TryGetCpuPixels(out var pixels, out var w, out var h))
presenter.PresentCpuFrame(pixels, w, h);
Quick start — buffer wrapper
var renderOutput = new ImageBufferRenderOutput { Buffer = new ImageBuffer(640, 480) };
Implement IFramePresenter in Raylib or a Silk compose host; implement IGpuFramePresenter when importing native GPU handles.
API
| Type | Role |
|---|---|
IRenderOutput |
TryGetCpuPixels from a backend |
IFramePresenter |
PresentCpuFrame to a host surface |
IRenderGpuSurface |
Opaque GPU handle + dimensions |
ICpuBackedGpuSurface |
GPU surface readable via CPU staging copy |
IGpuFramePresenter |
PresentGpuFrame for native handles |
ImageBufferRenderOutput |
IRenderOutput over ImageBuffer |
Key / MouseButton |
Shared input enums for presentation hosts |
Backends implement IRenderOutput; presenters consume CPU pixels or GPU surfaces without referencing specific backends.
Related
| Package | Role |
|---|---|
Novolis.Silk |
GLFW/OpenGL window loop and blit (novolis-silk) |
Novolis.Rendering.Presentation.Raylib |
Raylib texture presenter |
Novolis.Rendering.Runtime |
IRayTracingBackend.Output |
Novolis.Rendering.Abstractions |
ImageBuffer pixel storage |
More documentation
| 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
- Novolis.Math.Geometry (>= 2026.1.1.57)
- Novolis.Rendering.Abstractions (>= 2026.1.1.76)
NuGet packages (10)
Showing the top 5 NuGet packages that depend on Novolis.Rendering.Presentation.Abstractions:
| Package | Downloads |
|---|---|
|
Novolis.Avalonia.Rendering
Avalonia hosts for Novolis.Rendering.TwoD (OpenGL) and CPU RGBA frames. |
|
|
Novolis.Rendering.Backends.TwoD.Silk
Silk.NET OpenGL backend for Novolis.Rendering.TwoD. |
|
|
Novolis.Rendering.Runtime
Flat runtime scene structures and ray tracing backend contracts. |
|
|
Novolis.Rendering.Backends.Cpu
CPU path tracing backend with progressive accumulation. |
|
|
Novolis.Rendering.PathTrace.Demos
Shared path-tracing demo scenes, async workers, and session helpers for Silk and Raylib samples. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2026.1.1.76 | 41 | 10/6/2026 |
| 2026.1.1.75 | 69 | 10/5/2026 |
| 2026.1.1.74 | 62 | 10/5/2026 |
| 2026.1.1.73 | 65 | 10/5/2026 |
| 2026.1.1.72 | 139 | 10/4/2026 |
| 2026.1.1.71 | 290 | 10/1/2026 |
| 2026.1.1.70 | 174 | 9/30/2026 |