Your device size is not supported

Autoplay has been disabled by your browser or extensions, it is recommended to enable autoplay for the site to display properly

Celeste Soueid

  • GitHub
  • Email
  • LinkedIn
  • Resume

Space Battle

Source code

Summary

  • Goal: Simulated space battle between two or more groups of ships.
  • Languages: C#, HLSL
  • Tech Stack: Unity Engine, UnityAsync
  • Notable Achievement: Hierarchical state machine AI framework.
  • Status: Superceded

Completed Features

  • Turret tracking based on azimuth and elevation limits [5]
  • Independent turret targeting based on scored priorities
  • PID assisted strafing & orbiting for ships
  • Waypoint movement and simple collision avoidance [2]
  • Data driven content creation
  • Aesthetically pleasing shield, damage, and explosion GFX [3][4]

Description

"Space Battle" while uninspired in name, is very usefully self-descriptive. It's a battle that occurs... in space. This project is intended as a portfolio development project, but one that I enjoy making immensely. The final build should feature (at least):

  • 2 distinct AI factions
  • Several distinct ship classes for each
  • Fleet AI tactics
Each ship is managed not only by an overarching fleet AI, but also by its own independent systems, including an AI for each turret, allowing for advanced, multi-faceted AI control. In an effort to keep this legibly short, technical details will be mostly omitted.

Challenges

Somewhat similarly to the line renderer, this project targets a subject that has in the past challenged me - vectors, in this case three dimensional. During this project I found that my understanding of how vectors within three dimensional space intrinsically interact has strengthened significantly. This project additionally challenged my visual effect skills, particularly regarding destruction of ships.

Future considerations

This is an ongoing project, though once complete I may expand the scope to include some player interaction, such as piloting of a ship, or commanding a fleet in a real time strategy format. Space and sci-fi are areas of serious passion for me, so I will almost definitely revisit this project. This project has been superceded by a planned game built on the Thera Engine due to technical limitations within Unity.

Media

Fig 1. 3D A* pathfinding with simple path smoothing.
Fig 3. Explosion VFX.
Fig 2. Ship waypoint based movement.
Fig 4. Shield collapse shader.
Fig 5. Turret tracking and firing.

Connection to blog server failed

Reconnecting in ?...