BulletFury: Unity Bullet Spawner
A downloadable tool
This version is prerelease only. For the most up-to-date version, please use the Unity Asset Store. Or, use the free demo for Bullet Hell Jam
This is a pre-release version, so if there are any issues please let me know and I'll fix as soon as I can. Commenting here is the best place to do so.
- Create a new project with the Univeral Render Pipeline template. This system only supports URP. It has only been tested with Unity 2020.2 and 2020.3, so use that or above. Obviously if you've already got a project with URP set up, you can skip this step.
- Go to Window -> Package Manager -> Settings -> Advanced Project Settings, and enable preview packages.
- Go back to the package manager, and change Packages: In Project to Packages: Unity Registry
- Install Burst Version 1.4.7 or above
- Install Jobs Version 0.8.0-preview.23 or above
- Ensure Universal RP is installed
- Import the package
- Go to Project Settings -> Graphics and click the Scriptable Render Pipeline Settings object at the top to find it in the project view. Select the Forward Renderer Data asset
- Make sure the Bullet Fury Render Feature is in the list - if it is not, click "Add Renderer Feature" and add it.
- Done! You can now add a bullet manager and a weapon to your scene. Note - the bullet manager isn't going to spawn bullets by itself, you'll need to make your own weapon class. This is intentional, and a small example can be seen in Demo/Scripts/TestWeapon.cs
The whole Demo folder is safe to delete, as long as you have implemented your own weapon class!
Collisions are done with the BulletCollider component - it does not work with Unity's physics system. Again, this is intentional - the collision detection is extremely simplified and done with jobs, for performance reasons.
You have to tell Bullet Colliders which bullet managers they should interact with - this is for performance reasons. You can add and remove bullet managers with code.
Click download now to get access to the following files: