Updated status for StateManagement and Camera libraries to complete, removed Physics library section

This commit is contained in:
William Stuckey
2025-12-30 12:33:58 -06:00
parent 0ee242218c
commit 13ea042ebf

View File

@@ -138,7 +138,7 @@ public class PooledEvent<T> where T : class, new()
#### 1.3 - EinSoftworks.StateManagement #### 1.3 - EinSoftworks.StateManagement
| | | | | | | |
|--------------|----|---------------------------------------------| |--------------|----|---------------------------------------------|
| Status | 🔴 | Incomplete | | Status | 🟢 | Complete |
| Priority | 🔴 | Critical | | Priority | 🔴 | Critical |
| Dependencies | ⚫ | EinSoftworks.Utilities, EinSoftworks.Events | | Dependencies | ⚫ | EinSoftworks.Utilities, EinSoftworks.Events |
@@ -202,7 +202,7 @@ These libraries provide essential 3D game functionality and build upon the found
#### 2.1 - EinSoftworks.Camera #### 2.1 - EinSoftworks.Camera
| | | | | | | |
|--------------|----|-----------------------------------------------------------------------| |--------------|----|-----------------------------------------------------------------------|
| Status | 🔴 | Incomplete | | Status | 🟢 | Complete |
| Priority | 🟡 | High | | Priority | 🟡 | High |
| Dependencies | ⚫ | EinSoftworks.Input, EinSoftworks.Events, EinSoftworks.StateManagement | | Dependencies | ⚫ | EinSoftworks.Input, EinSoftworks.Events, EinSoftworks.StateManagement |
@@ -268,62 +268,6 @@ public class OrbitCamera : CameraController
- Third-person camera that follows a moving object - Third-person camera that follows a moving object
- Orbit camera for examining 3D models - Orbit camera for examining 3D models
#### 2.2 - EinSoftworks.Physics
| | | |
|--------------|----|---------------------------------------------|
| Status | 🔴 | Incomplete |
| Priority | 🟡 | High |
| Dependencies | ⚫ | EinSoftworks.Utilities, EinSoftworks.Events |
**Why Build Fifth:**
- Nearly all 3D games need physics utilities
- Independent of complex game systems
- Provides foundation for character controllers and interaction systems
- Can be validated independently
**Core Features:**
```csharp
// Raycast utilities
public static class PhysicsUtils
{
public static bool Raycast(Vector3 origin, Vector3 direction, float maxDistance,
uint collisionMask = uint.MaxValue);
public static RaycastHit RaycastWithInfo(Vector3 origin, Vector3 direction, float maxDistance);
public static RaycastHit[] RaycastAll(Vector3 origin, Vector3 direction, float maxDistance);
// Shape casting
public static bool SphereCast(Vector3 origin, float radius, Vector3 direction, float maxDistance);
public static bool BoxCast(Vector3 origin, Vector3 size, Vector3 direction, float maxDistance);
// Overlap detection
public static Node3D[] OverlapSphere(Vector3 center, float radius, uint collisionMask);
public static Node3D[] OverlapBox(Vector3 center, Vector3 size, uint collisionMask);
}
// Physics materials management
public class PhysicsMaterialManager : Node
{
public void RegisterMaterial(string name, PhysicsMaterial material);
public PhysicsMaterial GetMaterial(string name);
public void ApplyMaterial(RigidBody3D body, string materialName);
}
// Trigger volume system
public partial class TriggerVolume : Area3D
{
[Signal] public delegate void BodyEnteredEventHandler(Node3D body);
[Signal] public delegate void BodyExitedEventHandler(Node3D body);
public bool IsBodyInside(Node3D body);
public Node3D[] GetBodiesInside();
}
```
**Validation Game Ideas:**
- Character that detects ground beneath them
- Interaction system using raycasts
- Trigger volumes that activate when player enters
### Phase 3: Character and Interaction Systems (Medium Priority) ### Phase 3: Character and Interaction Systems (Medium Priority)
These systems focus on character control and world interaction, building upon the previously established libraries. These systems focus on character control and world interaction, building upon the previously established libraries.