Add graphics subsystem by facekapow · Pull Request #130 · runtimejs/runtime · GitHub
Skip to content
This repository was archived by the owner on Jul 3, 2020. It is now read-only.

Add graphics subsystem#130

Open
facekapow wants to merge 7 commits into
masterfrom
graphics-mode
Open

Add graphics subsystem#130
facekapow wants to merge 7 commits into
masterfrom
graphics-mode

Conversation

@facekapow

Copy link
Copy Markdown
Contributor

Adds a graphics subsystem plus a BGA driver to provide a default renderer. Since the BGA backend has to perform calculations every time it's going to find a pixel, it's fairly slow at rendering, but it's decent enough.

Right now, graphics can be loaded with runtime.graphics.enableGraphics() and pixels can be manipulated by fetching them through runtime.graphics.screen.get(x, y) which will return a pixel from the backend. The backend should return a pixel with getters and setters for r, g, and b.

This is basically as thin as possible of a wrapper around multiple possible graphics renderers (BGA, virtio-gpu in the future), to be able to abstract direct access to the video buffers, providing the most basic functions (enabling graphics, pixel manipulation) allowing higher level functions (image drawing, printing text, shape drawing, etc.) to be implemented on top of that.

However, this should be refactored into an optional module later, along with other things.

@facekapow facekapow mentioned this pull request Aug 4, 2016
@iefserge

Copy link
Copy Markdown
Member

@facekapow

Copy link
Copy Markdown
Contributor Author

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants