-
Notifications
You must be signed in to change notification settings - Fork 15
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
Example overhaul #4
Conversation
I think disconnecting the Vello re-export question from this PR makes sense. Given that it is a simple change, I guess you can skip having an issue and just open a PR with that change where that discussion can take place. |
Ok also had to remove |
I have so many mixed feelings about this. Basic thoughts:
|
Using the display in other vello "supercrates" sure is a good idea. And yep I'll undo and move the usvg update to another PR. The reason why I removed download and wasm stuff was that I feel like the example should only show how to use vello_svg, not vello. Having to maintain more extra code in the examples for wasm support when it's just to showcase the crate is something I wouldn't want personally, so thats the intention behind it |
This is remarkably messy. I think this is a good impulse, but I don't want to end up in a situation where this integration is used by our consumers, at least with the current state. That is, the name needs to be something like However, I also think that it would be a viable path forward to create the I am also confused about why the Android check was removed. We *need* to at least confirm that the `vello_svg` crate compiles for Android, even if we don't check that the example compiles for Android. But AIUI, it's much easier to perform that check using `cargo apk`, because that sets the correct `CC` environment variable (for example). |
We don't need to push a crate for the util - could just keep it as a git dependency. Ok, I'll readd the android stuff when I'm back at a computer |
Keeping it as a git dependency might not be viable, unfortunately Because the version in git needs to depend on Vello from crates.io, to be usable in these repositories. But it needs to depend on Vello from the local path to be useful in the vello repository |
🥲 can someone tell me what I've done wrong in the CI? |
The To summarize, I appreciate your effort here greatly and your intentions. I love the energy and passion and you're gaining very useful experience in the codebase. I just don't think this is the right direction.
I like the idea of the |
My proposal was originally laid out in #glazier>Vidi. I'm really confused by your comment on Bevy. Would you please explain what caused you to believe that Vidi would depend on |
So I readded all the old examples and moved the usvg dep update to #6 - So this now provides a simple overview/example of the API while keeping the other for testing |
Sounds like a non-issue now, I understand the idea here. At first I thought vidi would be a requirement for vello, to execute frame pacing, etc. correctly, and I was only wondering if that would cause some complexity on the bevy side. |
Going to close, for a few reasons...
|
This completely removes all current examples, as they seem to just be copied from the main vello repository.

Instead, there are two new crates to find inside the
examples
directory:tiger
andutil
.util
is there to hide all the work of drawing a vello scene with wgpu inside a winit window and is called bytiger
.tiger
is a simple 30-liner just loading theGhostscript_Tiger.svg
svg file, loading it and rendering it to a vello scene, which then gets passed to theutil::display
function.The
util::display
function does nothing fancy and the window just keeps the size of the original svg without the possibility of resizing (This can be improved later on if necessary).Running the example then shows this:
It does take a short time because I also removed the multithreading code which can be found in the original vello example because I want to keep it a simple example to just understand the api.