Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rendering/backend trait #480

Merged
merged 9 commits into from
Jun 10, 2024

Conversation

Sharktheone
Copy link
Member

This PR adds a RenderBackend trait which can be used to have multiple backend options for rendering.

Currently implemented is vello, in the future we might implement others like skia, cairo or webrenderer.

I also implemented a simple UA application which is showcased in bin/renderer.rs

The RenderBackend trait can also be implemented for text only browsers even though it probably can't implement everything (e.g images, gradients, pixel perfect borders)

The next thing on my to-do list is a layouting engine, which would be an alternative for taffy (which doesn't 100% fit our requirements).

The in this PR introduced update to winit-0.30.0 improves the performance of the event-loop drasticly in debug mode (and probably also in release mode, which was already okay)

@Sharktheone Sharktheone added enhancement Updating/improving existing code render tree Any issues related to the Render Tree data structure render tree node Any issues related to Render Tree nodes renderer Anything related to the renderer labels Jun 4, 2024
@Sharktheone Sharktheone self-assigned this Jun 4, 2024
@Sharktheone Sharktheone merged commit e9c0010 into gosub-io:main Jun 10, 2024
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Updating/improving existing code render tree node Any issues related to Render Tree nodes render tree Any issues related to the Render Tree data structure renderer Anything related to the renderer
Projects
Status: 🎯 Done
Development

Successfully merging this pull request may close these issues.

2 participants