mirror of
https://github.com/scratchfoundation/bgfx.git
synced 2025-02-17 20:31:57 -05:00
Added RGBA8 texture format.
This commit is contained in:
parent
64a32ecdf5
commit
d858dde912
7 changed files with 28 additions and 8 deletions
|
@ -104,6 +104,7 @@ typedef enum bgfx_texture_format
|
|||
BGFX_TEXTURE_FORMAT_RG32,
|
||||
BGFX_TEXTURE_FORMAT_RG32F,
|
||||
BGFX_TEXTURE_FORMAT_BGRA8,
|
||||
BGFX_TEXTURE_FORMAT_RGBA8,
|
||||
BGFX_TEXTURE_FORMAT_RGBA16,
|
||||
BGFX_TEXTURE_FORMAT_RGBA16F,
|
||||
BGFX_TEXTURE_FORMAT_RGBA32,
|
||||
|
|
|
@ -142,6 +142,7 @@ namespace bgfx
|
|||
RG32,
|
||||
RG32F,
|
||||
BGRA8,
|
||||
RGBA8,
|
||||
RGBA16,
|
||||
RGBA16F,
|
||||
RGBA32,
|
||||
|
|
|
@ -44,9 +44,17 @@ vec2 unpackHalf2x16(uint _x)
|
|||
|
||||
#define SHARED groupshared
|
||||
|
||||
#define IMAGE2D_RO(_name, _reg) Texture2D _name : register(t[_reg])
|
||||
#define IMAGE2D_RW(_name, _reg) RWTexture2D<float4> _name : register(u[_reg])
|
||||
#define IMAGE2D_WR(_name, _reg) IMAGE2D_RW(_name, _reg)
|
||||
#define r32ui uint
|
||||
#define r32f float
|
||||
#define rg16f float2
|
||||
#define rgba8 float4
|
||||
|
||||
#define IMAGE2D_RO( _name, _format, _reg) Texture2D<_format> _name : register(t[_reg])
|
||||
#define UIMAGE2D_RO(_name, _format, _reg) Texture2D<_format> _name : register(t[_reg])
|
||||
#define IMAGE2D_WR( _name, _format, _reg) RWTexture2D<_format> _name : register(u[_reg])
|
||||
#define UIMAGE2D_WR(_name, _format, _reg) RWTexture2D<_format> _name : register(u[_reg])
|
||||
#define IMAGE2D_RW( _name, _reg) RWTexture2D<float> _name : register(u[_reg])
|
||||
#define UIMAGE2D_RW(_name, _reg) RWTexture2D<uint> _name : register(u[_reg])
|
||||
|
||||
#define BUFFER_RO(_name, _struct, _reg) Buffer<_struct> _name : register(b[_reg])
|
||||
#define BUFFER_RW(_name, _struct, _reg) RWBuffer<_struct> _name : register(u[_reg])
|
||||
|
@ -153,13 +161,16 @@ uint atomicCompSwap(uint _mem, uint _compare, uint _data)
|
|||
|
||||
#define SHARED shared
|
||||
|
||||
#define __IMAGE2D_XX(_name, _reg, _access) \
|
||||
layout(rgba8, binding=_reg) _access uniform highp image2D _name
|
||||
#define __IMAGE_XX(_name, _format, _reg, _image, _access) \
|
||||
layout(_format, binding=_reg) _access uniform highp _image _name
|
||||
|
||||
#define readwrite
|
||||
#define IMAGE2D_RO(_name, _reg) __IMAGE2D_XX(_name, _reg, readonly)
|
||||
#define IMAGE2D_RW(_name, _reg) __IMAGE2D_XX(_name, _reg, readwrite)
|
||||
#define IMAGE2D_WR(_name, _reg) __IMAGE2D_XX(_name, _reg, writeonly)
|
||||
#define IMAGE2D_RO( _name, _format, _reg) __IMAGE_XX(_name, _format, _reg, image2D, readonly)
|
||||
#define UIMAGE2D_RO(_name, _format, _reg) __IMAGE_XX(_name, _format, _reg, uimage2D, readonly)
|
||||
#define IMAGE2D_WR( _name, _format, _reg) __IMAGE_XX(_name, _format, _reg, image2D, writeonly)
|
||||
#define UIMAGE2D_WR(_name, _format, _reg) __IMAGE_XX(_name, _format, _reg, uimage2D, writeonly)
|
||||
#define IMAGE2D_RW( _name, _reg) __IMAGE_XX(_name, r32f, _reg, image2D, readwrite)
|
||||
#define UIMAGE2D_RW(_name, _reg) __IMAGE_XX(_name, r32ui, _reg, uimage2D, readwrite)
|
||||
|
||||
#define __BUFFER_XX(_name, _type, _reg, _access) \
|
||||
layout(std430, binding=_reg) _access buffer _name ## Buffer \
|
||||
|
|
|
@ -49,6 +49,7 @@ namespace bgfx
|
|||
{ 64, 1, 1, 8, 1, 1 }, // RG32
|
||||
{ 64, 1, 1, 8, 1, 1 }, // RG32F
|
||||
{ 32, 1, 1, 4, 1, 1 }, // BGRA8
|
||||
{ 32, 1, 1, 4, 1, 1 }, // RGBA8
|
||||
{ 64, 1, 1, 8, 1, 1 }, // RGBA16
|
||||
{ 64, 1, 1, 8, 1, 1 }, // RGBA16F
|
||||
{ 128, 1, 1, 16, 1, 1 }, // RGBA32
|
||||
|
@ -102,6 +103,7 @@ namespace bgfx
|
|||
"RG32", // RG32
|
||||
"RG32F", // RG32F
|
||||
"BGRA8", // BGRA8
|
||||
"RGBA8", // RGBA8
|
||||
"RGBA16", // RGBA16
|
||||
"RGBA16F", // RGBA16F
|
||||
"RGBA32", // RGBA32
|
||||
|
|
|
@ -213,6 +213,7 @@ namespace bgfx
|
|||
{ DXGI_FORMAT_R32G32_UINT, DXGI_FORMAT_R32G32_UINT, DXGI_FORMAT_UNKNOWN }, // RG32
|
||||
{ DXGI_FORMAT_R32G32_FLOAT, DXGI_FORMAT_R32G32_FLOAT, DXGI_FORMAT_UNKNOWN }, // RG32F
|
||||
{ DXGI_FORMAT_B8G8R8A8_UNORM, DXGI_FORMAT_B8G8R8A8_UNORM, DXGI_FORMAT_UNKNOWN }, // BGRA8
|
||||
{ DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_FORMAT_R8G8B8A8_UNORM, DXGI_FORMAT_UNKNOWN }, // RGBA8
|
||||
{ DXGI_FORMAT_R16G16B16A16_UNORM, DXGI_FORMAT_R16G16B16A16_UNORM, DXGI_FORMAT_UNKNOWN }, // RGBA16
|
||||
{ DXGI_FORMAT_R16G16B16A16_FLOAT, DXGI_FORMAT_R16G16B16A16_FLOAT, DXGI_FORMAT_UNKNOWN }, // RGBA16F
|
||||
{ DXGI_FORMAT_R32G32B32A32_UINT, DXGI_FORMAT_R32G32B32A32_UINT, DXGI_FORMAT_UNKNOWN }, // RGBA32
|
||||
|
|
|
@ -219,6 +219,7 @@ namespace bgfx
|
|||
{ D3DFMT_UNKNOWN }, // RG32
|
||||
{ D3DFMT_G32R32F }, // RG32F
|
||||
{ D3DFMT_A8R8G8B8 }, // BGRA8
|
||||
{ D3DFMT_A8R8G8B8 }, // RGBA8
|
||||
{ D3DFMT_A16B16G16R16 }, // RGBA16
|
||||
{ D3DFMT_A16B16G16R16F }, // RGBA16F
|
||||
{ D3DFMT_UNKNOWN }, // RGBA32
|
||||
|
|
|
@ -215,6 +215,7 @@ namespace bgfx
|
|||
{ GL_RG32UI, GL_RG, GL_UNSIGNED_INT, true }, // RG32
|
||||
{ GL_RG32F, GL_RG, GL_FLOAT, true }, // RG32F
|
||||
{ GL_RGBA, GL_RGBA, GL_UNSIGNED_BYTE, true }, // BGRA8
|
||||
{ GL_RGBA, GL_RGBA, GL_UNSIGNED_BYTE, true }, // RGBA8
|
||||
{ GL_RGBA16, GL_RGBA, GL_UNSIGNED_BYTE, true }, // RGBA16
|
||||
{ GL_RGBA16F, GL_RGBA, GL_HALF_FLOAT, true }, // RGBA16F
|
||||
{ GL_RGBA32UI, GL_RGBA, GL_UNSIGNED_INT, true }, // RGBA32
|
||||
|
@ -268,6 +269,7 @@ namespace bgfx
|
|||
GL_RG32UI, // RG32
|
||||
GL_RG32F, // RG32F
|
||||
GL_RGBA8, // BGRA8
|
||||
GL_RGBA8, // RGBA8
|
||||
GL_RGBA16, // RGBA16
|
||||
GL_RGBA16F, // RGBA16F
|
||||
GL_RGBA32UI, // RGBA32
|
||||
|
@ -321,6 +323,7 @@ namespace bgfx
|
|||
GL_RG32UI, // RG32
|
||||
GL_RG32F, // RG32F
|
||||
GL_RGBA8, // BGRA8
|
||||
GL_RGBA8, // RGBA8
|
||||
GL_RGBA16, // RGBA16
|
||||
GL_RGBA16F, // RGBA16F
|
||||
GL_RGBA32UI, // RGBA32
|
||||
|
|
Loading…
Reference in a new issue