-
Notifications
You must be signed in to change notification settings - Fork 324
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
Remove glyph FRP #5725
Remove glyph FRP #5725
Conversation
Keziah Wesley reports a new STANDUP for today (2023-02-21): Progress: Checked out text rendering. Removing glyph FRP (#5725) reduced cost by 30%. Pre-computing MSDFs should eliminate an additional 40% (#5722). It should be finished by 2023-02-22. Next Day: Next day I will be working on the #5722 task. See if there's anything else I can cut from |
Most of the remaining time in
These are worth looking in to after more impactful planned improvements like #5722. |
@kazcw , what about updating the text-area debug scene? Have you tried it? After removing these FRP bindings here, the scene does not allow for testing bigger glyphs, different colors, etc. It would be cool to allow for it by implementing the removed logic there. Have you tried doing it? |
Implemented. The bindings to change hinting are now Ctrl+(Shift)+E to increase (decrease) |
Keziah Wesley reports a new 🔴 DELAY for yesterday (2023-02-22): Summary: There is 1 day delay in implementation of the Remove glyph FRP (#5725) task. Delay Cause: Designing a way to set glyph parameters for debug scene to work without FRP. |
Keziah Wesley reports a new STANDUP for yesterday (2023-02-22): Progress: Finished removing per-glyph FRP. Planning pre-computed MSDFs. It should be finished by 2023-02-23. Next Day: Next day I will be working on the #5725 task. Port text debug scene to new API. |
Keziah Wesley reports a new STANDUP for today (2023-02-23): Progress: Implemented text area debug scene functionality without FRP. It should be finished by 2023-02-23. Next Day: Next day I will be working on the #5722 task. Implementing pre-computed MSDF atlas. |
impl Hinting { | ||
fn for_font(font_name: &str) -> Self { | ||
let platform = platform::current(); | ||
match (platform, font_name) { | ||
(Some(platform::Platform::MacOS), "mplus1p") => | ||
Self { opacity_increase: 0.4, opacity_exponent: 4.0 }, | ||
(Some(platform::Platform::Windows), "mplus1p") => | ||
Self { opacity_increase: 0.3, opacity_exponent: 3.0 }, | ||
(Some(platform::Platform::Linux), "mplus1p") => | ||
Self { opacity_increase: 0.3, opacity_exponent: 3.0 }, | ||
_ => Self::default(), | ||
} | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should add explanation here why do we need it and why it differs.
@@ -526,7 +461,8 @@ impl WeakGlyph { | |||
// ============== | |||
|
|||
#[cfg(not(target_arch = "wasm32"))] | |||
#[derive(Clone, Copy, CloneRef, Debug, Default)] | |||
#[derive(Clone, CloneRef, Debug, Default)] | |||
#[allow(missing_copy_implementations)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why cannot we implement Copy
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a mock of a non-Copy
type; if it's Copy
, the linter will complain when we clone it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok. You can add a comment there, so nobody will ask this question again.
if let Some(prefix) = INCLUDE_ONLY_SUBTREES_MATCHING_PREFIX | ||
&& label.starts_with(prefix) { | ||
enable = true; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let enabled = enable || INCLUDE_ONLY_SUBTREES_MATCHING_PREFIX.map_or(false, |pfx| label.starts_with(pfx));
if enabled {...
I feel it shows the logic more clearly.
Pull Request Description
Implements #5724. Cuts
new_glyph
time in half. I'm looking in to the remainder of the time...Important Notes
Checklist
Please include the following checklist in your PR:
Scala,
Java,
and
Rust
style guides.
./run ide build
and./run ide watch
.