Skip to content

Latest commit

 

History

History
95 lines (95 loc) · 3.37 KB

TODO.md

File metadata and controls

95 lines (95 loc) · 3.37 KB
  • Web support
    • Bug? Seems like I have to press space twice to start game
    • Preload audio data to avoid creating buffers unnecessarily
    • Share posix utils with linux
    • Error handling
      • WebGL
      • Audio
      • HTML/CSS
      • Gamepad
      • Fullscreen
    • Split out graphics and audio init
    • In game "Press key to start" screen
    • Check that C assert function works (maybe abort would be better?)
    • Figure out proper gamepad deadzone
    • Update architecture doc
    • Separate GameInput.startButton to handle start screen Fix start screen logic
    • Move fullscreen toggle instructions to start screen
    • Figure out min memory requirements
    • Set up site
  • Document design
  • Audio format constants should be in constants.h
  • More comments
  • Update readme
  • New GIF
  • Display score for next level
  • See if game loop can be tightened up
  • Assert events don't overlap
  • Clean up globals
  • Fix keyboard input so pressing two direction keys at the same time works
  • Switch instruction text based on whether keyboard or controller was last used
  • Start in fullscreen
  • Full controller support (toggle fullscreen and quit)
  • Windows audio cleanup
  • Linux audio cleanup
  • Hide mouse cursor
  • Linux: Use XCreateWindow instead of XCreateSimpleWindow?
  • Linux: What does SubstructureNotifyMask | SubstructureRedirectMask do?
  • Debug versus release builds (e.g. disable debug logging, turn on optimizations)
  • Shoot to skip title sequence
  • In intro sequence, get rid of delay between showing HUD and showing "level 1"
  • Check the minimum version of OpenGL required
  • Display fullscreen toggle controls
  • More error checks, asserts, fault tolerance
  • Can the pixels be kept blocky at smaller scales?
  • Invincibility period after dying
  • Shaders as external files
  • Sprite rendering
  • Audio engine
  • Controller support
  • Keyboard support
  • Player ship
  • Fire bullets
  • Enemy ships
  • Multiple enemy ship types
  • Enemy bullets
  • Enemy bullet sound
  • Bullets kill enemies
  • Bullets kill player
  • Enemies explode
  • Player explodes
  • Explosion sound
  • Crashes kill enemy and player
  • Stars passing
  • Multiple levels
  • Lives
  • Game over screen
  • Text Rendering
  • Title screen
  • Keep score
  • Scale using a framebuffer the viewport
  • Get rid of copying into render list
  • Instanced draws
  • Errors checks in BMP/WAV file parsing
  • Get rid of win32 error messages in the renderer
  • Fullscreen
  • Loop music
  • Area outside game area in different color
  • Large enemies take more hits
  • Hit sound
  • Hit animation
  • Enemies can fire from offscreen
  • Collision boxes
  • Clean up controls (e.g. rapid fire while moving)
  • BMP for sprites, remove stb_image dep
  • Bug in fadeout: title display and title fade can be triggered at the same time
  • Linux support
    • Rendering
    • Audio
    • High-resolution timer
    • Keyboard input
    • Gamepad input
    • Full screen
  • Replace MIXIN_STRUCT with something that doesn't require MS extensions
  • Fix timing of whiteout
  • BUG: Player bullet sometimes appears when transitioning levels.