fennecs 0.5.8-beta
This is a prerelease version of fennecs.
There is a newer prerelease version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package fennecs --version 0.5.8-beta
NuGet\Install-Package fennecs -Version 0.5.8-beta
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="fennecs" Version="0.5.8-beta" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add fennecs --version 0.5.8-beta
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: fennecs, 0.5.8-beta"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install fennecs as a Cake Addin #addin nuget:?package=fennecs&version=0.5.8-beta&prerelease // Install fennecs as a Cake Tool #tool nuget:?package=fennecs&version=0.5.8-beta&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
fennecs is a lightweight, performant, and expressive ECS library for game & simulations written in modern C#.
It's designed to be easy to use, with minimal boilerplate and no code generation or reflection required.
🚀 Quickstart
📦>
dotnet add package fennecs
Here's a simple example to get you started:
// Declare a component record. (we can also use most existing value & reference types)
record struct Velocity(Vector3 Value);
// Create a world. (fyi, World implements IDisposable)
var world = new fennecs.World();
// Spawn an entity into the world with a choice of components. (or add/remove them later)
var entity = world.Spawn().Add<Velocity>();
// Queries are cached & we use ultra-lightweight Stream Views to feed data to our code!
var stream = world.Query<Velocity>().Stream();
// Run code on all entities in the query. (exchange 'For' with 'Job' for parallel processing)
stream.For(
uniform: DeltaTime * 9.81f * Vector3.UnitZ,
static (Vector3 uniform, ref Velocity velocity) =>
{
velocity.Value -= uniform;
}
);
🌟 Key Features
- Modern C# codebase targeting .NET 8
- Archetype-based storage for cache-friendly iteration
- Expressive, queryable relations between entities and components
- Easy parallelization of workloads across and within archetypes
- Zero codegen and minimal boilerplate
📚 Learn More
Check out the fennecs website for:
- 📖 API documentation
- 🍳 Cookbook with tasty recipes
- 🎮 Demo projects to get inspired
Happy coding! 🦊❤️
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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on fennecs:
Repository | Stars |
---|---|
outfox/fennecs
... the tiny C# ECS that loves you back!
|
|
Doraku/Ecs.CSharp.Benchmark
Benchmarks of some C# ECS frameworks.
|
Version | Downloads | Last updated | |
---|---|---|---|
0.5.14-beta | 386 | 10/30/2024 | |
0.5.13-beta | 51 | 10/30/2024 | |
0.5.12-beta | 56 | 10/29/2024 | |
0.5.11-beta | 157 | 9/25/2024 | |
0.5.10-beta | 1,101 | 7/21/2024 | |
0.5.9-beta | 120 | 7/20/2024 | |
0.5.8-beta | 401 | 7/4/2024 | |
0.5.7-beta | 224 | 6/15/2024 | |
0.5.6-beta | 65 | 6/15/2024 | |
0.5.5-beta | 234 | 6/12/2024 | |
0.5.4-beta | 271 | 6/11/2024 | |
0.5.3-beta | 59 | 6/11/2024 | |
0.5.2-beta | 72 | 6/11/2024 | |
0.5.1-beta | 406 | 6/7/2024 | |
0.5.0-beta | 176 | 6/5/2024 | |
0.4.6-beta | 406 | 5/30/2024 | |
0.4.5-beta | 85 | 5/29/2024 | |
0.4.2-beta | 1,080 | 5/23/2024 | |
0.4.1-beta | 90 | 5/23/2024 | |
0.4.0-beta | 92 | 5/22/2024 | |
0.3.5-beta | 106 | 5/12/2024 | |
0.3.0-beta | 79 | 5/9/2024 | |
0.2.0-beta | 117 | 3/9/2024 | |
0.1.1-beta | 364 | 3/4/2024 | |
0.1.0-beta | 97 | 3/1/2024 | |
0.0.7-pre | 84 | 2/25/2024 | |
0.0.6-pre | 78 | 2/25/2024 | |
0.0.5-pre | 80 | 2/23/2024 | |
0.0.4-pre | 82 | 2/21/2024 | |
0.0.3-pre | 85 | 2/9/2024 | |
0.0.2-pre | 78 | 2/9/2024 | |
0.0.1-pre | 94 | 2/6/2024 |