Add single color DXT1a compressor.
This commit is contained in:
parent
9d47e100f1
commit
fa5e1f5a07
@ -21,6 +21,8 @@
|
|||||||
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
// OTHER DEALINGS IN THE SOFTWARE.
|
// OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
#include <nvcore/Containers.h> // swap
|
||||||
|
|
||||||
#include <nvmath/Color.h>
|
#include <nvmath/Color.h>
|
||||||
|
|
||||||
#include <nvimage/ColorBlock.h>
|
#include <nvimage/ColorBlock.h>
|
||||||
@ -555,6 +557,20 @@ void QuickCompress::compressDXT1(const ColorBlock & rgba, BlockDXT1 * dxtBlock)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void QuickCompress::compressDXT1a(Color32 rgba, BlockDXT1 * dxtBlock)
|
||||||
|
{
|
||||||
|
if (rgba.a == 0)
|
||||||
|
{
|
||||||
|
dxtBlock->col0.u = 0;
|
||||||
|
dxtBlock->col1.u = 0;
|
||||||
|
dxtBlock->indices = 0xFFFFFFFF;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
compressDXT1(rgba, dxtBlock);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void QuickCompress::compressDXT1a(const ColorBlock & rgba, BlockDXT1 * dxtBlock)
|
void QuickCompress::compressDXT1a(const ColorBlock & rgba, BlockDXT1 * dxtBlock)
|
||||||
{
|
{
|
||||||
if (!rgba.hasAlpha())
|
if (!rgba.hasAlpha())
|
||||||
|
@ -37,8 +37,9 @@ namespace nv
|
|||||||
|
|
||||||
namespace QuickCompress
|
namespace QuickCompress
|
||||||
{
|
{
|
||||||
void compressDXT1(const Color32 rgba, BlockDXT1 * dxtBlock);
|
void compressDXT1(Color32 rgba, BlockDXT1 * dxtBlock);
|
||||||
void compressDXT1(const ColorBlock & rgba, BlockDXT1 * dxtBlock);
|
void compressDXT1(const ColorBlock & rgba, BlockDXT1 * dxtBlock);
|
||||||
|
void compressDXT1a(Color32 rgba, BlockDXT1 * dxtBlock);
|
||||||
void compressDXT1a(const ColorBlock & rgba, BlockDXT1 * dxtBlock);
|
void compressDXT1a(const ColorBlock & rgba, BlockDXT1 * dxtBlock);
|
||||||
void compressDXT1G(const ColorBlock & rgba, BlockDXT1 * block);
|
void compressDXT1G(const ColorBlock & rgba, BlockDXT1 * block);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user