Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added ArchECS integration #19

Merged
merged 4 commits into from
Jan 8, 2025
Merged

Added ArchECS integration #19

merged 4 commits into from
Jan 8, 2025

Conversation

lukasgolson
Copy link
Owner

This pull request includes several changes to the VoxelSharp project, focusing on renaming the World class to VoxelWorld, integrating an ECS (Entity Component System) framework, and updating project dependencies. The most important changes are listed below:

Class Renaming:

  • Renamed World class to VoxelWorld across multiple files to better reflect its purpose. [1] [2] [3] [4] [5] [6]

ECS Integration:

  • Added a new Ecs class in VoxelSharp.Core/ECS/ECS.cs to manage the ECS framework, including job scheduling and world management.
  • Integrated ECS into the main program flow in VoxelSharp.Client/Program.cs, adding the ECS world to the dependency injection container and disposing of the ECS instance on program exit. [1] [2]

Dependency Updates:

  • Updated VoxelSharp.Core.csproj and VoxelSharp.Renderer.csproj to target net8.0-windows and added new package references for ECS and logging. [1] [2]

These changes improve the project's structure and prepare it for future enhancements involving ECS and more accurate world representation.

Copy link

github-actions bot commented Jan 8, 2025

Qodana for .NET

96 new problems were found

Inspection name Severity Problems
Dereference of a possibly null reference. 🔶 Warning 3
Method return value is never used (private accessibility) 🔶 Warning 3
Redundant using directive 🔶 Warning 2
Auto-property accessor is never used (non-private accessibility) 🔶 Warning 2
Invalid XML documentation comment 🔶 Warning 1
Redundant argument with default value 🔶 Warning 1
Type member is never used (non-private accessibility) ◽️ Notice 29
Member can be made private (non-private accessibility) ◽️ Notice 16
Type member is never accessed via base type (non-private accessibility) ◽️ Notice 10
Invert 'if' statement to reduce nesting ◽️ Notice 6
Method return value is never used (non-private accessibility) ◽️ Notice 4
Unused parameter (non-private accessibility) ◽️ Notice 4
RoslynAnalyzers Mark members as static ◽️ Notice 3
Convert constructor into primary constructor ◽️ Notice 2
Member can be made static (shared) (private accessibility) ◽️ Notice 2
Virtual (overridable) member is never overridden (non-private accessibility) ◽️ Notice 2
Use preferred style for trailing comma before new line in multiline lists ◽️ Notice 1
Convert local variable or field into constant (non-private accessibility) ◽️ Notice 1
Member can be made static (shared) (non-private accessibility) ◽️ Notice 1
Member can be made protected (non-private accessibility) ◽️ Notice 1
Redundant empty argument list on object creation expression ◽️ Notice 1
Type is never used (non-private accessibility) ◽️ Notice 1

☁️ View the detailed Qodana report

Detected 134 dependencies

Third-party software list

This page lists the third-party software dependencies used in VoxelSharp

Dependency Version Licenses
Arch.AOT.SourceGenerator 1.0.1 Apache-2.0
Arch.LowLevel 1.1.0 Apache-2.0
Arch.System.SourceGenerator 1.2.1 Apache-2.0
Arch.System 1.0.5 Apache-2.0
Collections.Pooled 2.0.0-preview.27 MIT
CommunityToolkit.HighPerformance 7.1.2 MIT
HarmonyX 2.13.0 MIT
Microsoft.Bcl.AsyncInterfaces 5.0.0 MIT
Microsoft.CodeAnalysis.Analyzers 3.3.3 MIT
Microsoft.CodeAnalysis.CSharp.Workspaces 4.1.0 MIT
Microsoft.CodeAnalysis.CSharp 4.1.0 MIT
Microsoft.CodeAnalysis.Common 4.1.0 MIT
Microsoft.CodeAnalysis.Workspaces.Common 4.1.0 MIT
Microsoft.Extensions.DependencyInjection.Abstractions 9.0.0 MIT
Microsoft.Extensions.DependencyInjection 9.0.0 MIT
Microsoft.Extensions.Logging.Abstractions 9.0.0 MIT
Microsoft.Extensions.Logging 9.0.0 MIT
Microsoft.Extensions.ObjectPool 7.0.0 MIT
Microsoft.Extensions.Options 9.0.0 MIT
Microsoft.Extensions.Primitives 9.0.0 MIT
Microsoft.NETCore.Platforms 1.0.1 MIT
Microsoft.NETCore.Platforms 2.1.2 MIT
Microsoft.NETCore.Targets 1.0.1 MIT
Microsoft.NETCore.Targets 1.1.0 MIT
Microsoft.Win32.Primitives 4.3.0 MIT
Mono.Cecil 0.11.5 MIT
MonoMod.Backports 1.1.2 MIT
MonoMod.Core 1.1.2 MIT
MonoMod.ILHelpers 1.1.0 MIT
MonoMod.RuntimeDetour 25.1.2 MIT
MonoMod.Utils 25.0.6 MIT
NETStandard.Library 1.6.1 MIT
OpenTK.Audio.OpenAL 4.9.3 MIT
OpenTK.Compute 4.9.3 MIT
OpenTK.Core 4.9.3 MIT
OpenTK.Graphics 4.9.3 MIT
OpenTK.Input 4.9.3 MIT
OpenTK.Mathematics 4.9.3 MIT
OpenTK.Windowing.Common 4.9.3 MIT
OpenTK.Windowing.Desktop 4.9.3 MIT
OpenTK.Windowing.GraphicsLibraryFramework 4.9.3 MIT
OpenTK.redist.glfw 3.3.8.39 Zlib
OpenTK 4.9.3 MIT
Serilog.Extensions.Logging 9.0.0 Apache-2.0
Serilog.Sinks.Console 6.0.0 Apache-2.0
Serilog.Sinks.File 6.0.0 Apache-2.0
Serilog 4.2.0 Apache-2.0
SimpleInjector 5.5.0 MIT
System.AppContext 4.3.0 MIT
System.Buffers 4.3.0 MIT
System.Collections.Concurrent 4.3.0 MIT
System.Collections.Immutable 5.0.0 MIT
System.Collections 4.3.0 MIT
System.ComponentModel 4.0.1 MIT
System.Composition.AttributedModel 1.0.31 MIT
System.Composition.Convention 1.0.31 MIT
System.Composition.Hosting 1.0.31 MIT
System.Composition.Runtime 1.0.31 MIT
System.Composition.TypedParts 1.0.31 MIT
System.Composition 1.0.31 MIT
System.Console 4.3.0 MIT
System.Diagnostics.Debug 4.3.0 MIT
System.Diagnostics.DiagnosticSource 9.0.0 MIT
System.Diagnostics.Tools 4.3.0 MIT
System.Diagnostics.Tracing 4.3.0 MIT
System.Globalization.Calendars 4.3.0 MIT
System.Globalization.Extensions 4.3.0 MIT
System.Globalization 4.3.0 MIT
System.IO.Compression.ZipFile 4.3.0 MIT
System.IO.Compression 4.3.0 MIT
System.IO.FileSystem.Primitives 4.3.0 MIT
System.IO.FileSystem 4.3.0 MIT
System.IO.Pipelines 5.0.1 MIT
System.IO 4.3.0 MIT
System.Linq.Expressions 4.3.0 MIT
System.Linq 4.3.0 MIT
System.Memory 4.5.4 MIT
System.Net.Http 4.3.0 MIT
System.Net.Primitives 4.3.0 MIT
System.Net.Sockets 4.3.0 MIT
System.ObjectModel 4.3.0 MIT
System.Reflection.Emit.ILGeneration 4.3.0 MIT
System.Reflection.Emit.Lightweight 4.3.0 MIT
System.Reflection.Emit 4.3.0 MIT
System.Reflection.Emit 4.7.0 MIT
System.Reflection.Extensions 4.3.0 MIT
System.Reflection.Metadata 5.0.0 MIT
System.Reflection.Primitives 4.3.0 MIT
System.Reflection.TypeExtensions 4.3.0 MIT
System.Reflection 4.3.0 MIT
System.Resources.ResourceManager 4.3.0 MIT
System.Runtime.CompilerServices.Unsafe 6.0.0 MIT
System.Runtime.Extensions 4.3.0 MIT
System.Runtime.Handles 4.3.0 MIT
System.Runtime.InteropServices.RuntimeInformation 4.3.0 MIT
System.Runtime.InteropServices 4.3.0 MIT
System.Runtime.Numerics 4.3.0 MIT
System.Runtime 4.1.0 MIT
System.Runtime 4.3.0 MIT
System.Security.Cryptography.Algorithms 4.3.0 MIT
System.Security.Cryptography.Cng 4.3.0 MIT
System.Security.Cryptography.Csp 4.3.0 MIT
System.Security.Cryptography.Encoding 4.3.0 MIT
System.Security.Cryptography.OpenSsl 4.3.0 MIT
System.Security.Cryptography.Primitives 4.3.0 MIT
System.Security.Cryptography.X509Certificates 4.3.0 MIT
System.Text.Encoding.CodePages 4.5.1 MIT
System.Text.Encoding.Extensions 4.3.0 MIT
System.Text.Encoding 4.3.0 MIT
System.Text.Json 5.0.2 MIT
System.Text.RegularExpressions 4.3.0 MIT
System.Threading.Tasks.Extensions 4.5.4 MIT
System.Threading.Tasks 4.3.0 MIT
System.Threading.Timer 4.3.0 MIT
System.Threading 4.3.0 MIT
System.Xml.ReaderWriter 4.3.0 MIT
System.Xml.XDocument 4.3.0 MIT
ZeroAllocJobScheduler 1.1.2 Apache-2.0
runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.native.System.IO.Compression 4.3.0 MIT
runtime.native.System.Net.Http 4.3.0 MIT
runtime.native.System.Security.Cryptography.Apple 4.3.0 MIT
runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.native.System 4.3.0 MIT
runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple 4.3.0 MIT
runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl 4.3.0 MIT
Contact Qodana team

Contact us at [email protected]

@lukasgolson lukasgolson merged commit c9c62a3 into master Jan 8, 2025
5 checks passed
@lukasgolson lukasgolson deleted the ECS branch January 8, 2025 06:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant