![]() |
VOOZH | about |
dotnet add package UnityMathematics.NoDeps --version 1.3.2
NuGet\Install-Package UnityMathematics.NoDeps -Version 1.3.2
<PackageReference Include="UnityMathematics.NoDeps" Version="1.3.2" />
<PackageVersion Include="UnityMathematics.NoDeps" Version="1.3.2" />Directory.Packages.props
<PackageReference Include="UnityMathematics.NoDeps" />Project file
paket add UnityMathematics.NoDeps --version 1.3.2
#r "nuget: UnityMathematics.NoDeps, 1.3.2"
#:package UnityMathematics.NoDeps@1.3.2
#addin nuget:?package=UnityMathematics.NoDeps&version=1.3.2Install as a Cake Addin
#tool nuget:?package=UnityMathematics.NoDeps&version=1.3.2Install as a Cake Tool
This repo consists of build scripts and .NET projects that work on the official Unity.Mathematics repo, or rather its unofficial mirror, to create NuGet packages that are deployed to the GitHub NuGet repository.
The intention is to make Unity.Mathematics usable by regular .NET classlibs (and thus NuGet packages) that could also be distributed as Unity packages containing precompiled assemblies.
<ItemGroup>
<PackageReference Include="UnityMathematics.NoDeps" Version="1.3.2" PrivateAssets="All"/>
</ItemGroup>
dotnet add package UnityMathematics.NoDeps --version 1.3.2
<ItemGroup>
<PackageReference Include="UnityMathematics" Version="1.3.2" PrivateAssets="All"/>
</ItemGroup>
dotnet add package UnityMathematics --version 1.3.2
This project and NuGet package is the verbatim Unity.Mathematics package which has a dependency on the UnityEngine.dll.
As such, projects referencing this package might (untested atm) also require to provide a PathHint to the aforementioned assembly. (See below for more information about this process).
This project and NuGet package is the verbatim Unity.Mathematics.Editor package which has a dependency on both the UnityEngine.dll and the UnityEditor.dll.
As such, it is not recommended to reference this package by other classlibs.
In case classlibs still want to reference this package, they will also require to provide PathHints to the aforementioned assemblies. (See below for more information about this process).
This project and NuGet package is a slightly modified Unity.Mathematics package that does not have any dependency on UnityEngine.dll.
As such, it is the preferred dependency for regular .NET classlib and program projects.
In detail: there are 2 files causing the dependency on UnityEngine:
math_unity_conversion.cs implementing straight cast operators between UnityEngine types and Unity.Mathematics ones,PropertyAttributes.cs defining 2 attributes inheriting from UnityEngine.PropertyAttribute
(Note that those attributes are not further reference in Unity.Mathematics itself, but by Unity.Mathematics.Editor).Those 2 files are excluded from compilation through specific project settings.
Unity.Mathematics.Tests does not have an equivalent project as it is not required for regular compilation.
<ItemGroup Label="Unity">
<Reference Include="UnityEngine">
<HintPath>$(UNITY_ASSEMBLY_PATH)\UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEditor">
<HintPath>$(UNITY_ASSEMBLY_PATH)\UnityEditor.dll</HintPath>
</Reference>
</ItemGroup>
with the environment variable UNITY_ASSEMBLY_PATH pointing to the directory containing the Unity Editor executable.
C:\Program Files\Unity\Hub\Editor\2022.3.47f1\Editor\Data\Managed./Applications/Unity/Hub/Editor/2022.3.47f1/Unity.app/Contents/Managed.$UNITY_INSTALL_PATH/Hub/Editor/2022.3.47f1/Editor/Data/Managed.In case you are using NuGettier or similar tools to create Unity packages from your NuGet packages, please make sure to adequately configure them to neither recurse nor include the assemblies of Unity.Mathematics itself, but rather mark it as dependency.
For NuGettier, you need to add this to its global .netconfig:
[package "unitymathematics.*"] # '.*' is to take in the regex sense, and lowercase is b/c case insensitivity
name = "com.unity.mathematics"
version = "^(?<major>0|[1-9]\\d*)\\.(?<minor>0|[1-9]\\d*)\\.(?<patch>0|[1-9]\\d*)" #only keep major.minor.patch, drop the rest
ignore = false #do not ignore, as in include-in-dependencies
exclude = true #exclude, as in do-not-include into amalgamte packages
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 was computed. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 netstandard2.1 is compatible. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
Showing the top 5 NuGet packages that depend on UnityMathematics.NoDeps:
| Package | Downloads |
|---|---|
|
UnityMathematics.Text.Json
System.Text.Json serializers for Unity.Mathematics types |
|
|
UnityMathematics.Schemas
FlatBuffer schemas for Unity.Mathematics types |
|
|
UnityMathematics.Text.Json.ObjectNotation
System.Text.Json serializers for Unity.Mathematics types, serializing data as objects |
|
|
UnityMathematics.Text.Json.ArrayNotation
System.Text.Json serializers for Unity.Mathematics types, serializing data as arrays |
|
|
UnityMathematics.Tables.Schemas
FlatBuffer schemas for serializable tables wrapping Unity.Mathematics types |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.3.2 | 7,958 | 1/1/2025 |
CHANGELOG.md