Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@qqwa

qqwa/systems.txt Secret

Created December 1, 2018 15:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save qqwa/e06000f41f02b33100b1fc1034742804 to your computer and use it in GitHub Desktop.
Save qqwa/e06000f41f02b33100b1fc1034742804 to your computer and use it in GitHub Desktop.
rustup run nightly amethyst_parser_syn implementor --impls System `find . -not -path "*/examples/*" -not -path "*/tests/*" -type f -name "*.rs"` > system.txt
File: ./amethyst_renderer/src/visibility.rs
Struct: VisibilitySortingSystem
Determine what entities are visible to the camera, and which are not. Will also sort transparent
entities back to front based on distance from camera.
Note that this should run after `GlobalTransform` has been updated for the current frame, and
before rendering occurs.
File: ./amethyst_renderer/src/hide_system.rs
Struct: HideHierarchySystem
This system adds a [HiddenPropagate](struct.HiddenPropagate.html)-component to all children.
Using this system will result in every child being hidden.
Depends on the resource \"ParentHierarchy\", which is set up by the [TransformBundle](struct.TransformBundle.html)
File: ./amethyst_renderer/src/sprite_visibility.rs
Struct: SpriteVisibilitySortingSystem
Determines what entities to be drawn. Will also sort transparent entities back to front based on
position on the Z axis.
The sprite render pass should draw all sprites without semi-transparent pixels, then draw the
sprites with semi-transparent pixels from far to near.
Note that this should run after `GlobalTransform` has been updated for the current frame, and
before rendering occurs.
File: ./amethyst_input/src/system.rs
Struct: InputSystem
Input system
Will read `winit::Event` from `EventHandler<winit::Event>`, process them with `InputHandler`,
and push the results in `EventHandler<InputEvent>`.
File: ./amethyst_ui/src/resize.rs
Struct: ResizeSystem
This system rearranges UI elements whenever the screen is resized using their `UiResize`
component.
File: ./amethyst_ui/src/text.rs
Struct: UiKeyboardSystem
This system processes the underlying UI data as needed.
File: ./amethyst_ui/src/event.rs
Struct: UiMouseSystem
The system that generates events for `MouseReactive` enabled entities.
The generic types A and B represent the A and B generic parameter of the InputHandler<A,B>.
File: ./amethyst_ui/src/button/system.rs
Struct: UiButtonSystem
This system manages button mouse events. It changes images and text colors, as well as playing audio
when necessary.
It\'s automatically registered with the `UiBundle`.
File: ./amethyst_ui/src/layout.rs
Struct: UiTransformSystem
Manages the `Parent` component on entities having `UiTransform`
It does almost the same as the `TransformSystem`, but with some differences,
like `UiTransform` alignment and stretching.
File: ./amethyst_controls/src/systems.rs
Struct: FlyMovementSystem
The system that manages the fly movement.
Generic parameters are the parameters for the InputHandler.
Struct: ArcBallRotationSystem
The system that manages the arc ball movement;
In essence, the system will allign the camera with its target while keeping the distance to it
and while keeping the orientation of the camera.
To modify the orientation of the camera in accordance with the mouse input, please use the
FreeRotationSystem.
Struct: FreeRotationSystem
The system that manages the view rotation.
Controlled by the mouse.
Goes into an inactive state if the window is not focused (`WindowFocus` resource).
Can be manually disabled by making the mouse visible using the `HideCursor` resource:
`HideCursor.hide = false`
Struct: MouseFocusUpdateSystem
A system which reads Events and saves if a window has lost focus in a WindowFocus resource
Struct: CursorHideSystem
System which hides the cursor when the window is focused.
Requires the usage MouseFocusUpdateSystem at the same time.
File: ./amethyst_utils/src/fps_counter.rs
Struct: FPSCounterSystem
Add this system to your game to automatically push FPS values
to the [FPSCounter](../resources/struct.FPSCounter.html) resource with id 0
File: ./amethyst_utils/src/time_destroy.rs
Struct: DestroyAtTimeSystem
The system in charge of destroying entities with the `DestroyAtTime` component.
Struct: DestroyInTimeSystem
The system in charge of destroying entities with the `DestroyInTime` component.
File: ./amethyst_utils/src/ortho_camera.rs
Struct: CameraOrthoSystem
System that automatically changes the camera matrix according to the settings in
the `CameraOrtho` attached to the camera entity.
File: ./amethyst_core/src/transform/systems.rs
Struct: TransformSystem
Handles updating `GlobalTransform` components based on the `Transform`
component and parents.
File: ./amethyst_assets/src/reload.rs
Struct: HotReloadSystem
System for updating `HotReloadStrategy`.
File: ./amethyst_assets/src/prefab/system.rs
Struct: PrefabLoaderSystem
System that load `Prefab`s for `PrefabData` `T`.
### Type parameters:
- `T`: `PrefabData`
File: ./amethyst_assets/src/storage.rs
Struct: Processor
A default implementation for an asset processing system
which converts data to assets and maintains the asset storage
for `A`.
This system can only be used if the asset data implements
`Into<Result<A, BoxedErr>>`.
File: ./amethyst_animation/src/skinning/systems.rs
Struct: VertexSkinningSystem
System for performing vertex skinning.
Needs to run after global transforms have been updated for the current frame.
File: ./amethyst_animation/src/systems/sampling.rs
Struct: SamplerInterpolationSystem
System for interpolating active samplers.
If other forms of animation is needed, this can be used in isolation, have no direct dependency
on `AnimationControlSystem`.
Will process all active `SamplerControlSet`, and update the target component for the entity they
belong to.
### Type parameters:
- `T`: the component type that the animation should be applied to
File: ./amethyst_animation/src/systems/control.rs
Struct: AnimationControlSystem
System for setting up animations, should run before `SamplerInterpolationSystem`.
Will process all active `AnimationControl` + `AnimationHierarchy`, and do processing of the
animations they describe. If an animation only targets a single node/entity, there is no need
for `AnimationHierarchy`.
### Type parameters:
- `I`: identifier type for running animations, only one animation can be run at the same time
with the same id
- `T`: the component type that the animation should be applied to
File: ./amethyst_network/src/network_socket.rs
Struct: NetSocketSystem
The System managing the network state and connections.
The T generic parameter corresponds to the network event type.
Receives events and filters them.
Received events will be inserted into the NetReceiveBuffer resource.
To send an event, add it to the NetSendBuffer resource.
If both a connection (Connect or Connected) event is received at the same time as another event from the same connection,
only the connection event will be considered and rest will be filtered out.
File: ./amethyst_audio/src/systems/dj.rs
Struct: DjSystem
Calls a closure if the `AudioSink` is empty.
File: ./amethyst_audio/src/systems/audio.rs
Struct: AudioSystem
Syncs 3D transform data with the audio engine to provide 3D audio.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment