Skip to main content
.NETStandard2.0

Build-time wiring for the Aura3D.Avalonia browser (WebGL2) render path.

Published
Sep 24, 2026
27d ago
Total Downloads
57
57

Install

dotnet add package Aura3D.Avalonia.Browser --version 0.1.0
ProductVersions
.NET Standard
netstandard2.0

README

Aura3D.Avalonia.Browser

Aura3D 的浏览器渲染后端借 Avalonia.Browser 合成器的 WebGL2 上下文出图: 引擎按 OpenGL ES 3.0 发调用,经 emscripten 的 GLES shim 落到 WebGL2。这条链路要求应用自己的 wasm 模块带着那份 shim 一起链接,而链接开关只有应用工程说得上话,所以由本包在装包时注入。

用法

不需要单独装。Aura3D.Avalonia 的 browser 目标以精确区间依赖本包,包内 buildTransitive props 会穿透到应用工程生效,所以应用侧一行 wasm 配置都不用写:

dotnet add package Aura3D.Avalonia

注入的内容(仅对 $(TargetFramework) 含 -browser 的工程生效):

  • WasmBuildNative=true —— 原生库随应用 wasm 模块链接,GLES 入口点与 Avalonia 的 WebGL 渲染目标都取它;
  • -s FULL_ES3=1 —— 把 GLES2/GLES3 实现链进模块(默认只有 WebGL1 通道);
  • -s MIN_WEBGL_VERSION=2 -s MAX_WEBGL_VERSION=2 —— GLES3 的入口点(VAO、UBO、3D 纹理、blit) 只在 WebGL2 上下文上存在,上下文版本必须是 2。

应用本身仍按 .NET WASM 的常规方式跑:dotnet run --project <App>.Browser。

前置条件:wasm-tools workload

WasmBuildNative=true 只是必要条件——本机 SDK 还得装 wasm-tools(含 emscripten),否则原生链接不会发生: 构建 0 错误、dotnet.native.wasm 只有 3 MB 出头(链上后约 25 MB),应用启动即 System.DllNotFoundException: libSkiaSharp。这种情况由包内 buildTransitive targets 在构建期直接报 Error 并给出命令:

dotnet workload install wasm-tools

确实不需要本后端的工程(比如只在桌面上跑)可设 Aura3DSkipWasmWorkloadCheck=true 关掉这条检查。

版本策略

包里没有二进制,只有构建属性,但 Aura3D.Avalonia 仍以精确区间 [0.1.0] 依赖它:这些开关与 库的 GLES 调用面是配对的(比如 FULL_ES3 少了就整块不出图),升级要和库一起过一遍浏览器验证。

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.