265ba2e5b3
* WIP: Render API v2 * Fix doctests * Expose all of PixelsContext (#110) * Fix ScalingRenderer::new() taking &mut Device * Replace getters with direct access to &mut PixelsContext * Fix wrong reference type * Fix unneeded mut * Remove unnecessary mutable borrow, resurrect the shorter getter methods * Initial port to wgpu master (0.6) Surface creation is broken (see examples) Does not support compressed textures * Fix SurfaceTexture and examples * Add support for compressed texture formats * resize doesn't need mutability * Update documentation * Update wgpu * Prepare release * Goodbye Travis! Thanks for all the fish Co-authored-by: JMS55 <47158642+JMS55@users.noreply.github.com> |
||
---|---|---|
.. | ||
simple-invaders | ||
src | ||
Cargo.toml | ||
README.md |
Pixel Invaders 👾
The pixels have invaded!
Running
cargo run --release --package invaders
Controls
Left Right Move tank
space Fire cannon
Goal
Shoot all of the invaders before they reach Earth and begin a hostile takeover. Be careful, because the entire fleet is coordinated and acts as a hive mind. Their aggression increases as their numbers dwindle.
Architecture
Pixel Invaders uses the simple-invaders
crate for all game logic and drawing. Be sure to check out that crate if you are interested in any of the inner workings of the game.
This example is simply glue code that uses winit
for windowing/event handling and keyboard input. The winit
event loop is used to drive the simple-invaders
state and rasterize each frame. Finally, pixels
takes the rasterized frame buffer and sends it to the screen, optionally through a series of render passes.