Форум программистов, компьютерный форум CyberForum.ru

Артефакты при компрессии RGB->DXT5 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выбор среды програмирования http://www.cyberforum.ru/cpp-beginners/thread927628.html
на каком Visual Studio лутше програмировать ? пока у меня стоит 12 но многие говорят что лутше 10 или вообще 08 , так посоветуйте какой лутше ?
C++ О великий void Помогите реализовать! Не понимаю как работать с этим void. Напишите программу, которая выдает запрос на ввод значения часов и значения минут. Функция main( ) должна передать эти два значения функции, имеющей тип void, которая отображает эти два значения в следующем виде: Enter the number of hours : 9 Enter the number of minutes : 28 Time : 9:28 http://www.cyberforum.ru/cpp-beginners/thread927584.html
C++ Ускорение алгоритмов
Имеется код, нужно его ускорить. (Помогите тупому!!!!!!!) #include <stdio.h> #include <iostream> #include <string> #include <stdlib.h> int c (const void* a, const void*b) { return *(int *)a- *(int *)b; }
Поиск литературы C++
Появилась необходимость работы с файлом excel. Необходим взять из файла информацию для дальнейшей ее обработки. Подскажите пожалуйста книги, где я мог бы это прочитать. С/С++
C++ Перегруженные знаки в дружественных функциях шаблона класса http://www.cyberforum.ru/cpp-beginners/thread927537.html
Здравствуйте! Не могу найти ошибку, только начал тренироваться с шаблонами. Помогите пожалуйста! #include "stdafx.h" #include <iostream> using namespace std; template<class Type> class fraction { private: Type numerator;
C++ Калькулятор В идеале, то что представлено ниже является калькулятором с 4-мя действиями (+,-,*,/) и с произвольным количеством переменных. Но вот не работает он : С. Он основан на примере из Страуструпа. Я над ним мучался и походу понял, что он все же считает, однако у меня небольшие проблемы с выходом из цикла. В общем, сначала мы вводим одно число, потом (уже в цикле) вводим знак, а следом за ним другое... подробнее

Показать сообщение отдельно
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5534 / 2568 / 234
Регистрация: 01.11.2011
Сообщений: 6,346
Завершенные тесты: 1
24.07.2013, 10:08     Артефакты при компрессии RGB->DXT5
Как можно понять из описания, у DXT5, в отличие от DXT1, есть обработка альфа канала. DXT1 же:
The DXT1 compression creates correct results regard less of the alpha information in the source texture and never outputs transparent pixels
Цитата Сообщение от Kukurudza Посмотреть сообщение
Алгоритм должен выдавать на одних и тех же данных один и тот же ответ всегда.
Не факт. Алгоритм же допускает приближенные значения. Он работает с усредненными величинами. В том его и суть. То есть он
1) берет пару, каждая из четырех пикселей (всего восемь, но преобразование производится над группой из четырех)
2) вычисляет среди каждой четверки максимальные и минимальные значения для каждого цвета (и альфа канала)
3) находит разницу максимального и минимального значения каждого цвета
4) смещает (относительно своего же адресного пространства каждого пикселя как я понял) в соответствии с маской полученные значения, формируя тем самым DXT блок
5) сохраняет (тупо накладывает в одно все полученные, смещенные значения) готовый DXT блок из восьми пикселей
6) подготавливает делители в соответствии с диапазоном (вероятно вычисляет на сколько нужно сместить каждый полученный блок, чтобы можно было составить из них обратно изображение такого же размера как и было)
7) делит
8) формирует блок и сохраняет во временный буфер
9) формирует самый последний, уже настоящий, законченный, готовый DXT блок.

В пункте 5 уже начинается расхождение DXT1 с DXT5 - у промежуточного блока DXT5 в два раза больше информации (он в два раза больше), нежели блок DXT1, за счет учитывания альфа канала. А в пункте 2 идет вычисление самих значений, с которыми работает пункт 5. Следовательно надо искать косяк где-то в этих преобразовании. Я думаю. Но вообще в ассемблере не силен, поэтому детальнее подсказать не могу.
 
Текущее время: 12:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru