Aardworx.Rendering.WebGL
1.2.6
See the version list below for details.
dotnet add package Aardworx.Rendering.WebGL --version 1.2.6
NuGet\Install-Package Aardworx.Rendering.WebGL -Version 1.2.6
<PackageReference Include="Aardworx.Rendering.WebGL" Version="1.2.6" />
<PackageVersion Include="Aardworx.Rendering.WebGL" Version="1.2.6" />
<PackageReference Include="Aardworx.Rendering.WebGL" />
paket add Aardworx.Rendering.WebGL --version 1.2.6
#r "nuget: Aardworx.Rendering.WebGL, 1.2.6"
#:package Aardworx.Rendering.WebGL@1.2.6
#addin nuget:?package=Aardworx.Rendering.WebGL&version=1.2.6
#tool nuget:?package=Aardworx.Rendering.WebGL&version=1.2.6
WebAssembly libraries for Aardvark
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
- Aardvark.Application (>= 5.6.4 && < 5.7.0)
- Aardvark.Base (>= 5.3.21 && < 5.4.0)
- Aardvark.Base.FSharp (>= 5.3.21 && < 5.4.0)
- Aardvark.Rendering (>= 5.6.4 && < 5.7.0)
- Aardvark.SceneGraph (>= 5.6.4 && < 5.7.0)
- Aardworx.WebAssembly (= 1.2.6)
- FSharp.Core (>= 8.0.300)
- FSharp.Data.Adaptive (>= 1.2.26 && < 1.3.0)
- Microsoft.AspNetCore.Components.WebAssembly (>= 8.0.26 && < 8.1.0)
- Microsoft.AspNetCore.Components.WebAssembly.DevServer (>= 8.0.26 && < 8.1.0)
- Silk.NET.OpenGLES (>= 2.15.0 && < 2.16.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Aardworx.Rendering.WebGL:
| Package | Downloads |
|---|---|
|
Aardworx.WebAssembly.Dom
WebAssembly libraries for Aardvark |
|
|
Aardworx.WebAssembly.WebXR
WebAssembly libraries for Aardvark |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.8 | 173 | 5/20/2026 |
| 1.2.7 | 200 | 5/18/2026 |
| 1.2.6 | 206 | 4/28/2026 |
| 1.2.5 | 186 | 4/26/2026 |
| 1.2.4 | 185 | 4/26/2026 |
| 1.2.3 | 192 | 4/26/2026 |
| 1.2.2 | 186 | 4/26/2026 |
| 1.2.1 | 181 | 4/25/2026 |
| 1.2.0 | 185 | 4/25/2026 |
| 1.1.14 | 402 | 11/6/2025 |
| 1.1.13 | 328 | 10/22/2025 |
| 1.1.12 | 348 | 10/16/2025 |
| 1.1.11 | 351 | 2/22/2025 |
| 1.1.10 | 337 | 10/21/2024 |
| 1.1.9 | 365 | 10/19/2024 |
| 1.1.8 | 359 | 10/1/2024 |
| 1.1.7 | 360 | 5/13/2024 |
| 1.1.6 | 335 | 9/27/2023 |
| 1.1.5 | 375 | 9/27/2023 |
| 1.1.4 | 302 | 9/25/2023 |
picked up Aardvark.Dom 1.1.7 (MSAA picking, per-object snap radius, plain-float pick encoding). Validated end-to-end on WebGL — desktop GL and iOS Safari both pick correctly with `Samples 4`.
`IRuntime.ReadPixels` PBO path was sizing the scratch PBO via `img.Array.Length` (element count) instead of bytes — broke for any non-byte format. Aardvark.Dom's pick reads `Rgba32f` 33×33 = 17,424 bytes; old code allocated a 4,356-byte PBO and `glReadPixels` errored with `INVALID_OPERATION: readPixels: buffer is not large enough for dimensions`. Fixed to `System.Buffer.ByteLength(img.Array)`.
`IRuntime.Clear` color-attachment dispatch was 2-way (float / signed-int — both routed through `glClearBufferfv` / `glClearBufferiv`). WebGL is strict about clear-value vs attachment signedness, so any clear of an unsigned-integer color attachment threw `GL_INVALID_OPERATION: glClearBufferiv: No defined conversion between clear value and attachment format`. Made it a 3-way `Choice` (float / signed-int / unsigned-int) selecting the matching `glClearBufferfv` / `glClearBufferiv` / `glClearBufferuiv` call based on `TextureFormat.isIntegerFormat` + `TextureFormat.isSigned`.
added `R/Rg/Rgb/Rgba 32ui` to `Pixelbuffer.toPixelFormatAndType` (mapping `RedInteger`…`RgbaInteger` + `UnsignedInt`) and `R/Rg/Rgb/Rgba 32i` + `32ui` rows to `TextureFormatVisitor` so `PixImage<int32>` / `PixImage<uint32>` can be allocated for downloads of those formats.
corrected unsigned-integer attachment shader-output type-mapping in `Shader.fs`: `Rgba32ui`/`Rgba16ui`/`Rgba8ui`/`Rgb32ui`/`Rgb16ui`/`Rgb8ui` now map to `typeof<V4ui>`/`typeof<V3ui>` (was `typeof<V4i>` / `typeof<V3i>`), so FShade emits `out uvec4` matching the actual buffer format. WebGL rejects `out ivec4 → unsigned-integer attachment` mismatches.
updated `Examples/Dom`: replaced the orbit playground with a three-teapot pixel-snap demo (Red/Green/Blue at radii 0/8/16). Tap a teapot to plant a yellow arrow along the surface normal. Blue uses mode B (`PickViewPosition`) to exercise the FinalB pick path on WebGL. Bound the dev server to `0.0.0.0` so the demo is reachable from a phone over Tailscale/LAN.