On Thu, Aug 11, 2016 at 11:26 AM, Nanley Chery <nanleych...@gmail.com> wrote:
> On Tue, Jul 26, 2016 at 10:04:22PM -0700, Jason Ekstrand wrote: > > We have implicitly been not advertising these formats since we had them > > turned off in the format capabilities table. We are about to update that > > table and this prevents a change in behavior. The only change in > behavior > > created by this patch is that we no longer advertise support for > > R16G16B16_FLOAT which means that it's now renderable which seems like a > > bonus. Maybe someday we'll want to change things to start supporting > > I don't understand this sentence. Assuming "renderable" means that we can > render to a texture with such a format, why does preventing the user from > creating an R16G16B16_FLOAT texture mean that it's now renderable? > Because mesa will fall back to R16G16B16A16_FLOAT and fake RGB. That format is renderable. > > - Nanley > > > 16-bit RGB formats natively but, at the moment, there's no need. > > --- > > src/mesa/drivers/dri/i965/brw_surface_formats.c | 10 ++++++++++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/src/mesa/drivers/dri/i965/brw_surface_formats.c > b/src/mesa/drivers/dri/i965/brw_surface_formats.c > > index 2543f4b..69d3bd4 100644 > > --- a/src/mesa/drivers/dri/i965/brw_surface_formats.c > > +++ b/src/mesa/drivers/dri/i965/brw_surface_formats.c > > @@ -311,6 +311,16 @@ brw_init_surface_formats(struct brw_context *brw) > > if (texture == 0 && format != MESA_FORMAT_RGBA_FLOAT32) > > continue; > > > > + /* Don't advertisel 8 and 16-bit RGB formats to core mesa. This > ensures > > + * that they are renderable from an API perspective since core > mesa will > > + * fall back to RGBA or RGBX (we can't render to non-power-of-two > > + * formats). For 8-bit, formats, this also keeps us from hitting > some > > + * nasty corners in intel_miptree_map_blit if you ever try to map > one. > > + */ > > + int format_size = _mesa_get_format_bytes(format); > > + if (format_size == 3 || format_size == 6) > > + continue; > > + > > if (isl_format_supports_sampling(devinfo, texture) && > > (isl_format_supports_filtering(devinfo, texture) || > is_integer)) > > ctx->TextureFormatSupported[format] = true; > > -- > > 2.5.0.400.gff86faf > > > > _______________________________________________ > > mesa-dev mailing list > > mesa-dev@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/mesa-dev >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev