Skip to content

Common, Obnoxious Game Stuff. Contains a bunch of helpful stuff for writing games.

License

Notifications You must be signed in to change notification settings

gamma-delta/cogs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

COGS

common, obnoxious game stuff


I find myself re-typing all sorts of stuff when making games in Rust. When I get too frusturated of typing something, I stick it in this crate.

To that end, this crate is a grab-bag of game utilities. It's designed to be engine-agnostic.

Feature List

This crate is broken down into lots of modules, each of which has a loosely thematically connected set of stuff in it.

They are:

  • chance currently only has WeightedPicker<T>, which lets you do weighted averages.
  • controls handles player input & controls. It works both with polling-style (like ggez) and event-style (like macroquad) input handling. You can query for both state and transitions (aka, detect when the player has just pressed a button.)
  • ease has a suite of easing and interpolation helpers.
  • grids has helper types for grid-based games: stuff like coordinates, directions, and rectangles.
  • hash lets you do quick-and-dirty hashing for things like variagated tilesets.

Why is the crate called cogs-gamedev?

Because someone already took the name cogs ;-;

Serde Support

By enabling the crate feature serde, most things in the crate can be (de)serialized.

About

Common, Obnoxious Game Stuff. Contains a bunch of helpful stuff for writing games.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages