Devlog - Enemy AI & Models
Enemy AI and Models
By Edgar
Enemy AI
Since the last time we talked about enemies, we had a basic flocking implementation that would follow the player around. But we quickly realized that the way we implemented it wasn’t expandable because:
- The code was written before the choice to use ECS, so it was written in regular Unity. It was difficult to adapt this code to ECS because it was implemented with a central enemy controller that stored all the enemies. This was a concern for efficiency and much less feasible in ECS.
- The current didn’t handle the rotation of the enemies. It wasn’t necessary in the demo because we were just using spheres instead of real enemy models, but it would be required in the final product.
- Something nice to have that we were trying to keep consistent was the interaction with physics. We didn’t just want to set the enemy’s position, we wanted to move it with the ECS physics system so we would be able to implement external forces in the future such as explosion knockback or black holes.
To remedy this, we took inspiration from the PID Controller. Keeping with the desire for a realistic physics system, we gave each enemy its own thrusters to manage with the PID controller. These thrusters are responsible for moving the enemy towards a desired point and smoothly rotating the enemy towards it. The PID controller checks the difference between the desired speed and calculates the necessary impulse to give in order to reach it. The points of interest are determined by different movement patterns the enemy can choose from, which are determined by priority of factors like proximity to player, other enemies, etc.
Models
We made some progress on the basic enemy model, which we decided would be like stingrays. The player model was finished and textured as well.
Rays
Player

By Kayli & Giuliana
Future Plans
- Collisions for 3D and 2D/1D
- Dimension transition
- VFX for shooting
- Main music theme
- Weapon & weapon upgrade implementation
- Shop
Get Dimensional Drift
Dimensional Drift
Status | Released |
Authors | crELu, igobykuro, hellerni, fmwofmwmf, reriss, caspian9, kayliphobia, stormshadow3155 |
Genre | Shooter, Action |
Tags | 2D, 3D, Arcade, Bullet Hell |
More posts
- Devlog - Player Overhaul & Tutorial16 days ago
- Devlog - Updated Environment & More Enemies16 days ago
- Devlog - Rocket, Sounds & Shop16 days ago
- Devlog - Currency, New Enemies & Weapons16 days ago
- Devlog - Dimension Transition & Collisions17 days ago
- Devlog - Weapon Planning17 days ago
- Devlog - Shooting, Dimension Switching & Experiments17 days ago
- Devlog - Conception & Prototyping17 days ago
Leave a comment
Log in with itch.io to leave a comment.