Bullet Dynamics v1.0.0
All Classes Namespaces Functions Variables Properties
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123]
 CBulletDynamics.Core.Bullet
Class that holds all of the relevant data of the Bullet.
Bullet should be added to the BulletEnvironment using a method BulletEnvironment.AddBullet(Bullet) so that the physics can be calculated by the handler.
Easiest way to create a bullet is to use a Weapon and call the method Weapon.Shoot which will call BulletEnvironment.AddBullet(BulletData, Transform)
 CBulletDynamics.Damage.BulletDamageHandler.BulletDamageConnectionConnects Core.BulletData with the damage it will cause
 CBulletDynamics.Core.BulletHandlerHandler for the Bullet physics. It uses BulletJob for calculating the trajectories
 CBulletDynamics.Core.BulletHitInfoData that holds the information about the bullet's hit
 CBulletDynamics.Core.BulletUtilityUtility class that provides the methods that can be used to calculate the Bullet'ss trajectory
 CIComparer
 CBulletDynamics.Core.RaycastDistanceComparerComparer for sorting the raycasts by the distance
 CBulletDynamics.Damage.IDamageableByBulletInterface for the damageable objects
 CBulletDynamics.Example.BulletDynamicsExampleDamageableTargetExample component that will respond to the damage using IDamageableByBullet. It will display the combined damage on the UI
 CIJobParallelFor
 CBulletDynamics.Core.BulletJobJob that calculates and moves the bullet according to the current velocity, hit information and penetration ability
 CBulletDynamics.Core.SurfacePhysicMaterial.MaterialDataData that holds the information about the surface
 CMonoBehaviour
 CBulletDynamics.Core.AudioManagerAudio Manager that uses ObjectPool<T> for AudioSources
 CBulletDynamics.Core.BulletEnvironment
Environment for the Bullet Dynamics.
This component handles the bullet physics using FixedUpdate and contains the BulletEnvironmentData that affects the bullets in the scene
 CBulletDynamics.Core.BulletEnvironmentDebugVisualizerComponent that draws the debug visuals of the Bullets
 CBulletDynamics.Core.BulletVisualsHandlerComponent that listens to BulletEnvironment events, instantiates a bullet visual if it is assigned, moves it across the scene and creates hit effect when the Bullet collides with the DynamicSurface
 CBulletDynamics.Core.DynamicSurface
Component that marks the object as the surface that the Bullets can interact with.
If the object does not have this component, Bullet will not have any data for calculating penetration or ricochet so the bullet will stop at the collision point
 CBulletDynamics.Core.DynamicSurfaceRigidbody<see cref=DynamicSurface"/> that applies the <see cref="BulletHitInfo.Force"/> to the <see cref="Rigidbody"/> component found on this gameobject, or the parent
 CBulletDynamics.Core.PooledAudioSourceAudio source that will play the AudioClip using AudioManager's pool by calling AudioManager.PlayClip(AudioClip, Vector3, bool, bool)
 CBulletDynamics.Core.SurfaceOnHitEffect
Component that will raise the event OnCompleted after Duration
 CBulletDynamics.Damage.BulletDamageHandlerComponent that subscribes to BulletEnvironment events and listens to Bullet.OnCollision event. It will apply the damage to the IDamageableByBullet found on the DynamicSurface that the Bullet collided with
 CBulletDynamics.Example.BulletDynamicsExampleBulletTrailComponent that clears the bullet trail on enable and on disable
 CBulletDynamics.Example.BulletDynamicsExampleDamageableTargetExample component that will respond to the damage using IDamageableByBullet. It will display the combined damage on the UI
 CBulletDynamics.Example.BulletDynamicsExampleDestructableGlassExample component that will change the mesh renderer's color to the _hitColor when the DynamicSurface.OnCollision is raised
 CBulletDynamics.Example.BulletDynamicsExamplePlayerControllerExample Controller that is used in the example scene to test the funcionalities
 CBulletDynamics.Example.BulletDynamicsExampleTargetSurfaceOnCollisionExample component that will change the mesh renderer's color to the _hitColor when the DynamicSurface.OnCollision is raised
 CBulletDynamics.Weapons.Weapon
Component that allows the object to shoot the Bullets using Shoot method.
It supports fire rate setting which limits the Shoot method until the FireRate delay has been met
 CBulletDynamics.Weapons.WeaponMagazine
Component that works with Weapon to set it's Weapon.IsShootingEnabled flag to false when the magazine is empty.
Support reloading with Reload method
 CBulletDynamics.Weapons.WeaponZeroing
Component that allows the weapon to be zeroed to the specified distance.
Use the method SetZeroing(float) to rotate the _affectedTransform to the correct rotation
 CBulletDynamics.Core.ObjectPool< T >Object pool system that allows any object to be pooled. Use methods Initialize(T) to set up the original object, GetObject to get the a new/available object from the pool, or ReturnObject(T) to return an object to the pool if it is no longer in use
 CBulletDynamics.Core.ObjectPool< AudioSource >
 CBulletDynamics.Core.ObjectPool< BulletDynamics.Core.SurfaceOnHitEffect >
 CBulletDynamics.Core.BulletData.PhysicDataData that describes the physical behaviour of the bullet
 CScriptableObject
 CBulletDynamics.Core.BulletDataData that describes the physical behaviour of the bullet and holds the references of the bullet visuals
 CBulletDynamics.Core.BulletEnvironmentDataEnvironment data used by the BulletEnvironment to control the Bullet's trajectory though the scene
 CBulletDynamics.Core.SurfacePhysicMaterialMaterial of the surface