@BartWronski@mastodon.gamedev.place
@BartWronski@mastodon.gamedev.place avatar

BartWronski

@BartWronski@mastodon.gamedev.place

Principal Research Scientist at NVIDIA.

Technology and art.
Computer Graphics by day, Techno and Industrial music by night.

https://linktr.ee/bartwronski

Ex Google Research, Ex games (Sony, Ubisoft, CD Projekt).
Politically leftist. He/they.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

mbr, to random
@mbr@mastodon.gamedev.place avatar

On twitter @sebbbi mentions a cheap approximation of sin(π x) on [-1,1]

sin(π x)/4 ≈ x - x |x|

Normally if we want a two term approximation of an odd function we're stuck with the form:

a(x) = c₁ x + c₃ x³

but if we move away from pure polynomials then another two term form is possible:

b(x) = k₁ x + k₂ x |x|

and this generalizes to however many term odd/even function approximations (filling in otherwise skipped powers with one as abs which spit into two subexpressions w & w/o abs)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@mbr @sebbbi one thing that just "clicked" for me (probably obvious to you and many): the neat part is that despite seemingly "nasty" abs theoretically incompatible with techniques like linear least squares or Remez, it "just works out" as one can focus only on the positive part due to symmetry.

bitinn, to random
@bitinn@mastodon.gamedev.place avatar

GM: How do we make leadership care about Web Assembly and Web GPU in Chrome?

PM: Web AI applications.

Result:

“WebAssembly and WebGPU enhancements for faster Web AI, part 1”

https://developer.chrome.com/blog/io24-webassembly-webgpu-1

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@bitinn those are super cool improvements and proposals, even for games and such! :) I am seriously considering making some future demos in it anytime sharing notebooks or shadertoys are not enough.

BartWronski, to random
@BartWronski@mastodon.gamedev.place avatar

I am excited to finally share our recent paper "Filtering After Shading With Stochastic Texture Filtering" (with Matt Pharr, @marcosalvi, and Marcos Fajardo), published at ACM I3D'24 / PACM CGIT, where we won the best paper award! 1/N

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

"Everyone" knows blending and filtering do not commute with non-linear functions.
However, this is how texture filtering is taught and applied - we filter textures, then "shade" (apply non-linear functions). This introduces bias and error and often destroys the appearance. 2/N

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

We reviewed 40y of graphics literature and unify the theory to propose "filtering after shading".
To make it practical and fast, we realize it through stochastic filtering and propose unbiased Monte Carlo estimators, together with two families of low variance methods. 3/N

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

Many practitioners have used stochastic filters, but we generalize them, expand to negative lobe filters and infinite kernels, and propose an efficient way of sampling B-spline kernels.
We discuss the limitations of those techniques and cases where we do not recommend FAS. 4/N

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

Those limitations exist, but we are excited for the possibilities our framework unlocks - not just "correctness" and appearance preservation, but better filters (no more ugly bilinear!), application to blending, novel texture compression formats, and pipeline simplifications! 5/N

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

I think it's time we change how we teach and approach filtering textures.
Curious?
Check our paper and presentation slides: https://research.nvidia.com/labs/rtr/publication/pharr2024stochtex/ .
We also made shadertoys demonstrating two families of stochastic techniques: https://www.shadertoy.com/view/clXXDs https://www.shadertoy.com/view/MfyXzV 6/6

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

PS. If you read a tech report, earlier paper version - I recommend reading the new one. We improved it substantially - turning one small conference "rejection" into ACM conference "best paper" - and discovered new theory, limitations, and practical advice. :)

PS.2. Writing this paper, we discovered a DSP explanation of something puzzling me for a decade - why literature and practice recommend upsampling in sRGB/gamma, not linear? See the paper for details! I might blog about it as well. :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@demofox is review process random and do I think 2 out of 3 reviewers misjudged our paper (one clearly has not read, the other one skimmed)? Yes.
Did it motivate us to make it better and clearer by understanding why we were mis-judged? Also yes. :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@demofox if someone does not understand me and my claims of contributions, it can be their fault (not much effort put into trying), but most of the time, it's also my fault for not communicating it properly and an opportunity to improve :)
In hindsight, I am happy about it, as I believe the paper has a much higher chance of being impactful now.

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras yes, we had a tech report with our initial findings and a ton of folks reported some great precedents in old games. We knew of all the academic literature, but game developers just use them and often not even report. :)
The coolest example was this old Star Trek game and the first Unreal, we had no idea! This helped us a lot to contextualize our research. :)

Game developers, please report your findings and even "hacks"! :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras Even if writing a full paper might seem intimidating and a ton of work (plus sometimes dealing with gatekeeping reviewers), GDC or Siggraph "Advances" presentations, blog posts, JCGT articles or arXiv tech reports are good enough to find and reference and much easier to write. :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras reminds me of one talks at Stephen's and Steve's course where someone from the film industry explained how in the first Toy Story, artists requested a "hack" for diffuse power remapping to make lighting look more natural. Later it turned out that artists intuitively compensated for the lack of gamma correction. :) @self_shadow do you remember which talk it was?

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras also, I don't think most gamedevs find a "real" paper in some journal or a more "academic" conference any more prestigious than a GDC talk, from my anecdotal experience - it's the other way around. :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras I had this observation in an older blog post of mine that artists manually sharpening mipmaps (which seemed like a gross hack) is actually an intuitive compensation for ugly bilinear filter and correct, best-fit optimization-based solution gives similar results :) https://bartwronski.com/2021/07/20/processing-aware-image-filtering-compensating-for-the-upsampling/

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras yeah and some of them had even worse compression ratios than yours :( visibility of blog posts is close to zero for non-academics. And I even had one academic explicitly refusing to cite my blog post about a similar method as their paper "because it's not peer reviewed". :(

FWIW, I think if you wrote a LaTeX version of your post, just put it on arXiv with references - you'd get a ton of citations. And at many conferences, chance of a "best paper" award. :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras sonetimes it's incentives (your reviewers will be academics, so you better cite them all to not offend any potential one 😅), but discoverability is a real issue as well...

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras @demofox thank you, it means a ton coming from you :) I am nerdy about some niche and mostly useless things, but sometimes, they turn out to be useful after all 😅

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@demofox @aras switching fields for almost 5y helped me a lot :) I would kind of recommend it to everyone (assuming they are ok with re-starting almost from scratch...). The terminology difference was funny ("what the hell is optical flow? oh, you mean motion vectors?"), but I contributed knowhow from games and graphics to some CV/ML research and camera products. :)
"What do you mean games already do robust temporal multi-frame super-resolution???"

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@aras @demofox I work from home, but my team is scattered across various timezones, so totally relatable. I get great discussions with them, but still sometimes feel alone (I'm extraverted). Discussions here help - and Aras, please come to some conference if you can! :)

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@mattpharr @jesta88 @aeva I put this "everyone" in quotation as tongue-in-cheek suggestion that it's not really everyone, and it's not that obvious - because of the way we teach and practice it. :)
"Bilinear is free? Sure, I'll use it! Everyone uses it? It must be the right thing to do!"

Once it's not free (our motivation - filtering under a new compression format) and you see the different outcome, you are starting to question yourself and everything you know - "which way is correct?!" :)

pervognsen, to random
@pervognsen@mastodon.social avatar

There's a retired couple living in my mom's apartment complex who seems to spend 12 hours every day sunbathing outside during the summer months. They did this when we were visiting last year and they're continuing the streak apparently. After you've lived in a warm climate for a while, the whole idea of sunbathing starts to seem obscene, but this is something else.

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@pervognsen @neilhenning I didn't know that! I heard very polarized opinions on Thailand (beautiful, cheap, easy to move, great food vs. apparently not very democratic, and one has to obey some rules very strictly), and I would love to hear your perspective someday as it might be more relatable to me than, e.g., bodybuilders (many of whom move there for some reason, I think mostly because they buy pharma PEDs without prescription - wat???).

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@pervognsen @neilhenning yeah, I complain about many things in the US and would not want to live in most of it. I had a hate-love relationship with California (with more "love" in LA and more "hate" in SFBA). No place is perfect.
But so far, NYC is the best place I have ever lived (if you have a decent income) and for my preferences, even if I still complain or make fun of weird things and there are some compromises, I absolutely love it.

BartWronski,
@BartWronski@mastodon.gamedev.place avatar

@dpiponi @pervognsen @neilhenning is it not going to happen because of some work or personal reasons? (if it's very personal, feel free to ignore my question!)
and personally, if I wanted to consider a different place to live, I'd probably try living there for ~3-6 months next time to see how it works for me.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • Leos
  • kavyap
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • cubers
  • mdbf
  • Youngstown
  • osvaldo12
  • slotface
  • rosin
  • everett
  • vwfavf
  • PowerRangers
  • provamag3
  • Durango
  • khanakhh
  • ethstaker
  • cisconetworking
  • GTA5RPClips
  • thenastyranch
  • tacticalgear
  • ngwrru68w68
  • anitta
  • normalnudes
  • modclub
  • tester
  • megavids
  • All magazines