cebarks / spriteplus

A simple spritesheet library for use with Pixel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

spriteplus

spriteplus is a golang library meant to be used along side the great Pixel library. It provides a generic SpriteSheet interface, and a few implementations.


Installation

go get github.com/cebarks/spriteplus


Usage

import "github.com/cebarks/spriteplus"

Sprite Sheets

//Create your sheet
sheet := spriteplus.NewSpriteSheet(false)

//Add your sprites to the sheet
err := sheet.AddSprite(gopherSprite, "gopher")
if err != nil {
  ...
}

//Optimize the texture
sheet.Optimize()


//These can be directly drawn to a Window (or any pixel.Target)
sprite := sheet.GetSprite("gopher") 
sprite.Draw(win, pixel.IM)

// or you can efficiently draw them using a batch with sheet.SourcePic()
pic := sheet.SourcePic()
batch := pixel.NewBatch(&pixel.TrianglesData{}, pic)

sprite.Draw(batch, pixel.IM)


batch.Draw(win, pixel.IM)

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.


License

GNU GPLv3

About

A simple spritesheet library for use with Pixel

License:GNU General Public License v3.0


Languages

Language:Go 100.0%