tgsi: add TGSI_TEXTURE_SHADOWCUBEMAP

This adds support for shadow cubemap texture sampling instructions.

This is required for GL 3.0.

Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Dave Airlie
2012-01-11 13:22:22 +00:00
parent ec4d691474
commit 0ec30805a4
4 changed files with 6 additions and 1 deletions

View File

@@ -1865,6 +1865,7 @@ exec_tex(struct tgsi_exec_machine *mach,
&r[0], &r[1], &r[2], &r[3]); /* outputs */ &r[0], &r[1], &r[2], &r[3]); /* outputs */
break; break;
case TGSI_TEXTURE_SHADOW2D_ARRAY: case TGSI_TEXTURE_SHADOW2D_ARRAY:
case TGSI_TEXTURE_SHADOWCUBE:
FETCH(&r[0], 0, CHAN_X); FETCH(&r[0], 0, CHAN_X);
FETCH(&r[1], 0, CHAN_Y); FETCH(&r[1], 0, CHAN_Y);
FETCH(&r[2], 0, CHAN_Z); FETCH(&r[2], 0, CHAN_Z);
@@ -2182,6 +2183,7 @@ exec_sample(struct tgsi_exec_machine *mach,
break; break;
case TGSI_TEXTURE_SHADOW2D_ARRAY: case TGSI_TEXTURE_SHADOW2D_ARRAY:
case TGSI_TEXTURE_SHADOWCUBE:
FETCH(&r[0], 0, CHAN_X); FETCH(&r[0], 0, CHAN_X);
FETCH(&r[1], 0, CHAN_Y); FETCH(&r[1], 0, CHAN_Y);
FETCH(&r[2], 0, CHAN_Z); FETCH(&r[2], 0, CHAN_Z);

View File

@@ -90,6 +90,7 @@ const char *tgsi_texture_names[TGSI_TEXTURE_COUNT] =
"2DARRAY", "2DARRAY",
"SHADOW1DARRAY", "SHADOW1DARRAY",
"SHADOW2DARRAY", "SHADOW2DARRAY",
"SHADOWCUBE"
}; };
const char *tgsi_property_names[TGSI_PROPERTY_COUNT] = const char *tgsi_property_names[TGSI_PROPERTY_COUNT] =

View File

@@ -284,6 +284,7 @@ tgsi_util_get_inst_usage_mask(const struct tgsi_full_instruction *inst,
read_mask = TGSI_WRITEMASK_XYZ; read_mask = TGSI_WRITEMASK_XYZ;
break; break;
case TGSI_TEXTURE_SHADOW2D_ARRAY: case TGSI_TEXTURE_SHADOW2D_ARRAY:
case TGSI_TEXTURE_SHADOWCUBE:
read_mask = TGSI_WRITEMASK_XYZW; read_mask = TGSI_WRITEMASK_XYZW;
break; break;
default: default:

View File

@@ -454,7 +454,8 @@ struct tgsi_instruction_label
#define TGSI_TEXTURE_2D_ARRAY 10 #define TGSI_TEXTURE_2D_ARRAY 10
#define TGSI_TEXTURE_SHADOW1D_ARRAY 11 #define TGSI_TEXTURE_SHADOW1D_ARRAY 11
#define TGSI_TEXTURE_SHADOW2D_ARRAY 12 #define TGSI_TEXTURE_SHADOW2D_ARRAY 12
#define TGSI_TEXTURE_COUNT 13 #define TGSI_TEXTURE_SHADOWCUBE 13
#define TGSI_TEXTURE_COUNT 14
struct tgsi_instruction_texture struct tgsi_instruction_texture
{ {