ZeroGraphics.Core
1.0.0
See the version list below for details.
dotnet add package ZeroGraphics.Core --version 1.0.0
NuGet\Install-Package ZeroGraphics.Core -Version 1.0.0
<PackageReference Include="ZeroGraphics.Core" Version="1.0.0" />
<PackageVersion Include="ZeroGraphics.Core" Version="1.0.0" />
<PackageReference Include="ZeroGraphics.Core" />
paket add ZeroGraphics.Core --version 1.0.0
#r "nuget: ZeroGraphics.Core, 1.0.0"
#:package ZeroGraphics.Core@1.0.0
#addin nuget:?package=ZeroGraphics.Core&version=1.0.0
#tool nuget:?package=ZeroGraphics.Core&version=1.0.0
ZeroGraphics
High-performance, hardware-accelerated desktop graphics ecosystem for .NET (WinForms / WPF / Headless). Built with direct COM VTable P/Invoke โ zero external dependencies (no SharpDX, no Vortice.Windows, no runtime D3DCompiler required).
Dual-targeted for legacy .NET Framework 4.6.2 enterprise apps (e.g., Industrial ERP, MES, SCADA) and modern .NET 8.0 / 9.0+ Windows.
๐๏ธ Ecosystem Architecture
ZeroGraphics/
โโโ src/
โ โโโ ZeroGraphics.Core/ # Multi-target: netstandard2.0; net462; net8.0
โ โ โโโ Math/ # Analytical SDF calculations, Gaussian kernels
โ โ โโโ Data/ # Zero-allocation LTTB downsampling algorithm
โ โ โโโ Telemetry/ # DXGI GPU hardware telemetry (Tiers, VRAM, Vendor)
โ โ
โ โโโ ZeroGraphics.Direct2D/ # Multi-target: net462; net8.0-windows
โ โ โโโ Native/ # Direct2D 1.0 & DirectWrite COM VTable interfaces
โ โ โโโ Core/ # D2DFactory, DWriteFactory, IDWriteTextFormat
โ โ โโโ Controls/ # ZeroDirect2DCanvas (Per-Monitor V2 Subpixel ClearType)
โ โ
โ โโโ ZeroGraphics.DirectX/ # Multi-target: net462; net8.0-windows
โ โ โโโ Native/ # Direct3D 11, DXGI 1.1, DXBC Bytecode VTable bindings
โ โ โโโ Core/ # D3D11DeviceManager, SwapChain, RenderTargetView
โ โ โโโ Pipeline/ # SdfCardPipeline (Single-pass quad, precompiled HLSL)
โ โ โโโ Controls/ # ZeroDirectXCanvas (Analytical rounded cards, blur, glow)
โ โ
โ โโโ ZeroGraphics.Waveform/ # Multi-target: net462; net8.0-windows
โ โโโ Pipeline/ # WaveformPipeline (LineStrip topology, vertex buffer stream)
โ โโโ Controls/ # ZeroWaveformCanvas (100k points @ 60 FPS oscilloscope)
โ
โโโ samples/
โ โโโ ZeroGraphics.Samples.Demo/ # Interactive WinForms demo application
โโโ tests/
โโโ ZeroGraphics.Tests/ # Comprehensive xUnit automated verification suite
๐ Key Advantages
Zero External Dependencies:
- Uses zero third-party NuGet packages for graphics.
- All COM interfaces (
ID3D11Device,IDXGISwapChain,ID2D1Factory,IDWriteFactory) communicate directly via pure C#[UnmanagedFunctionPointer]VTable delegates. - Shaders are precompiled via
fxc.exe(Shader Model 4.0) and embedded directly as byte arrays โ eliminating the need ford3dcompiler_47.dllat runtime.
Enterprise WinForms Integration (Single HWND):
- Renders directly into standard WinForms
Control.Handlevia Direct3D 11 swap chains or Direct2DHwndRenderTarget. - On-demand rendering: redraws only when properties change or upon OS invalidation events (
0.0% CPUand0.0% GPUwhen idle).
- Renders directly into standard WinForms
Multi-Target Universal Compatibility:
ZeroGraphics.Coretargets.NET Standard 2.0,.NET Framework 4.6.2, and.NET 8.0.- UI canvas libraries support
.NET Framework 4.6.2and.NET 8.0-windows.
๐ฆ Package Matrix
| Package | Target Frameworks | Primary Use Case |
|---|---|---|
ZeroGraphics.Core |
netstandard2.0, net462, net8.0 |
Math, SDF kernels, LTTB decimation, GPU telemetry |
ZeroGraphics.Direct2D |
net462, net8.0-windows |
Subpixel ClearType typography, High-DPI text rendering |
ZeroGraphics.DirectX |
net462, net8.0-windows |
Analytical SDF cards, drop shadows, neon glow effects |
ZeroGraphics.Waveform |
net462, net8.0-windows |
Real-time oscilloscope, high-speed time-series streaming |
โก Quick Start
1. Direct3D 11 Analytical SDF Card (WinForms)
using ZeroGraphics.DirectX.Controls;
var card = new ZeroDirectXCanvas
{
Dock = DockStyle.Fill,
Elevation = 12f,
BlurRadius = 24f,
CornerRadius = 16f,
BorderWidth = 1.5f,
GlowIntensity = 0.6f,
CardColor = Color.FromArgb(24, 28, 38)
};
this.Controls.Add(card);
2. Direct2D DirectWrite Typography
using ZeroGraphics.Direct2D.Controls;
var textCanvas = new ZeroDirect2DCanvas
{
Dock = DockStyle.Fill,
TextFontFamily = "Segoe UI",
TextSize = 16f,
SampleText = "Subpixel ClearType with Per-Monitor V2 High-DPI Crispness"
};
this.Controls.Add(textCanvas);
3. Waveform High-Speed Oscilloscope (100k points)
using ZeroGraphics.Waveform.Controls;
var scope = new ZeroWaveformCanvas
{
Dock = DockStyle.Fill,
AutoScale = true,
TraceColor = Color.FromArgb(0, 255, 136)
};
this.Controls.Add(scope);
// Stream live telemetry points
float[] points = GetTelemetryBuffer(); // 100,000 points
scope.SetData(points);
๐งช Verification & Tests
To execute the automated test suite:
dotnet test tests/ZeroGraphics.Tests/ZeroGraphics.Tests.csproj
To run the interactive demonstration application:
dotnet run --project samples/ZeroGraphics.Samples.Demo/ZeroGraphics.Samples.Demo.csproj -f net8.0-windows
๐ License
MIT License. Designed and engineered by Phong Vรต.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.2
- System.Buffers (>= 4.5.1)
- System.Memory (>= 4.5.5)
-
.NETStandard 2.0
- System.Buffers (>= 4.5.1)
- System.Memory (>= 4.5.5)
-
net8.0
- No dependencies.
NuGet packages (12)
Showing the top 5 NuGet packages that depend on ZeroGraphics.Core:
| Package | Downloads |
|---|---|
|
ZeroUI.WinForms
Ultra-high-performance WinForms industrial UI suite with 10M+ rows virtual grid, ISA-18.2 alarms, P&ID actuators, 60 FPS oscilloscope, and modern Obsidian Dark/Clean Light theme. |
|
|
ZeroUI.Wpf
Ultra-high-performance WPF industrial UI suite with zero-allocation virtual big data grid and modern reactive theme engine. |
|
|
ZeroGraphics.DirectX
High-performance Direct3D 11 and DXGI rendering pipeline with hardware-accelerated HLSL Signed Distance Field (SDF) effects for Windows Forms (.NET Framework 4.6.2 and .NET 8.0). |
|
|
ZeroGraphics.Waveform
High-frequency real-time waveform, oscilloscope, and industrial telemetry chart canvas powered by Direct3D 11 hardware-accelerated LineStrip rendering (.NET Framework 4.6.2 and .NET 8.0). |
|
|
ZeroGraphics.Direct2D
High-performance Direct2D and DirectWrite typography and 2D vector rendering engine for Windows Forms (.NET Framework 4.6.2 and .NET 8.0). |
GitHub repositories
This package is not used by any popular GitHub repositories.