CompDevLib 0.0.1.2
dotnet add package CompDevLib --version 0.0.1.2
NuGet\Install-Package CompDevLib -Version 0.0.1.2
<PackageReference Include="CompDevLib" Version="0.0.1.2" />
paket add CompDevLib --version 0.0.1.2
#r "nuget: CompDevLib, 0.0.1.2"
// Install CompDevLib as a Cake Addin
#addin nuget:?package=CompDevLib&version=0.0.1.2
// Install CompDevLib as a Cake Tool
#tool nuget:?package=CompDevLib&version=0.0.1.2
CompDevLib
Introduction
This is an all-in-one c# code library with a bunch of utility functions, data structures, algorithms, etc. that are commonly used in game development.
It is created in hope that myself and possibly others can start with a fairly rich utility library to work with for future projects, without having to implement the same stuff again and again every time it is needed.
Modules
Collection
- SpanList
- Fixed length BoolArray (struct)
- Binary heap
- Graph
- Collection extensions for sorting, shuffling, searching, and some replacements for LinQ functions.
Math Utilities
- Vector and matrix manipulation (TO BE IMPLEMENTED)
- Interpolations
- Bitwise operations
Algorithm
Algorithms that are commonly used in video games.
- Binary space partitioning algorithm
- AStar algorithm (TO BE IMPLEMENTED)
- Dijkstra algorithm
- Alpha-Beta Pruning (TO BE IMPLEMENTED)
Event System
An event triggering and handling system.
- synchronous and asynchronous event actions
- Event chains with priority (can be used as a base for blueprint-like game flow controlling system)
State Machine
- A generic state machine that is powered by the event system
- A lightweight implementation of behavior tree
Job System
A system for frame-based "concurrent" jobs' execution and other coroutine-like behaviors.
- Single threaded job management.
- Multi-threaded job management.
Code Processing
A simple lexer.
Pool
- Object pool
- Memory pool (TO BE IMPLEMENTED)
- Thread pool (TO BE IMPLEMENTED)
Console
Define and manage "console commands" with ease for in-game console development.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- System.Runtime.CompilerServices.Unsafe (>= 6.0.0)
-
net6.0
- System.Runtime.CompilerServices.Unsafe (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.