Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ad-si/Brillo
Painless 2D vector graphics, animations, and simulations powered by GLFW (Fork of gloss)
https://github.com/ad-si/Brillo
2d animation game-engine glfw graphics raster render simulation vector
Last synced: about 2 months ago
JSON representation
Painless 2D vector graphics, animations, and simulations powered by GLFW (Fork of gloss)
- Host: GitHub
- URL: https://github.com/ad-si/Brillo
- Owner: ad-si
- Created: 2024-11-22T11:35:06.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2024-11-30T21:04:13.000Z (2 months ago)
- Last Synced: 2024-12-10T11:07:44.660Z (about 2 months ago)
- Topics: 2d, animation, game-engine, glfw, graphics, raster, render, simulation, vector
- Language: Haskell
- Homepage: https://hackage.haskell.org/package/brillo
- Size: 8.4 MB
- Stars: 32
- Watchers: 2
- Forks: 1
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Brillo
Brillo hides the pain of drawing simple vector graphics and raster images
behind a nice data type and a few display functions.
## Example
Getting something on the screen is as easy as:
```hs
import Brillomain = display
(InWindow "Nice Window" (200, 200) (10, 10))
white
(Circle 80)
```Explore and run the [example projects](./brillo-examples/README.md)
with [stack](http://haskellstack.org):```sh
stack run brillo-boids
```## Usage
Once the window is open you can use the following:
- Quit
- esc-key
- Move Viewport
- arrow keys
- left-click drag
- Zoom Viewport
- page up/down-keys
- control-left-click drag
- right-click drag
- mouse wheel
- Rotate Viewport
- home/end-keys
- alt-left-click drag
- Reset Viewport
- 'r'-key## More
- Animations and simulations can be constructed similarly
using the `animate` and `simulate` functions
- Games with user input can be constructed with the `play` function.
- See the [brillo-examples](./brillo-examples/README.md) directory for more.## Installation
Install necessary native dependencies like this:
### Fedora
```sh
sudo dnf install glfw-devel libXxf86vm-devel
```### Arch
```sh
sudo pacman -S glfw libxxf86vm
```## Contributing
Contributions are very welcome!
Please test that all the `brillo-examples` still work
before submitting your pull request.## History
This library is a fork of [gloss](https://github.com/benl23x5/gloss)
and improves upon it in several ways.
Check out the [CHANGELOG](./CHANGELOG.md) for more details.