From 6b3172f793523f0bad20a932553b3724c6d3e144 Mon Sep 17 00:00:00 2001 From: Alexander Suvorov Date: Fri, 11 Aug 2017 13:12:44 +0200 Subject: [PATCH] Optimize DXT color endpoints computation This change significantly improves the compression speed for DXT encoding. Explanation: The main ideas used for the DXT color endpoints computation optimization: - When the DXT endpoint computation function is called from the qunatization algorithm, almost all of its input parameters (except the color metrics) are hardcoded in the quantization code. This allows to optimize the endpoint evaluation function (which is the bottleneck of the endpoint computation algorithm) for this specific set of parameters. - In the original version of the evaluation function, selectors are computed each time when a new endpoint is evaluated. While in fact, this is not necessary, because some selector values are never used, so they can be computed lazily, based on the previously determined optimal endpoint values. This approach significantly reduces the amount of computations. Other improvements: - The original version of Crunch has a minor bug: the counter for the cached endpoint values does not get initialized. This results in nondeterministic DXT conversion of large textures, as the counter overflow can occur at a random moment. The issue is now fixed in the current branch. DXT Testing: The modified algorithm has been tested on the Kodak test set using 64-bit build with default settings (running on Windows 10, i7-4790, 3.6GHz). All the decompressed test images are identical to the images being compressed and decompressed using original version of Crunch (revision ea9b8d8). [Compressing Kodak set without mipmaps using DXT1 encoding] Original: 1582222 bytes / 28.893 sec Modified: 1468204 bytes / 11.882 sec Improvement: 7.21% (compression ratio) / 58.88% (compression time) [Compressing Kodak set with mipmaps using DXT1 encoding] Original: 2065243 bytes / 36.946 sec Modified: 1914805 bytes / 15.628 sec Improvement: 7.28% (compression ratio) / 57.70% (compression time) ETC Testing: The modified algorithm has been tested on the Kodak test set using 64-bit build with default settings (running on Windows 10, i7-4790, 3.6GHz). The ETC1 quantization parameters have been selected in such a way, so that ETC1 compression gives approximately the same average Luma PSNR as the corresponding DXT1 compression (which is equal to 34.044 dB for the Kodak test set compressed without mipmaps using DXT1 encoding and default quality settings). [Compressing Kodak set without mipmaps using ETC1 encoding] Total size: 1607858 bytes Total time: 17.352 sec Average bitrate: 1.363 bpp Average Luma PSNR: 34.050 dB --- bin/crunch_x64.exe | Bin 1011200 -> 1012224 bytes crnlib/crn_dxt1.cpp | 717 +++++++++++++-------------------------- crnlib/crn_dxt1.h | 94 +---- crnlib/crn_dxt_image.cpp | 3 - crnlib/crn_dxt_image.h | 5 - 5 files changed, 253 insertions(+), 566 deletions(-) diff --git a/bin/crunch_x64.exe b/bin/crunch_x64.exe index dda44f09d48f770c34c3ce7fb57079a49177957f..d227e88ffa3fea9da9b13f6a9a614cde78fe470d 100644 GIT binary patch delta 250498 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⪚YiLm2!*#} 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 z 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≈j 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%0A9ey{9y?{F%g>PHx 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 8192) - m_unique_color_hash_map.clear(); - else - m_unique_color_hash_map.reset(); - - if (m_solutions_tried.get_table_size() > 8192) - m_solutions_tried.clear(); - - m_unique_colors.resize(0); - - m_has_transparent_pixels = false; - m_total_unique_color_weight = 0; - - m_norm_unique_colors.resize(0); - m_mean_norm_color.clear(); - - m_norm_unique_colors_weighted.resize(0); - m_mean_norm_color_weighted.clear(); - - m_principle_axis.clear(); - - m_total_evals = 0; - m_all_pixels_grayscale = false; - m_has_color_weighting = false; - m_perceptual = false; -} - -bool dxt1_endpoint_optimizer::handle_all_transparent_block() { - m_pResults->m_low_color = 0; - m_pResults->m_high_color = 0; - m_pResults->m_alpha_block = true; - - memset(m_pResults->m_pSelectors, 3, m_pParams->m_num_pixels); - - return true; -} - // All selectors are equal. Try compressing as if it was solid, using the block's average color, using ryg's optimal single color compression tables. bool dxt1_endpoint_optimizer::try_average_block_as_solid() { uint64 tot_r = 0; @@ -118,12 +74,12 @@ bool dxt1_endpoint_optimizer::try_average_block_as_solid() { uint low_color = (ryg_dxt::OMatch5[ave_r][0] << 11) | (ryg_dxt::OMatch6[ave_g][0] << 5) | ryg_dxt::OMatch5[ave_b][0]; uint high_color = (ryg_dxt::OMatch5[ave_r][1] << 11) | (ryg_dxt::OMatch6[ave_g][1] << 5) | ryg_dxt::OMatch5[ave_b][1]; - bool improved = evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), true, &m_best_solution); + bool improved = evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); if ((m_pParams->m_use_alpha_blocks) && (m_best_solution.m_error)) { low_color = (ryg_dxt::OMatch5_3[ave_r][0] << 11) | (ryg_dxt::OMatch6_3[ave_g][0] << 5) | ryg_dxt::OMatch5_3[ave_b][0]; high_color = (ryg_dxt::OMatch5_3[ave_r][1] << 11) | (ryg_dxt::OMatch6_3[ave_g][1] << 5) | ryg_dxt::OMatch5_3[ave_b][1]; - improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), true, &m_best_solution); + improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); } if (m_pParams->m_quality == cCRNDXTQualityUber) { @@ -137,12 +93,12 @@ bool dxt1_endpoint_optimizer::try_average_block_as_solid() { uint low_color = (ryg_dxt::OMatch5[r][0] << 11) | (ryg_dxt::OMatch6[g][0] << 5) | ryg_dxt::OMatch5[b][0]; uint high_color = (ryg_dxt::OMatch5[r][1] << 11) | (ryg_dxt::OMatch6[g][1] << 5) | ryg_dxt::OMatch5[b][1]; - improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), true, &m_best_solution); + improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); if ((m_pParams->m_use_alpha_blocks) && (m_best_solution.m_error)) { low_color = (ryg_dxt::OMatch5_3[r][0] << 11) | (ryg_dxt::OMatch6_3[g][0] << 5) | ryg_dxt::OMatch5_3[b][0]; high_color = (ryg_dxt::OMatch5_3[r][1] << 11) | (ryg_dxt::OMatch6_3[g][1] << 5) | ryg_dxt::OMatch5_3[b][1]; - improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), true, &m_best_solution); + improved |= evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); } } } @@ -150,30 +106,6 @@ bool dxt1_endpoint_optimizer::try_average_block_as_solid() { return improved; } -// Block is solid, trying using ryg's optimal single color tables. -bool dxt1_endpoint_optimizer::handle_solid_block() { - int r = m_unique_colors[0].m_color.r; - int g = m_unique_colors[0].m_color.g; - int b = m_unique_colors[0].m_color.b; - - //uint packed_color = dxt1_block::pack_color(r, g, b, true); - //evaluate_solution(dxt1_solution_coordinates((uint16)packed_color, (uint16)packed_color), false, &m_best_solution); - - uint low_color = (ryg_dxt::OMatch5[r][0] << 11) | (ryg_dxt::OMatch6[g][0] << 5) | ryg_dxt::OMatch5[b][0]; - uint high_color = (ryg_dxt::OMatch5[r][1] << 11) | (ryg_dxt::OMatch6[g][1] << 5) | ryg_dxt::OMatch5[b][1]; - evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), false, &m_best_solution); - - if ((m_pParams->m_use_alpha_blocks) && (m_best_solution.m_error)) { - low_color = (ryg_dxt::OMatch5_3[r][0] << 11) | (ryg_dxt::OMatch6_3[g][0] << 5) | ryg_dxt::OMatch5_3[b][0]; - high_color = (ryg_dxt::OMatch5_3[r][1] << 11) | (ryg_dxt::OMatch6_3[g][1] << 5) | ryg_dxt::OMatch5_3[b][1]; - evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color), true, &m_best_solution); - } - - return_solution(*m_pResults, m_best_solution); - - return true; -} - void dxt1_endpoint_optimizer::compute_vectors(const vec3F& perceptual_weights) { m_norm_unique_colors.resize(0); m_norm_unique_colors_weighted.resize(0); @@ -208,58 +140,14 @@ void dxt1_endpoint_optimizer::compute_vectors(const vec3F& perceptual_weights) { // Compute PCA (principle axis, i.e. direction of largest variance) of input vectors. void dxt1_endpoint_optimizer::compute_pca(vec3F& axis, const vec3F_array& norm_colors, const vec3F& def) { -#if 0 - axis.clear(); - - CRNLIB_ASSERT(m_unique_colors.size() == norm_colors.size()); - - // Incremental PCA - bool first = true; - for (uint i = 0; i < norm_colors.size(); i++) - { - const uint weight = m_unique_colors[i].m_weight; - - for (uint j = 0; j < weight; j++) - { - vec3F x(norm_colors[i] * norm_colors[i][0]); - vec3F y(norm_colors[i] * norm_colors[i][1]); - vec3F z(norm_colors[i] * norm_colors[i][2]); - - vec3F v(first ? norm_colors[0] : axis); - first = false; - - v.normalize(&def); - - axis[0] += (x * v); - axis[1] += (y * v); - axis[2] += (z * v); - } - } - - axis.normalize(&def); -#else double cov[6] = {0, 0, 0, 0, 0, 0}; - - //vec3F lo(math::cNearlyInfinite); - //vec3F hi(-math::cNearlyInfinite); - for (uint i = 0; i < norm_colors.size(); i++) { const vec3F& v = norm_colors[i]; - - //if (v[0] < lo[0]) lo[0] = v[0]; - //if (v[1] < lo[1]) lo[1] = v[1]; - //if (v[2] < lo[2]) lo[2] = v[2]; - //if (v[0] > hi[0]) hi[0] = v[0]; - //if (v[1] > hi[1]) hi[1] = v[1]; - //if (v[2] > hi[2]) hi[2] = v[2]; - float r = v[0]; float g = v[1]; float b = v[2]; - if (m_unique_colors[i].m_weight > 1) { const double weight = m_unique_colors[i].m_weight; - cov[0] += r * r * weight; cov[1] += r * g * weight; cov[2] += r * b * weight; @@ -275,23 +163,13 @@ void dxt1_endpoint_optimizer::compute_pca(vec3F& axis, const vec3F_array& norm_c cov[5] += b * b; } } - - double vfr, vfg, vfb; - //vfr = hi[0] - lo[0]; - //vfg = hi[1] - lo[1]; - //vfb = hi[2] - lo[2]; - // This is more stable. - vfr = .9f; - vfg = 1.0f; - vfb = .7f; - - const uint cNumIters = 8; - - for (uint iter = 0; iter < cNumIters; iter++) { + double vfr = .9f; + double vfg = 1.0f; + double vfb = .7f; + for (uint iter = 0; iter < 8; iter++) { double r = vfr * cov[0] + vfg * cov[1] + vfb * cov[2]; double g = vfr * cov[1] + vfg * cov[3] + vfb * cov[4]; double b = vfr * cov[2] + vfg * cov[4] + vfb * cov[5]; - double m = math::maximum(fabs(r), fabs(g), fabs(b)); if (m > 1e-10) { m = 1.0f / m; @@ -299,30 +177,20 @@ void dxt1_endpoint_optimizer::compute_pca(vec3F& axis, const vec3F_array& norm_c g *= m; b *= m; } - double delta = math::square(vfr - r) + math::square(vfg - g) + math::square(vfb - b); - vfr = r; vfg = g; vfb = b; - if ((iter > 2) && (delta < 1e-8)) break; } - double len = vfr * vfr + vfg * vfg + vfb * vfb; - if (len < 1e-10) { axis = def; } else { len = 1.0f / sqrt(len); - vfr *= len; - vfg *= len; - vfb *= len; - - axis.set(static_cast(vfr), static_cast(vfg), static_cast(vfb)); + axis.set(static_cast(vfr * len), static_cast(vfg * len), static_cast(vfb * len)); } -#endif } static const uint8 g_invTableNull[4] = {0, 1, 2, 3}; @@ -330,37 +198,38 @@ static const uint8 g_invTableAlpha[4] = {1, 0, 2, 3}; static const uint8 g_invTableColor[4] = {1, 0, 3, 2}; // Computes a valid (encodable) DXT1 solution (low/high colors, swizzled selectors) from input. -void dxt1_endpoint_optimizer::return_solution(results& res, const potential_solution& solution) { +void dxt1_endpoint_optimizer::return_solution() { + compute_selectors(); bool invert_selectors; - if (solution.m_alpha_block) - invert_selectors = (solution.m_coords.m_low_color > solution.m_coords.m_high_color); + if (m_best_solution.m_alpha_block) + invert_selectors = (m_best_solution.m_coords.m_low_color > m_best_solution.m_coords.m_high_color); else { - CRNLIB_ASSERT(solution.m_coords.m_low_color != solution.m_coords.m_high_color); + CRNLIB_ASSERT(m_best_solution.m_coords.m_low_color != m_best_solution.m_coords.m_high_color); - invert_selectors = (solution.m_coords.m_low_color < solution.m_coords.m_high_color); + invert_selectors = (m_best_solution.m_coords.m_low_color < m_best_solution.m_coords.m_high_color); } - res.m_alternate_rounding = solution.m_alternate_rounding; - res.m_enforce_selector = solution.m_enforce_selector; - res.m_enforced_selector = solution.m_enforced_selector; - res.m_reordered = invert_selectors; + m_pResults->m_alternate_rounding = m_best_solution.m_alternate_rounding; + m_pResults->m_enforce_selector = m_best_solution.m_enforce_selector; + m_pResults->m_enforced_selector = m_best_solution.m_enforced_selector; + m_pResults->m_reordered = invert_selectors; if (invert_selectors) { - res.m_low_color = solution.m_coords.m_high_color; - res.m_high_color = solution.m_coords.m_low_color; + m_pResults->m_low_color = m_best_solution.m_coords.m_high_color; + m_pResults->m_high_color = m_best_solution.m_coords.m_low_color; } else { - res.m_low_color = solution.m_coords.m_low_color; - res.m_high_color = solution.m_coords.m_high_color; + m_pResults->m_low_color = m_best_solution.m_coords.m_low_color; + m_pResults->m_high_color = m_best_solution.m_coords.m_high_color; } const uint8* pInvert_table = g_invTableNull; if (invert_selectors) - pInvert_table = solution.m_alpha_block ? g_invTableAlpha : g_invTableColor; + pInvert_table = m_best_solution.m_alpha_block ? g_invTableAlpha : g_invTableColor; const uint alpha_thresh = m_pParams->m_pixels_have_alpha ? (m_pParams->m_dxt1a_alpha_threshold << 24U) : 0; const uint32* pSrc_pixels = reinterpret_cast(m_pParams->m_pPixels); - uint8* pDst_selectors = res.m_pSelectors; + uint8* pDst_selectors = m_pResults->m_pSelectors; if ((m_unique_colors.size() == 1) && (!m_pParams->m_pixels_have_alpha)) { uint32 c = utils::read_le32(pSrc_pixels); @@ -374,7 +243,7 @@ void dxt1_endpoint_optimizer::return_solution(results& res, const potential_solu uint unique_color_index = it->second; - uint selector = pInvert_table[solution.m_selectors[unique_color_index]]; + uint selector = pInvert_table[m_best_solution.m_selectors[unique_color_index]]; memset(pDst_selectors, selector, m_pParams->m_num_pixels); } else { @@ -401,7 +270,7 @@ void dxt1_endpoint_optimizer::return_solution(results& res, const potential_solu uint unique_color_index = it->second; - selector = pInvert_table[solution.m_selectors[unique_color_index]]; + selector = pInvert_table[m_best_solution.m_selectors[unique_color_index]]; prev_color = c; prev_selector = selector; @@ -413,31 +282,16 @@ void dxt1_endpoint_optimizer::return_solution(results& res, const potential_solu } while (pDst_selectors != pDst_selectors_end); } - res.m_alpha_block = solution.m_alpha_block; - res.m_error = solution.m_error; -} - -inline vec3F dxt1_endpoint_optimizer::unpack_to_vec3F(uint16 packed_color) { - color_quad_u8 c(dxt1_block::unpack_color(packed_color, false)); - - return vec3F(c.r * 1.0f / 31.0f, c.g * 1.0f / 63.0f, c.b * 1.0f / 31.0f); -} - -inline vec3F dxt1_endpoint_optimizer::unpack_to_vec3F_raw(uint16 packed_color) { - color_quad_u8 c(dxt1_block::unpack_color(packed_color, false)); - - return vec3F(c.r, c.g, c.b); + m_pResults->m_alpha_block = m_best_solution.m_alpha_block; + m_pResults->m_error = m_best_solution.m_error; } // Per-component 1D endpoint optimization. void dxt1_endpoint_optimizer::optimize_endpoint_comps() { + compute_selectors(); if ((m_best_solution.m_alpha_block) || (!m_best_solution.m_error)) return; - //color_quad_u8 orig_l(dxt1_block::unpack_color(m_best_solution.m_coords.m_low_color, false)); - //color_quad_u8 orig_h(dxt1_block::unpack_color(m_best_solution.m_coords.m_high_color, false)); - //uint orig_error = m_best_solution.m_error; - color_quad_u8 orig_l_scaled(dxt1_block::unpack_color(m_best_solution.m_coords.m_low_color, true)); color_quad_u8 orig_h_scaled(dxt1_block::unpack_color(m_best_solution.m_coords.m_high_color, true)); @@ -524,45 +378,29 @@ void dxt1_endpoint_optimizer::optimize_endpoint_comps() { break; } - //CRNLIB_ASSERT(trial_error >= min_possible_error); - if (trial_error < error_to_beat) { color_quad_u8 l(dxt1_block::unpack_color(m_best_solution.m_coords.m_low_color, false)); color_quad_u8 h(dxt1_block::unpack_color(m_best_solution.m_coords.m_high_color, false)); l[comp_index] = static_cast(o); h[comp_index] = static_cast(p); - bool better = evaluate_solution( - dxt1_solution_coordinates(dxt1_block::pack_color(l, false), dxt1_block::pack_color(h, false)), - true, &m_best_solution); - better; + bool better = evaluate_solution(dxt1_solution_coordinates(dxt1_block::pack_color(l, false), dxt1_block::pack_color(h, false))); + compute_selectors(); if (better) { -#if 0 - printf("comp: %u, orig: %u %u, new: %u %u, orig_error: %u, new_error: %u\n", comp_index, - orig_l[comp_index], orig_h[comp_index], - l[comp_index], h[comp_index], - orig_error, m_best_solution.m_error); -#endif if (!m_best_solution.m_error) return; - error_to_beat = 0; for (uint i = 0; i < m_unique_colors.size(); i++) { int delta = tl[m_best_solution.m_selectors[i]] - m_unique_colors[i].m_color[comp_index]; error_to_beat += static_cast(m_unique_colors[i].m_weight) * (delta * delta); } - } // better - //goto early_out; } // if (trial_error < error_to_beat) - } // for (uint p = 0; p <= m; p++) } - } // for (uint o = 0; o <= m; o++) - } // comp_index } @@ -602,7 +440,7 @@ static const struct adjacent_coords { // Attempt to refine current solution's endpoints given the current selectors using least squares. bool dxt1_endpoint_optimizer::refine_solution(int refinement_level) { - CRNLIB_ASSERT(m_best_solution.m_valid); + compute_selectors(); static const int w1Tab[4] = {3, 0, 2, 1}; @@ -670,7 +508,7 @@ bool dxt1_endpoint_optimizer::refine_solution(int refinement_level) { dxt1_solution_coordinates nc((uint16)min16, (uint16)max16); nc.canonicalize(); - improved |= evaluate_solution(nc, true, &m_best_solution, false); + improved |= evaluate_solution(nc); } else if (refinement_level == 1) { // Try exploring the local lattice neighbors of the least squares optimized result. color_quad_u8 e[2]; @@ -705,7 +543,7 @@ bool dxt1_endpoint_optimizer::refine_solution(int refinement_level) { nc.canonicalize(); if ((nc.m_low_color != m_best_solution.m_coords.m_low_color) || (nc.m_high_color != m_best_solution.m_coords.m_high_color)) { - improved |= evaluate_solution(nc, true, &m_best_solution, false); + improved |= evaluate_solution(nc); } } } @@ -748,7 +586,7 @@ bool dxt1_endpoint_optimizer::refine_solution(int refinement_level) { nc.m_high_color = dxt1_block::pack_color(c[1], false); nc.canonicalize(); - improved |= evaluate_solution(nc, true, &m_best_solution, false); + improved |= evaluate_solution(nc); } } } @@ -763,7 +601,7 @@ bool dxt1_endpoint_optimizer::refine_solution(int refinement_level) { //----------------------------------------------------------------------------------------------------------------------------------------- // Primary endpoint optimization entrypoint. -bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_color) { +void dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_color) { vec3F orig_low_color(low_color); vec3F orig_high_color(high_color); @@ -818,13 +656,13 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c if (!solution_res.second) continue; - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } if (!m_best_solution.m_error) { // Got lucky - one of the previous endpoints is optimal. - return_solution(*m_pResults, m_best_solution); - return true; + return_solution(); + return; } } @@ -868,8 +706,10 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c // This entire process can be repeated up to X times (depending on the quality level) until a local minimum is established. // This method is very stable and scalable. It could be implemented more elegantly, but I'm now very cautious of touching this code. if (pass) { - low_color = unpack_to_vec3F_raw(m_best_solution.m_coords.m_low_color); - high_color = unpack_to_vec3F_raw(m_best_solution.m_coords.m_high_color); + color_quad_u8 low(dxt1_block::unpack_color(m_best_solution.m_coords.m_low_color, false)); + low_color = vec3F(low.r, low.g, low.b); + color_quad_u8 high(dxt1_block::unpack_color(m_best_solution.m_coords.m_high_color, false)); + high_color = vec3F(high.r, high.g, high.b); } const uint64 prev_best_error = m_best_solution.m_error; @@ -934,7 +774,7 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c if (!solution_res.second) continue; - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } } @@ -960,7 +800,7 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c solution_hash_map::insert_result solution_res(m_solutions_tried.insert(coords.m_low_color | (coords.m_high_color << 16U))); if (solution_res.second) - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } if (m_pParams->m_quality == cCRNDXTQualityUber) { @@ -983,7 +823,7 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c solution_hash_map::insert_result solution_res(m_solutions_tried.insert(coords.m_low_color | (coords.m_high_color << 16U))); if (solution_res.second) - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } } } @@ -1009,7 +849,7 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c solution_hash_map::insert_result solution_res(m_solutions_tried.insert(coords.m_low_color | (coords.m_high_color << 16U))); if (solution_res.second) - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } if (m_pParams->m_quality == cCRNDXTQualityUber) { @@ -1032,7 +872,7 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c solution_hash_map::insert_result solution_res(m_solutions_tried.insert(coords.m_low_color | (coords.m_high_color << 16U))); if (solution_res.second) - evaluate_solution(coords, true, &m_best_solution); + evaluate_solution(coords); } } } @@ -1070,23 +910,16 @@ bool dxt1_endpoint_optimizer::optimize_endpoints(vec3F& low_color, vec3F& high_c } } - return_solution(*m_pResults, m_best_solution); + return_solution(); if (m_pParams->m_endpoint_caching) { // Remember result for later reruse. m_prev_results[m_num_prev_results & (cMaxPrevResults - 1)] = m_best_solution.m_coords; m_num_prev_results++; } - - return true; } -static inline int mul_8bit(int a, int b) { - int t = a * b + 128; - return (t + (t >> 8)) >> 8; -} - -bool dxt1_endpoint_optimizer::handle_multicolor_block() { +void dxt1_endpoint_optimizer::handle_multicolor_block() { uint num_passes = 1; vec3F perceptual_weights(1.0f); @@ -1099,27 +932,18 @@ bool dxt1_endpoint_optimizer::handle_multicolor_block() { for (uint i = 0; i < m_unique_colors.size(); i++) { const color_quad_u8& c = m_unique_colors[i].m_color; - const float weight = (float)m_unique_colors[i].m_weight; - - int l = mul_8bit(c.r + c.g + c.b, 0x55); // /3 - ave_l += l; - l = math::maximum(1, l); - - float scale = weight / static_cast(l); - + int l = (c.r + c.g + c.b + 1) / 3; + float scale = (float)m_unique_colors[i].m_weight / math::maximum(1.0f, l); ave_redness += scale * c.r; ave_blueness += scale * c.b; + ave_l += l; } ave_redness /= m_total_unique_color_weight; ave_blueness /= m_total_unique_color_weight; ave_l /= m_total_unique_color_weight; - ave_l = math::minimum(1.0f, ave_l * 16.0f / 255.0f); - //float r = ave_l * powf(math::saturate(ave_redness / 3.0f), 5.0f); - //float b = ave_l * powf(math::saturate(ave_blueness / 3.0f), 5.0f); - float p = ave_l * powf(math::saturate(math::maximum(ave_redness, ave_blueness) * 1.0f / 3.0f), 2.75f); if (p >= 1.0f) @@ -1132,23 +956,11 @@ bool dxt1_endpoint_optimizer::handle_multicolor_block() { for (uint pass_index = 0; pass_index < num_passes; pass_index++) { compute_vectors(perceptual_weights); - compute_pca(m_principle_axis, m_norm_unique_colors_weighted, vec3F(.2837149f, 0.9540631f, 0.096277453f)); - -#if 0 - matrix44F m(matrix44F::make_scale_matrix(perceptual_weights[0], perceptual_weights[1], perceptual_weights[2])); - matrix44F im(m.get_inverse()); - im.transpose_in_place(); - m_principle_axis = m_principle_axis * im; -#else - // Purposely scale the components of the principle axis by the perceptual weighting. - // There's probably a cleaner way to go about this, but it works (more competitive in perceptual mode against nvdxt.exe or ATI_Compress). m_principle_axis[0] /= perceptual_weights[0]; m_principle_axis[1] /= perceptual_weights[1]; m_principle_axis[2] /= perceptual_weights[2]; -#endif m_principle_axis.normalize_in_place(); - if (num_passes > 1) { // Check for obviously wild principle axes and try to compensate by backing off the component weightings. if (fabs(m_principle_axis[0]) >= .795f) @@ -1194,15 +1006,7 @@ bool dxt1_endpoint_optimizer::handle_multicolor_block() { } // Now optimize the endpoints using the projection bounds on the (potentially skewed) principle axis as a starting point. - if (!optimize_endpoints(low_color, high_color)) - return false; - - return true; -} - -bool dxt1_endpoint_optimizer::handle_grayscale_block() { - // TODO - return true; + optimize_endpoints(low_color, high_color); } // Tries quantizing the block to 4 colors using vanilla LBG. It tries all combinations of the quantized results as potential endpoints. @@ -1300,7 +1104,7 @@ bool dxt1_endpoint_optimizer::try_median4(const vec3F& low_color, const vec3F& h sc.canonicalize(); - improved |= evaluate_solution(sc, true, &m_best_solution, false); + improved |= evaluate_solution(sc); } } @@ -1311,38 +1115,12 @@ bool dxt1_endpoint_optimizer::try_median4(const vec3F& low_color, const vec3F& h // Given candidate low/high endpoints, find the optimal selectors for 3 and 4 color blocks, compute the resulting error, // and use the candidate if it results in less error than the best found result so far. -bool dxt1_endpoint_optimizer::evaluate_solution( - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding) { - m_total_evals++; - - if ((!m_pSolutions) || (alternate_rounding)) { - if (m_pParams->m_quality >= cCRNDXTQualityBetter) - return evaluate_solution_uber(m_trial_solution, coords, early_out, pBest_solution, alternate_rounding); - else - return evaluate_solution_fast(m_trial_solution, coords, early_out, pBest_solution, alternate_rounding); - } - - evaluate_solution_uber(m_trial_solution, coords, false, NULL, alternate_rounding); - - CRNLIB_ASSERT(m_trial_solution.m_valid); - - // Caller has requested all considered candidate solutions for later analysis. - m_pSolutions->resize(m_pSolutions->size() + 1); - solution& new_solution = m_pSolutions->back(); - new_solution.m_selectors.resize(m_pParams->m_num_pixels); - new_solution.m_results.m_pSelectors = &new_solution.m_selectors[0]; - - return_solution(new_solution.m_results, m_trial_solution); - - if ((pBest_solution) && (m_trial_solution.m_error < m_best_solution.m_error)) { - *pBest_solution = m_trial_solution; - return true; - } - - return false; +bool dxt1_endpoint_optimizer::evaluate_solution(const dxt1_solution_coordinates& coords, bool alternate_rounding) { + if (m_evaluate_hc) + return evaluate_solution_hc(coords, alternate_rounding); + if (m_pParams->m_quality >= cCRNDXTQualityBetter) + return evaluate_solution_uber(coords, alternate_rounding); + return evaluate_solution_fast(coords, alternate_rounding); } inline uint dxt1_endpoint_optimizer::color_distance(bool perceptual, const color_quad_u8& e1, const color_quad_u8& e2, bool alpha) { @@ -1359,44 +1137,16 @@ inline uint dxt1_endpoint_optimizer::color_distance(bool perceptual, const color } else { return yd * yd; } - } else if (m_has_color_weighting) { - // Compute error using user provided color component weights. - int dr = (int)e1[0] - (int)e2[0]; - int dg = (int)e1[1] - (int)e2[1]; - int db = (int)e1[2] - (int)e2[2]; - - dr = (dr * dr) * m_pParams->m_color_weights[0]; - dg = (dg * dg) * m_pParams->m_color_weights[1]; - db = (db * db) * m_pParams->m_color_weights[2]; - - if (alpha) { - int da = (int)e1[3] - (int)e2[3]; - da = (da * da) * (m_pParams->m_color_weights[0] + m_pParams->m_color_weights[1] + m_pParams->m_color_weights[2]); - return dr + dg + db + da; - } else { - return dr + dg + db; - } } else { return color::color_distance(false, e1, e2, alpha); } } -bool dxt1_endpoint_optimizer::evaluate_solution_uber( - potential_solution& solution, - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding) { - solution.m_coords = coords; - solution.m_selectors.resize(m_unique_colors.size()); - - if ((pBest_solution) && (early_out)) - solution.m_error = pBest_solution->m_error; - else - solution.m_error = cUINT64_MAX; - - solution.m_alpha_block = false; - solution.m_valid = false; +bool dxt1_endpoint_optimizer::evaluate_solution_uber(const dxt1_solution_coordinates& coords, bool alternate_rounding) { + m_trial_solution.m_coords = coords; + m_trial_solution.m_selectors.resize(m_unique_colors.size()); + m_trial_solution.m_error = m_best_solution.m_error; + m_trial_solution.m_alpha_block = false; uint first_block_type = 0; uint last_block_type = 1; @@ -1446,7 +1196,7 @@ bool dxt1_endpoint_optimizer::evaluate_solution_uber( } trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); @@ -1477,7 +1227,7 @@ bool dxt1_endpoint_optimizer::evaluate_solution_uber( } trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); @@ -1506,7 +1256,7 @@ bool dxt1_endpoint_optimizer::evaluate_solution_uber( } trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); @@ -1531,7 +1281,7 @@ bool dxt1_endpoint_optimizer::evaluate_solution_uber( } trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); @@ -1539,55 +1289,43 @@ bool dxt1_endpoint_optimizer::evaluate_solution_uber( } } - if (trial_error < solution.m_error) { - solution.m_error = trial_error; - solution.m_alpha_block = (block_type != 0); - solution.m_selectors = m_trial_selectors; - solution.m_alternate_rounding = alternate_rounding; - solution.m_valid = true; + if (trial_error < m_trial_solution.m_error) { + m_trial_solution.m_error = trial_error; + m_trial_solution.m_alpha_block = (block_type != 0); + m_trial_solution.m_selectors = m_trial_selectors; + m_trial_solution.m_alternate_rounding = alternate_rounding; } } - solution.m_enforce_selector = !solution.m_alpha_block && solution.m_coords.m_low_color == solution.m_coords.m_high_color; - if (solution.m_enforce_selector) { + m_trial_solution.m_enforce_selector = !m_trial_solution.m_alpha_block && m_trial_solution.m_coords.m_low_color == m_trial_solution.m_coords.m_high_color; + if (m_trial_solution.m_enforce_selector) { uint s; - if ((solution.m_coords.m_low_color & 31) != 31) { - solution.m_coords.m_low_color++; + if ((m_trial_solution.m_coords.m_low_color & 31) != 31) { + m_trial_solution.m_coords.m_low_color++; s = 1; } else { - solution.m_coords.m_high_color--; + m_trial_solution.m_coords.m_high_color--; s = 0; } for (uint i = 0; i < m_unique_colors.size(); i++) - solution.m_selectors[i] = static_cast(s); - solution.m_enforced_selector = s; + m_trial_solution.m_selectors[i] = static_cast(s); + m_trial_solution.m_enforced_selector = s; } - if ((pBest_solution) && (solution.m_error < pBest_solution->m_error)) { - *pBest_solution = solution; + if (m_trial_solution.m_error < m_best_solution.m_error) { + m_best_solution = m_trial_solution; return true; } return false; } -bool dxt1_endpoint_optimizer::evaluate_solution_fast( - potential_solution& solution, - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding) { - solution.m_coords = coords; - solution.m_selectors.resize(m_unique_colors.size()); - - if ((pBest_solution) && (early_out)) - solution.m_error = pBest_solution->m_error; - else - solution.m_error = cUINT64_MAX; - - solution.m_alpha_block = false; - solution.m_valid = false; +bool dxt1_endpoint_optimizer::evaluate_solution_fast(const dxt1_solution_coordinates& coords, bool alternate_rounding) { + m_trial_solution.m_coords = coords; + m_trial_solution.m_selectors.resize(m_unique_colors.size()); + m_trial_solution.m_error = m_best_solution.m_error; + m_trial_solution.m_alpha_block = false; uint first_block_type = 0; uint last_block_type = 1; @@ -1648,7 +1386,7 @@ bool dxt1_endpoint_optimizer::evaluate_solution_fast( uint best_error = color_distance(m_perceptual, c, colors[best_color_index], false); trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); @@ -1678,43 +1416,109 @@ bool dxt1_endpoint_optimizer::evaluate_solution_fast( uint best_error = color_distance(m_perceptual, c, colors[best_color_index], false); trial_error += best_error * static_cast(m_unique_colors[unique_color_index].m_weight); - if (trial_error >= solution.m_error) + if (trial_error >= m_trial_solution.m_error) break; m_trial_selectors[unique_color_index] = static_cast(best_color_index); } } - if (trial_error < solution.m_error) { - solution.m_error = trial_error; - solution.m_alpha_block = (block_type != 0); - solution.m_selectors = m_trial_selectors; - solution.m_valid = true; + if (trial_error < m_trial_solution.m_error) { + m_trial_solution.m_error = trial_error; + m_trial_solution.m_alpha_block = (block_type != 0); + m_trial_solution.m_selectors = m_trial_selectors; } } - if ((!solution.m_alpha_block) && (solution.m_coords.m_low_color == solution.m_coords.m_high_color)) { + if ((!m_trial_solution.m_alpha_block) && (m_trial_solution.m_coords.m_low_color == m_trial_solution.m_coords.m_high_color)) { uint s; - if ((solution.m_coords.m_low_color & 31) != 31) { - solution.m_coords.m_low_color++; + if ((m_trial_solution.m_coords.m_low_color & 31) != 31) { + m_trial_solution.m_coords.m_low_color++; s = 1; } else { - solution.m_coords.m_high_color--; + m_trial_solution.m_coords.m_high_color--; s = 0; } for (uint i = 0; i < m_unique_colors.size(); i++) - solution.m_selectors[i] = static_cast(s); + m_trial_solution.m_selectors[i] = static_cast(s); } - if ((pBest_solution) && (solution.m_error < pBest_solution->m_error)) { - *pBest_solution = solution; + if (m_trial_solution.m_error < m_best_solution.m_error) { + m_best_solution = m_trial_solution; return true; } return false; } +bool dxt1_endpoint_optimizer::evaluate_solution_hc(const dxt1_solution_coordinates& coords, bool alternate_rounding) { + color_quad_u8 c0 = dxt1_block::unpack_color(coords.m_low_color, true); + color_quad_u8 c1 = dxt1_block::unpack_color(coords.m_high_color, true); + color_quad_u8 c2((c0.r * 2 + c1.r + alternate_rounding) / 3, (c0.g * 2 + c1.g + alternate_rounding) / 3, (c0.b * 2 + c1.b + alternate_rounding) / 3, 0); + color_quad_u8 c3((c1.r * 2 + c0.r + alternate_rounding) / 3, (c1.g * 2 + c0.g + alternate_rounding) / 3, (c1.b * 2 + c0.b + alternate_rounding) / 3, 0); + unique_color* color = m_unique_colors.get_ptr(); + uint count = m_unique_colors.size(); + uint64 error = 0; + if (m_perceptual) { + for (; count; color++, error < m_best_solution.m_error ? count-- : count = 0) { + uint e01 = math::minimum(color::color_distance(true, color->m_color, c0, false), color::color_distance(true, color->m_color, c1, false)); + uint e23 = math::minimum(color::color_distance(true, color->m_color, c2, false), color::color_distance(true, color->m_color, c3, false)); + error += math::minimum(e01, e23) * (uint64)color->m_weight; + } + } else { + for (; count; color++, error < m_best_solution.m_error ? count-- : count = 0) { + uint e01 = math::minimum(color::color_distance(false, color->m_color, c0, false), color::color_distance(false, color->m_color, c1, false)); + uint e23 = math::minimum(color::color_distance(false, color->m_color, c2, false), color::color_distance(false, color->m_color, c3, false)); + error += math::minimum(e01, e23) * (uint64)color->m_weight; + } + } + if (error >= m_best_solution.m_error) + return false; + m_best_solution.m_coords = coords; + m_best_solution.m_error = error; + m_best_solution.m_alpha_block = false; + m_best_solution.m_alternate_rounding = alternate_rounding; + m_best_solution.m_enforce_selector = m_best_solution.m_coords.m_low_color == m_best_solution.m_coords.m_high_color; + if (m_best_solution.m_enforce_selector) { + if ((m_best_solution.m_coords.m_low_color & 31) != 31) { + m_best_solution.m_coords.m_low_color++; + m_best_solution.m_enforced_selector = 1; + } else { + m_best_solution.m_coords.m_high_color--; + m_best_solution.m_enforced_selector = 0; + } + } + return true; +} + +void dxt1_endpoint_optimizer::compute_selectors() { + if (m_evaluate_hc) + compute_selectors_hc(); +} + +void dxt1_endpoint_optimizer::compute_selectors_hc() { + m_best_solution.m_selectors.resize(m_unique_colors.size()); + if (m_best_solution.m_enforce_selector) { + memset(m_best_solution.m_selectors.get_ptr(), m_best_solution.m_enforced_selector, m_best_solution.m_selectors.size()); + return; + } + color_quad_u8 c0 = dxt1_block::unpack_color(m_best_solution.m_coords.m_low_color, true); + color_quad_u8 c1 = dxt1_block::unpack_color(m_best_solution.m_coords.m_high_color, true); + color_quad_u8 c2((c0.r * 2 + c1.r + m_best_solution.m_alternate_rounding) / 3, (c0.g * 2 + c1.g + m_best_solution.m_alternate_rounding) / 3, (c0.b * 2 + c1.b + m_best_solution.m_alternate_rounding) / 3, 0); + color_quad_u8 c3((c1.r * 2 + c0.r + m_best_solution.m_alternate_rounding) / 3, (c1.g * 2 + c0.g + m_best_solution.m_alternate_rounding) / 3, (c1.b * 2 + c0.b + m_best_solution.m_alternate_rounding) / 3, 0); + for (uint i = 0, iEnd = m_unique_colors.size(); i < iEnd; i++) { + const color_quad_u8& c = m_unique_colors[i].m_color; + uint e0 = color::color_distance(m_perceptual, c, c0, false); + uint e1 = color::color_distance(m_perceptual, c, c1, false); + uint e2 = color::color_distance(m_perceptual, c, c2, false); + uint e3 = color::color_distance(m_perceptual, c, c3, false); + uint e01 = math::minimum(e0, e1); + uint e23 = math::minimum(e2, e3); + m_best_solution.m_selectors[i] = e01 <= e23 ? e01 == e0 ? 0 : 1 : e23 == e2 ? 2 : 3; + } +} + unique_color dxt1_endpoint_optimizer::lerp_color(const color_quad_u8& a, const color_quad_u8& b, float f, int rounding) { color_quad_u8 res; @@ -1802,29 +1606,20 @@ void dxt1_endpoint_optimizer::try_combinatorial_encoding() { m_unique_packed_colors.push_back(packed_color); } - if (m_unique_packed_colors.size() < 2) - return; - - for (uint alt_rounding = 0; alt_rounding < 2; alt_rounding++) { - for (uint i = 0; i < m_unique_packed_colors.size() - 1; i++) { - for (uint j = i + 1; j < m_unique_packed_colors.size(); j++) { - evaluate_solution( - dxt1_solution_coordinates(m_unique_packed_colors[i], m_unique_packed_colors[j]), - true, - (alt_rounding == 0) ? &m_best_solution : NULL, - (alt_rounding != 0)); - - if (m_trial_solution.m_error == 0) { - if (alt_rounding) - m_best_solution = m_trial_solution; - - return; - } - } - } + for (uint i = 0; m_best_solution.m_error && i < m_unique_packed_colors.size() - 1; i++) { + for (uint j = i + 1; m_best_solution.m_error && j < m_unique_packed_colors.size(); j++) + evaluate_solution(dxt1_solution_coordinates(m_unique_packed_colors[i], m_unique_packed_colors[j])); } - - return; + uint64 error = m_best_solution.m_error; + if (error) + m_best_solution.m_error = 1; + for (uint i = 0; m_best_solution.m_error && i < m_unique_packed_colors.size() - 1; i++) { + for (uint j = i + 1; m_best_solution.m_error && j < m_unique_packed_colors.size(); j++) + evaluate_solution(dxt1_solution_coordinates(m_unique_packed_colors[i], m_unique_packed_colors[j]), true); + } + if (m_best_solution.m_error) + m_best_solution.m_error = error; + } // The fourth (transparent) color in 3 color "transparent" blocks is black, which can be optionally exploited for small gains in DXT1 mode if the caller @@ -1859,8 +1654,7 @@ bool dxt1_endpoint_optimizer::try_alpha_as_black_optimization() { crnlib::vector trial_selectors(m_pParams->m_num_pixels); trial_results.m_pSelectors = trial_selectors.get_ptr(); - if (!compute_internal(trial_params, trial_results, NULL)) - return false; + compute_internal(trial_params, trial_results); CRNLIB_ASSERT(trial_results.m_alpha_block); @@ -1894,104 +1688,73 @@ bool dxt1_endpoint_optimizer::try_alpha_as_black_optimization() { return true; } -bool dxt1_endpoint_optimizer::compute_internal(const params& p, results& r, solution_vec* pSolutions) { - clear(); - +void dxt1_endpoint_optimizer::compute_internal(const params& p, results& r) { m_pParams = &p; m_pResults = &r; - m_pSolutions = pSolutions; - - m_has_color_weighting = (m_pParams->m_color_weights[0] != 1) || (m_pParams->m_color_weights[1] != 1) || (m_pParams->m_color_weights[2] != 1); - m_perceptual = m_pParams->m_perceptual && !m_has_color_weighting && !m_pParams->m_grayscale_sampling; - - find_unique_colors(); - + m_evaluate_hc = m_pParams->m_quality == cCRNDXTQualityUber && !m_pParams->m_pixels_have_alpha && !m_pParams->m_force_alpha_blocks + && !m_pParams->m_use_alpha_blocks && !m_pParams->m_grayscale_sampling; + m_perceptual = m_pParams->m_perceptual && !m_pParams->m_grayscale_sampling; + if (m_unique_color_hash_map.get_table_size() > 8192) + m_unique_color_hash_map.clear(); + else + m_unique_color_hash_map.reset(); + if (m_solutions_tried.get_table_size() > 8192) + m_solutions_tried.clear(); + m_unique_colors.clear(); + m_norm_unique_colors.clear(); + m_mean_norm_color.clear(); + m_norm_unique_colors_weighted.clear(); + m_mean_norm_color_weighted.clear(); + m_principle_axis.clear(); m_best_solution.clear(); - if (m_unique_colors.empty()) - return handle_all_transparent_block(); - else if ((m_unique_colors.size() == 1) && (!m_has_transparent_pixels)) - return handle_solid_block(); - else { - if (!handle_multicolor_block()) - return false; - - if ((m_all_pixels_grayscale) && (m_best_solution.m_error)) { - if (!handle_grayscale_block()) - return false; + m_total_unique_color_weight = 0; + m_unique_colors.reserve(m_pParams->m_num_pixels); + unique_color color(color_quad_u8(0), 1); + for (uint i = 0; i < m_pParams->m_num_pixels; i++) { + if (!m_pParams->m_pixels_have_alpha || m_pParams->m_pPixels[i].a >= m_pParams->m_dxt1a_alpha_threshold) { + color.m_color.m_u32 = m_pParams->m_pPixels[i].m_u32 | 0xFF000000; + unique_color_hash_map::insert_result ins_result(m_unique_color_hash_map.insert(color.m_color.m_u32, m_unique_colors.size())); + if (ins_result.second) { + m_unique_colors.push_back(color); + } else { + m_unique_colors[ins_result.first->second].m_weight++; + } + m_total_unique_color_weight++; } } + m_has_transparent_pixels = m_total_unique_color_weight != m_pParams->m_num_pixels; - return true; + if (!m_unique_colors.size()) { + m_pResults->m_low_color = 0; + m_pResults->m_high_color = 0; + m_pResults->m_alpha_block = true; + memset(m_pResults->m_pSelectors, 3, m_pParams->m_num_pixels); + } else if (m_unique_colors.size() == 1 && !m_has_transparent_pixels) { + int r = m_unique_colors[0].m_color.r; + int g = m_unique_colors[0].m_color.g; + int b = m_unique_colors[0].m_color.b; + uint low_color = (ryg_dxt::OMatch5[r][0] << 11) | (ryg_dxt::OMatch6[g][0] << 5) | ryg_dxt::OMatch5[b][0]; + uint high_color = (ryg_dxt::OMatch5[r][1] << 11) | (ryg_dxt::OMatch6[g][1] << 5) | ryg_dxt::OMatch5[b][1]; + evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); + if (m_pParams->m_use_alpha_blocks && m_best_solution.m_error) { + low_color = (ryg_dxt::OMatch5_3[r][0] << 11) | (ryg_dxt::OMatch6_3[g][0] << 5) | ryg_dxt::OMatch5_3[b][0]; + high_color = (ryg_dxt::OMatch5_3[r][1] << 11) | (ryg_dxt::OMatch6_3[g][1] << 5) | ryg_dxt::OMatch5_3[b][1]; + evaluate_solution(dxt1_solution_coordinates((uint16)low_color, (uint16)high_color)); + } + return_solution(); + } else { + handle_multicolor_block(); + } } -bool dxt1_endpoint_optimizer::compute(const params& p, results& r, solution_vec* pSolutions) { +bool dxt1_endpoint_optimizer::compute(const params& p, results& r) { if (!p.m_pPixels) return false; - - bool status = compute_internal(p, r, pSolutions); - if (!status) - return false; - - if ((m_pParams->m_use_alpha_blocks) && (m_pParams->m_use_transparent_indices_for_black) && (!m_pParams->m_pixels_have_alpha) && (!pSolutions)) { - if (!try_alpha_as_black_optimization()) - return false; - } - + compute_internal(p, r); + if (m_pParams->m_use_alpha_blocks && m_pParams->m_use_transparent_indices_for_black && !m_pParams->m_pixels_have_alpha) + return try_alpha_as_black_optimization(); return true; } -// Build array of unique colors and their weights. -void dxt1_endpoint_optimizer::find_unique_colors() { - m_has_transparent_pixels = false; - - uint num_opaque_pixels = 0; - - const uint alpha_thresh = m_pParams->m_pixels_have_alpha ? (m_pParams->m_dxt1a_alpha_threshold << 24U) : 0; - - const uint32* pSrc_pixels = reinterpret_cast(m_pParams->m_pPixels); - const uint32* pSrc_pixels_end = pSrc_pixels + m_pParams->m_num_pixels; - - m_unique_colors.resize(m_pParams->m_num_pixels); - uint num_unique_colors = 0; - - m_all_pixels_grayscale = true; - - do { - uint32 c = utils::read_le32(pSrc_pixels); - pSrc_pixels++; - - if (c < alpha_thresh) { - m_has_transparent_pixels = true; - continue; - } - - if (m_all_pixels_grayscale) { - uint r = c & 0xFF; - uint g = (c >> 8) & 0xFF; - uint b = (c >> 16) & 0xFF; - if ((r != g) || (r != b)) - m_all_pixels_grayscale = false; - } - - c |= 0xFF000000U; - - unique_color_hash_map::insert_result ins_result(m_unique_color_hash_map.insert(c, num_unique_colors)); - - if (ins_result.second) { - utils::write_le32(&m_unique_colors[num_unique_colors].m_color.m_u32, c); - m_unique_colors[num_unique_colors].m_weight = 1; - num_unique_colors++; - } else - m_unique_colors[ins_result.first->second].m_weight++; - - num_opaque_pixels++; - - } while (pSrc_pixels != pSrc_pixels_end); - - m_unique_colors.resize(num_unique_colors); - - m_total_unique_color_weight = num_opaque_pixels; -} - } // namespace crnlib diff --git a/crnlib/crn_dxt1.h b/crnlib/crn_dxt1.h index 5441376..6c1af29 100644 --- a/crnlib/crn_dxt1.h +++ b/crnlib/crn_dxt1.h @@ -122,9 +122,6 @@ class dxt1_endpoint_optimizer { m_endpoint_caching(true), m_use_transparent_indices_for_black(false), m_force_alpha_blocks(false) { - m_color_weights[0] = 1; - m_color_weights[1] = 1; - m_color_weights[2] = 1; } uint m_block_index; @@ -142,7 +139,6 @@ class dxt1_endpoint_optimizer { bool m_endpoint_caching; bool m_use_transparent_indices_for_black; bool m_force_alpha_blocks; - int m_color_weights[3]; }; struct results { @@ -162,47 +158,14 @@ class dxt1_endpoint_optimizer { uint8 m_enforced_selector; }; - struct solution { - solution() {} - - solution(const solution& other) { - m_results = other.m_results; - m_selectors = other.m_selectors; - m_results.m_pSelectors = m_selectors.begin(); - } - - solution& operator=(const solution& rhs) { - if (this == &rhs) - return *this; - - m_results = rhs.m_results; - m_selectors = rhs.m_selectors; - m_results.m_pSelectors = m_selectors.begin(); - - return *this; - } - - results m_results; - crnlib::vector m_selectors; - - inline bool operator<(const solution& other) const { - return m_results.m_error < other.m_results.m_error; - } - static inline bool coords_equal(const solution& lhs, const solution& rhs) { - return (lhs.m_results.m_low_color == rhs.m_results.m_low_color) && (lhs.m_results.m_high_color == rhs.m_results.m_high_color); - } - }; - typedef crnlib::vector solution_vec; - - bool compute(const params& p, results& r, solution_vec* pSolutions = NULL); + bool compute(const params& p, results& r); private: const params* m_pParams; results* m_pResults; - solution_vec* m_pSolutions; bool m_perceptual; - bool m_has_color_weighting; + bool m_evaluate_hc; typedef crnlib::vector unique_color_vec; @@ -225,8 +188,6 @@ class dxt1_endpoint_optimizer { vec3F m_principle_axis; - bool m_all_pixels_grayscale; - crnlib::vector m_unique_packed_colors; crnlib::vector m_trial_selectors; @@ -240,18 +201,15 @@ class dxt1_endpoint_optimizer { crnlib::vector m_lo_cells; crnlib::vector m_hi_cells; - uint m_total_evals; - struct potential_solution { potential_solution() - : m_coords(), m_error(cUINT64_MAX), m_alpha_block(false), m_valid(false) { + : m_coords(), m_error(cUINT64_MAX), m_alpha_block(false) { } dxt1_solution_coordinates m_coords; crnlib::vector m_selectors; uint64 m_error; bool m_alpha_block; - bool m_valid; bool m_alternate_rounding; bool m_enforce_selector; uint8 m_enforced_selector; @@ -261,7 +219,6 @@ class dxt1_endpoint_optimizer { m_selectors.resize(0); m_error = cUINT64_MAX; m_alpha_block = false; - m_valid = false; } bool are_selectors_all_equal() const { @@ -283,55 +240,30 @@ class dxt1_endpoint_optimizer { bool refine_solution(int refinement_level = 0); - bool evaluate_solution( - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding = false); + bool evaluate_solution(const dxt1_solution_coordinates& coords, bool alternate_rounding = false); + bool evaluate_solution_uber(const dxt1_solution_coordinates& coords, bool alternate_rounding); + bool evaluate_solution_fast(const dxt1_solution_coordinates& coords, bool alternate_rounding); + bool evaluate_solution_hc(const dxt1_solution_coordinates& coords, bool alternate_rounding); + void compute_selectors(); + void compute_selectors_hc(); - bool evaluate_solution_uber( - potential_solution& solution, - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding = false); - - bool evaluate_solution_fast( - potential_solution& solution, - const dxt1_solution_coordinates& coords, - bool early_out, - potential_solution* pBest_solution, - bool alternate_rounding = false); - - void clear(); void find_unique_colors(); - bool handle_all_transparent_block(); - bool handle_solid_block(); - bool handle_multicolor_block(); - bool handle_grayscale_block(); + void handle_multicolor_block(); void compute_pca(vec3F& axis, const vec3F_array& norm_colors, const vec3F& def); void compute_vectors(const vec3F& perceptual_weights); - void return_solution(results& results, const potential_solution& solution); + void return_solution(); void try_combinatorial_encoding(); void optimize_endpoint_comps(); - bool optimize_endpoints(vec3F& low_color, vec3F& high_color); + void optimize_endpoints(vec3F& low_color, vec3F& high_color); bool try_alpha_as_black_optimization(); bool try_average_block_as_solid(); bool try_median4(const vec3F& low_color, const vec3F& high_color); - bool compute_internal(const params& p, results& r, solution_vec* pSolutions); + void compute_internal(const params& p, results& r); unique_color lerp_color(const color_quad_u8& a, const color_quad_u8& b, float f, int rounding = 1); inline uint color_distance(bool perceptual, const color_quad_u8& e1, const color_quad_u8& e2, bool alpha); - - static inline vec3F unpack_to_vec3F_raw(uint16 packed_color); - static inline vec3F unpack_to_vec3F(uint16 packed_color); }; -inline void swap(dxt1_endpoint_optimizer::solution& a, dxt1_endpoint_optimizer::solution& b) { - std::swap(a.m_results, b.m_results); - a.m_selectors.swap(b.m_selectors); -} - } // namespace crnlib diff --git a/crnlib/crn_dxt_image.cpp b/crnlib/crn_dxt_image.cpp index 37e6833..b8498f2 100644 --- a/crnlib/crn_dxt_image.cpp +++ b/crnlib/crn_dxt_image.cpp @@ -1162,9 +1162,6 @@ void dxt_image::set_block_pixels( params.m_pPixels = pPixels; params.m_num_pixels = cDXTBlockSize * cDXTBlockSize; params.m_endpoint_caching = p.m_endpoint_caching; - params.m_color_weights[0] = p.m_color_weights[0]; - params.m_color_weights[1] = p.m_color_weights[1]; - params.m_color_weights[2] = p.m_color_weights[2]; if ((m_format != cDXT1) && (m_format != cDXT1A)) params.m_use_alpha_blocks = false; diff --git a/crnlib/crn_dxt_image.h b/crnlib/crn_dxt_image.h index 29c667b..b773e7c 100644 --- a/crnlib/crn_dxt_image.h +++ b/crnlib/crn_dxt_image.h @@ -120,9 +120,6 @@ class dxt_image { m_progress_range = 100; m_use_transparent_indices_for_black = false; m_pTask_pool = NULL; - m_color_weights[0] = 1; - m_color_weights[1] = 1; - m_color_weights[2] = 1; } void init(const crn_comp_params& params) { @@ -160,8 +157,6 @@ class dxt_image { uint m_progress_range; task_pool* m_pTask_pool; - - int m_color_weights[3]; }; bool init(dxt_format fmt, const image_u8& img, const pack_params& p = dxt_image::pack_params());