mozilla :: #gfx

17 May 2017
00:28pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/2cc47f8ec512 - sotaro - Bug 1360701 - Remove sync wait during removing pipeline r=nical
02:56lsalzmanwow, crazy infra backlog...
04:10Burdssomeone in the firefox channel told me to ask here...firefox is using my integrated GPU for hardware acceleration according to about:support, how do i get it to use my nvidia card instead?
04:35lsalzmancan you force it in the nvidia control panel under the application profiles?
04:39Burdsyes but it does not appear to work
09:35Jerry_IRCCloudnical: https://github.com/servo/webrender/pull/1261 <= I hit a crash from mark_as_needed() problem. The external image doesn&#39;t put itself into resource_cache.
09:35* nical looks
09:41nicalJerry_IRCCloud: nit: I&#39;d prefer to rename is_use_resource_cache into: uses_texture_cache
09:41nicalbut the fix makes sense
09:41Jerry_IRCCloudnical: thanks
10:26lol768t
13:15pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/pushloghtml?startID=574&endID=575 - 178 changesets - Merge m-c to graphics
13:28kats-awayGankro: indeed, you need to omit the space between &quot;r?&quot; and &quot;kats&quot;. i&#39;ll take a look
14:42pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/e0ec2a72700f - Jeff Muizelaar - Ensure our transaction arrives at the compositor before asking the parent to paint
14:45pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/1eb562b4804d - Jeff Muizelaar - Revert &quot;Ensure our transaction arrives at the compositor before asking the parent to paint&quot;
14:46pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/33adaa3e8031 - Jeff Muizelaar - Bug 1364626. Ensure our transaction arrives at the compositor before asking the parent to paint. r=dvander
14:47pulsebotCheck-in: https://hg.mozilla.org/projects/graphics/rev/44fbf318477a - Jeff Muizelaar - Bug 1365358. Add an implementation of CopyGlyphsToBuilder for Recording. r=Bas
15:54jrmuizelGankro: try: -b do -p linux64 -u all[linux64-qr]
15:54jrmuizelGankro: try: -b do -p linux64 -u all[linux64-qr]
15:55jrmuizelGankro: try: -b do -p linux64 -u all[linux64-qr]
15:56mchangBas: ping
15:56Basmchang: pong
15:57mchangBas: sorry not a lot of information to go on here - https://bugzilla.mozilla.org/show_bug.cgi?id=1359527#c8
15:57firebotBug 1359527 NEW, mchang@mozilla.com NYTimes SVG can take 30ms to render
15:57mchangBas: basically the returned source surface is always transparent black instad of the luminance output
15:57BasHmm
15:57mchangand no clue why after trying all of the things
15:57BasHave you tried making it a color bitmap and seeing what it contains then?
15:58mchangBas: yeah if i just copy the current mBitmap like http://searchfox.org/mozilla-central/source/gfx/2d/DrawTargetD2D1.cpp#1472 - i get something
15:58mchangso i just want to take the contents of mBitmap and get the output from the luminance effect
15:59BasSure, but I mean outputting the luminance effect to a full color bitmap and rendering that.
15:59Basmchang: Or rendering mBitmap to a full color bitmap and inputting that to the luminance effect.
16:00mchangBas: so two temporary surfaces? isn&#39;t mBitmap already in a full color bitmap?
16:00Basmchang: I&#39;m just thinking of things to try :p
16:00BasThe other thing would be sending a full white bitmap in.
16:01BasAnd trying a ColorMatrix effect instead just to see if that properly outputs to an alpha bitmap.
16:01kvarklsalzman: ping
16:01lsalzmanpung
16:02mchangBas: hmm ok, so this makes no sense also :). If I use the effect in a push/pop group it works as expected
16:02BasOn the destination or the origin?
16:03kvarklsalzman: how is AA text supposed to be rendered/blended? we have RGB values and alpha = 1
16:04mchangBas: as a mask during push layer
16:04mchangBas: but let me try another temporary surface and see if that works as well as a ColorMatrix
16:04mchangthanks
16:05kvarklsalzman: when we draw the text, we use alpha blending. Where is alpha supposed to come from for the AA text?
16:06lsalzmanplease clarify
16:08nicalkvark: self.gl.blend_func(gl::CONSTANT_COLOR, gl::ONE_MINUS_SRC_COLOR);
16:09nicalit&#39;s not exactly alpha blending that we do for sub-pixel aa
16:09kvarknical: that&#39;s what we are using for drawing the AA text into an intermediate target, yes
16:10kvarkwhat I&#39;m seeing is that blend constant color = (0, 0, 0, X)
16:10kvarkbasically ignoring all the RGB channels. Obviously, it&#39;s not rendering correctly, but only in AA mode
16:14mchangkvark: for AA text, RGBA should all be the same value iirc
16:16kvarkmchang: RGBA of the blend color? we are taking it directly from the user, specified in `add_text`
16:19mchangkvark: hmm does the alpha not come from request_glyphs and from the platform?
16:23kvarkmchang: so we have BlendMode::Subpixel(ColorF),
16:23kvarkand that ColorF comes straight from the primitive color passed to displaylist builder
16:24kvarkso I&#39;m not sure how that was supposed to work
16:30mchangkvark: hmm for regular AA text, only the alpha channel matters tho. The shader seems to only pickup the alpha channel.
16:31mchangor i probably don&#39;t understand the question. in platform/font.rs, the alpha should be filled in to some value
16:31kvarkthe shader just does &quot;oFragColor = texture(sColor0, tc);&quot;
16:31mchangkvark: no, thats only with subpixel AA
16:32kvarkyes, that&#39;s what I&#39;m concerned about - subpixel AA
16:32mchangahh soryr, i thought you were talking about AA
16:32mchanggrayscale
16:32kvarkmy fault
16:33mchangkvark: in that case, the alpha doesn&#39;t matter. Each channel for RGB is the alpha only for that channel and that should be filled in from platform/font.rs
16:33kvarkyeah. So the blend mode is set to multiply it by the constant color
16:34kvarkand that one happens to be (0, 0, 0, A)
16:34mchangso should just be some black right?
16:35kvarkit&#39;s black as in square black, since the multiplication erases all info about where text actually is
16:35kvarksee https://github.com/servo/servo/issues/16902
16:37mchangkvark: hmm, i&#39;d look to see why the RGB channels you&#39;re getting from freetype are blocky
16:38mchangif this isn&#39;t happening on other platforms
16:39kvarkmchang: RGB from freetype is fine (with my patch). What I&#39;m saying is that multiplication by (0, 0, 0, A) constant color erases those RGB values, whatever they were.
16:39kvarkand I&#39;m not sure if it works on OSX/windows. Maybe no one tested this particular thing lately? maybe it doesn&#39;t use subpixel-AA path? would be great if someone could check on their machine.
16:41lsalzmanthe blend equation is clearly wron
16:41lsalzmang
16:41mchangworks on windows
16:42kvarkmchang: is it using subpixel AA on windows? could you provide an apitrace capture?
16:43lsalzmanyou would ned something like GL_ONE, GL_ONE_MINUS_SRC_COLOR
16:45mchangkvark: servo crashes on startup with apitrace on windows
16:45kvark:/
16:46lsalzmanwell, i guess CONSTANT_COLOR, ONE_MINUS_SRC_COLOR works so long as constant color is some color other than block
16:46lsalzmaner black
16:46lsalzmanunless you actually want to render black text
16:47kvarkhmm. Maybe the problem here is that we are rendering to an external target, which has black background color. If we were using this blend mode directly on the final target, it would be fine
16:47kvarkas in - my claim about RGB values being erased is not correct, since they are used for multiplying the DST color by the blend mode.
17:27Gankrorhunt: interesting -- enabling webrender handling borders is changing gradients
17:29Gankroe.g. layout/reftests/w3c-css/submitted/background/background-repeat-space-1a.html fails due to ~1 bit differences in some parts of the gradients
17:29rhuntGankro: in gecko?
17:29rhuntah
17:29Gankrorhunt: https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://queue.taskcluster.net/v1/task/WqOBSwbzR5yUFXDFrJnK4A/runs/0/artifacts/public/logs/live_backing.log&only_show_unexpected=1
17:33rhuntGankro: that is odd, you didn&#39;t enable wr gradients correct? I see there are borders in the reference image, which might be changing things
17:33Gankrorhunt: yeah I just turned on layers.advanced.border-layers
17:34Gankro(using gfx tip from ~yesterday)
17:34Gankrorhunt: wait does gecko not use wr for gradients right now?
17:35rhuntGankro: no it doesn&#39;t, bug 1352654
17:35firebothttps://bugzil.la/1352654 NEW, rhunt@eqrion.net Enable building gradient display items for nsDisplayBackgroundImage by default
17:35rhuntGankro: I was working on that, and it&#39;s close but now I&#39;m working on APZ stuff
17:36Gankrorhunt: so somehow giving the borders to wr has perturbed the way gecko chooses to process a gradient... huh
17:40rhuntGankro: yeah it&#39;s weird, enabling borders probably changes the layerization and maybe that&#39;s causing some issues? the tests aren&#39;t marked fuzzy though so you probably can&#39;t add fuzz
17:41Gankrorhunt: yeah that&#39;s probably what I&#39;m gonna do, just figured it was worth pinging you on in case this was somehow Very Important
17:45rhuntGankro: yeah not sure about it
19:13jrmuizelmstange: https://perfht.ml/2qxbfmr
20:02dvanderlsalzman: i heard you were looking at thread safety of font stuff
18 May 2017
No messages
   
Last message: 10 days and 5 hours ago