A 3D platformer and first/third-person shooter developed in Unity and C#. The player navigates obstacle courses and various types of terrain, engages multiple enemy archetypes, and must reach the exit portal to progress.
- Enemy Finite State Machine (FSM) & Targeting:
- Rule-based state controller managing
Idle,Shooting, andLostSighttransitions. - Multi-point raycast checks for target detection and occlusion testing.
- Position memory caching (
lastKnownLocation) to drive search routines upon broken sightlines. - Local-to-world coordinate transformations (
InverseTransformPoint/TransformPoint) to constrain pitch and yaw for weapon tracking.
- Rule-based state controller managing
- Custom Player Kinematics & Physics:
- Multi-point raycast sampling matrix around character bounds for ground detection.
- Moving platform velocity vector inheritance evaluated in
FixedUpdateto eliminate frame latency and physics desync. - Dynamic surface friction and acceleration scaling simulating momentum and low-drag icy terrain.
- Raycast-Driven Aiming & Dual Perspective:
- Dynamic switching between First-Person and Third-Person camera views.
- Viewport-to-world raycasting aligning projectile spawn vectors directly with screen-space crosshair placement.
- Hazard Volumes & State Progression:
- Heart-based health tracking synced with damage triggers from spikes, enemies, lava.
- Level transitions through a portal at the end of each level.
- Engine: Unity
- Language: C#
- Physics & Audio: Unity Physics Engine, Rigidbodies, Raycasting, Particle Systems
- Platform: macOS Standalone (distributed via itch.io)
Assets/Scripts: C# scripts managing player controller, weapon shooting, enemy health/AI, and hazard logic.Assets/Scenes: Level layouts, hazard geometry, and portal spawn locations.ProjectSettings/: Physics collision matrix, input mappings, and tag/layer configurations.
- Clone the repository:
git clone https://github.com/corpcooga/blockson.git