Lines Matching refs:bitmask
606 * Given a face and pname value (ala glColorMaterial), compute a bitmask
613 GLuint bitmask = 0;
615 /* Make a bitmask indicating what material attribute(s) we're updating */
618 bitmask |= MAT_BIT_FRONT_EMISSION | MAT_BIT_BACK_EMISSION;
621 bitmask |= MAT_BIT_FRONT_AMBIENT | MAT_BIT_BACK_AMBIENT;
624 bitmask |= MAT_BIT_FRONT_DIFFUSE | MAT_BIT_BACK_DIFFUSE;
627 bitmask |= MAT_BIT_FRONT_SPECULAR | MAT_BIT_BACK_SPECULAR;
630 bitmask |= MAT_BIT_FRONT_SHININESS | MAT_BIT_BACK_SHININESS;
633 bitmask |= MAT_BIT_FRONT_AMBIENT | MAT_BIT_BACK_AMBIENT;
634 bitmask |= MAT_BIT_FRONT_DIFFUSE | MAT_BIT_BACK_DIFFUSE;
637 bitmask |= MAT_BIT_FRONT_INDEXES | MAT_BIT_BACK_INDEXES;
645 bitmask &= FRONT_MATERIAL_BITS;
648 bitmask &= BACK_MATERIAL_BITS;
655 if (bitmask & ~legal) {
660 return bitmask;
668 _mesa_update_material( struct gl_context *ctx, GLuint bitmask )
673 _mesa_debug(ctx, "_mesa_update_material, mask 0x%x\n", bitmask);
675 if (!bitmask)
679 if (bitmask & MAT_BIT_FRONT_AMBIENT) {
690 if (bitmask & MAT_BIT_BACK_AMBIENT) {
702 if (bitmask & (MAT_BIT_FRONT_EMISSION | MAT_BIT_FRONT_AMBIENT)) {
708 if (bitmask & (MAT_BIT_BACK_EMISSION | MAT_BIT_BACK_AMBIENT)) {
715 if (bitmask & MAT_BIT_FRONT_DIFFUSE) {
726 if (bitmask & MAT_BIT_BACK_DIFFUSE) {
738 if (bitmask & MAT_BIT_FRONT_SPECULAR) {
749 if (bitmask & MAT_BIT_BACK_SPECULAR) {
764 * according to the bitmask in _ColorMaterialBitmask, which is
770 GLbitfield bitmask = ctx->Light._ColorMaterialBitmask;
773 while (bitmask) {
774 const int i = u_bit_scan(&bitmask);
788 GLuint bitmask;
799 bitmask = _mesa_material_bitmask(ctx, face, mode, legal, "glColorMaterial");
800 if (bitmask == 0)
803 if (ctx->Light._ColorMaterialBitmask == bitmask &&
809 ctx->Light._ColorMaterialBitmask = bitmask;