2026-07-10 03:34:49 +01:00
|
|
|
# CultLib for Unity
|
|
|
|
|
|
|
|
|
|
This package is generated from the CultLib .NET projects. It carries the same
|
|
|
|
|
CultCache, CultNet, and CultMesh assemblies consumed through NuGet by normal
|
2026-07-19 22:55:06 +01:00
|
|
|
.NET applications, staged as Unity-compatible managed plugins. Windows x64
|
Correct stale Schannel/40,448-byte claims, ship OpenSSL's license notice
Soul flagged (F3) two docs still describing the pre-release native QUIC
bridge: unity/org.gamecult.cultlib/README.md said Schannel, and
native/GameCult.Mesh.Quic.Native/README.md still described the older
40,448-byte committed plugin as current. The shipped bridge (since the
1.0.60/1.4.0 release, commit 0155ba8) is the OpenSSL MsQuic 2.5.9 build,
302,080 bytes, static CRT, no CRT import. Both docs now describe that build
and name what it replaced.
The OpenSSL build's NuGet package carries an Apache-2.0 notice for OpenSSL
itself (Microsoft.Native.Quic.MsQuic.OpenSSL's THIRD-PARTY-NOTICES) that the
committed Third Party Notices folder never carried - the Schannel build had
no such dependency to notice. build-quic-native.ps1 now copies it out
alongside MSQUIC-LICENSE.txt, build-unity-package.ps1 stages it into the
package output and the tracked template, and it is now committed as
OPENSSL-NOTICE.txt.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 19:49:14 +02:00
|
|
|
builds also receive the native MsQuic realtime connector, built against
|
|
|
|
|
OpenSSL (`Microsoft.Native.Quic.MsQuic.OpenSSL` 2.5.9, not Schannel — Schannel's
|
|
|
|
|
MsQuic refuses the PKCS12 credential type both platforms share); the Microsoft
|
|
|
|
|
and OpenSSL license notices are included under `Third Party Notices`.
|
2026-07-10 03:34:49 +01:00
|
|
|
|
|
|
|
|
Build it with `scripts/build-unity-package.ps1`. Do not edit generated plugin
|
|
|
|
|
assemblies in the package output.
|
2026-07-13 18:50:30 +01:00
|
|
|
|
2026-10-22 15:44:39 +02:00
|
|
|
Install version `2.0.0` through Unity Package Manager with:
|
2026-07-13 18:50:30 +01:00
|
|
|
|
|
|
|
|
```text
|
2026-10-22 15:44:39 +02:00
|
|
|
https://github.com/GameCult/CultLib.git?path=/unity/org.gamecult.cultlib#cultlib-unity-v2.0.0
|
2026-07-13 18:50:30 +01:00
|
|
|
```
|
2026-07-19 22:55:06 +01:00
|
|
|
|
2026-10-22 15:44:39 +02:00
|
|
|
The package depends on `org.gamecult.cultmath` (exactly 0.5.0) and does not
|
2026-09-29 16:52:44 +02:00
|
|
|
carry its own `CultMath.dll`. Unity Package Manager resolves git packages only
|
|
|
|
|
from the project manifest, so add CultMath beside CultLib in
|
|
|
|
|
`Packages/manifest.json`:
|
|
|
|
|
|
|
|
|
|
```text
|
2026-10-22 15:44:39 +02:00
|
|
|
"org.gamecult.cultmath": "https://github.com/GameCult/CultLib.git?path=/packages/cultmath/unity/org.gamecult.cultmath#cultmath-unity-v0.5.0"
|
2026-09-29 16:52:44 +02:00
|
|
|
```
|
|
|
|
|
|
2026-07-19 22:55:06 +01:00
|
|
|
CultMesh chooses mapped memory for reachable same-machine bodies and advertised
|
|
|
|
|
QUIC for remote realtime state. Applications register the packaged
|
|
|
|
|
`CultMeshNativeQuicRealtimeTransportConnector`; they do not load or configure
|
|
|
|
|
MsQuic directly. Schemas, commands, receipts, and immutable content remain on
|
|
|
|
|
their typed control/content planes.
|