linebender / linebender/vello

Is there a fast way to skip the work in PTCL?

Open
#409 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
4.3k
Forks
300
Avg merge
2d 13h
Merged PRs (30d)
61

Description

Hello there

When I was using vello, I found that it works very well when the stuff I want to draw is in full screen.

However when I zoom out to make it very small, the speed starts dropping down quickly.

The root cause is that I want to draw too much stuff in the same pixel.

I know there is a lot of pre-culling work been done, such as if the bbox of a path to less than a pixel, just skip it.

But I think there might be some edge cases, a lot of stuff is been queued in a same small area.

The truth is when a pixel is drawing stuff according to the PTCL, most of the later command is an opaque thing, which can override the current one, which means if there is 1000 things to draw, the first 999 is useless.

I am thinking if there is any optimize way to speed this process up.

Thanks a lot!

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue does not name a file, test, or entry point; begin by locating PTCL processing in vello and profiling the zoomed-out case described. Compare the cost of dense commands in one small area with the existing pre-culling behavior, and define done as a measured reduction in that workload without changing rendered output.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics, performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.