i965/miptree: Refactor miptree_create
Enable a future patch to create the r8stencil_mt in this function. v2: Explicitly set etc_format to MESA_FORMAT_NONE (Topi). Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
parent
03cbaae03e
commit
ffac81fa5c
|
@ -722,48 +722,24 @@ miptree_create(struct brw_context *brw,
|
|||
intel_depth_format_for_depthstencil_format(format);
|
||||
}
|
||||
|
||||
if (format == MESA_FORMAT_S_UINT8)
|
||||
return make_surface(brw, target, mt_fmt, first_level, last_level,
|
||||
width0, height0, depth0, num_samples,
|
||||
tiling_flags,
|
||||
mt_surf_usage(mt_fmt),
|
||||
alloc_flags,
|
||||
0,
|
||||
NULL);
|
||||
struct intel_mipmap_tree *mt =
|
||||
make_surface(brw, target, mt_fmt, first_level, last_level,
|
||||
width0, height0, depth0, num_samples,
|
||||
tiling_flags, mt_surf_usage(mt_fmt),
|
||||
alloc_flags, 0, NULL);
|
||||
|
||||
const GLenum base_format = _mesa_get_format_base_format(format);
|
||||
if ((base_format == GL_DEPTH_COMPONENT ||
|
||||
base_format == GL_DEPTH_STENCIL)) {
|
||||
struct intel_mipmap_tree *mt = make_surface(
|
||||
brw, target, mt_fmt,
|
||||
first_level, last_level,
|
||||
width0, height0, depth0, num_samples, tiling_flags,
|
||||
mt_surf_usage(mt_fmt),
|
||||
alloc_flags, 0, NULL);
|
||||
if (mt == NULL)
|
||||
return NULL;
|
||||
|
||||
if (needs_separate_stencil(brw, mt, format) &&
|
||||
!make_separate_stencil_surface(brw, mt)) {
|
||||
if (needs_separate_stencil(brw, mt, format)) {
|
||||
if (!make_separate_stencil_surface(brw, mt)) {
|
||||
intel_miptree_release(&mt);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!(flags & MIPTREE_CREATE_NO_AUX))
|
||||
intel_miptree_choose_aux_usage(brw, mt);
|
||||
|
||||
return mt;
|
||||
}
|
||||
|
||||
struct intel_mipmap_tree *mt = make_surface(
|
||||
brw, target, mt_fmt,
|
||||
first_level, last_level,
|
||||
width0, height0, depth0,
|
||||
num_samples, tiling_flags,
|
||||
mt_surf_usage(mt_fmt),
|
||||
alloc_flags, 0, NULL);
|
||||
if (!mt)
|
||||
return NULL;
|
||||
|
||||
mt->etc_format = (mt_fmt != format) ? format : MESA_FORMAT_NONE;
|
||||
mt->etc_format = (_mesa_is_format_color_format(format) && mt_fmt != format) ?
|
||||
format : MESA_FORMAT_NONE;
|
||||
|
||||
if (!(flags & MIPTREE_CREATE_NO_AUX))
|
||||
intel_miptree_choose_aux_usage(brw, mt);
|
||||
|
|
Loading…
Reference in New Issue