2 个版本
0.1.1 | 2023年11月16日 |
---|---|
0.1.0 | 2023年11月15日 |
#225 in 渲染
在 delight-helpers 中使用
22KB
186 行
delight
用于处理3Delight渲染器的库版本(lib3delight
)的实用函数。
编译-与-运行时
该crate默认构建,具有默认功能。
然而,在运行时,该crate需要一个实现相应C-API的库/渲染器来链接。目前唯一做到这一点的是3Delight。
Cargo功能
-
download_lib3delight
-- 从Linux、macOS或Windows获取3Delight的动态库版本。这可以用作后备方案,用于在没有在您的系统上安装渲染器的情况下构建。但这是一个较旧的3Delight版本,首先是CI功能。建议您为您的平台下载3Delight软件包并安装它。这将设置构建脚本正在寻找的
DELIGHT
环境变量,以查找要链接的本地安装的库。这还将安装3Delight Display,您可以将渲染到的内容逐渐显示出来,这对于调试很有用。
免费版本最多可以使用12个核心进行渲染。
-
link_lib3delight
-- 在构建期间静态链接到`lib3dlight`。除非设置了
download_lib3delight
,否则这需要3Delight安装。另请参阅下一节。
链接样式
3Delight动态库(lib3delight
)可以在构建期间链接,也可以在运行时加载。
-
默认情况下,
lib3deligh
在运行时加载。这有几个优点-
如果您分发您的应用程序或库,您可以将其分发给它,它仍然可以运行,并且如果库无法加载,将打印出有用的错误信息。
-
用户可以安装渲染器的更新版本,而且一切都会“正常工作”。
-
-
动态链接到
lib3delight
。-
该功能称为
link_lib3delight
。在这种情况下,您应禁用默认功能(它们不需要/使用)[dependencies] delight-sys = { version = "0.8", default-features = false, features = ["link_lib3delight"] }
-
lib3delight
成为依赖项。如果系统动态链接器在运行时找不到它,您的库/应用程序将无法加载/启动。
-
依赖关系
~0.1–2.2MB
~40K (估计值) SLoC(约额外代码行数)