Lines Matching defs:face

3017 Vec2 projectToFace (CubeFace face, const Vec3& coord)
3028 switch (face)
3054 const CubeFace face = selectCubeFace(coords);
3055 return CubeFaceFloatCoords(face, projectToFace(face, coords));
3058 // Checks if origCoords.coords is in bounds defined by size; if not, return a CubeFaceIntCoords with face set to the appropriate neighboring face and coords transformed accordingly.
3059 // \note If both x and y in origCoords.coords are out of bounds, this returns with face CUBEFACE_LAST, signifying that there is no unique neighboring face.
3077 switch (origCoords.face)
3088 // Find an appropriate face to re-map the coordinates to.
3135 hasBothCoordsOutOfBounds[i] = coords.face == CUBEFACE_LAST;
3137 sampleColors[i] = lookup(faceAccesses[coords.face], coords.s, coords.t, depth);
3202 static Vec4 sampleLevelArrayCubeSeamless (const ConstPixelBufferAccess* const (&faces)[CUBEFACE_LAST], int numLevels, CubeFace face, const Sampler& sampler, float s, float t, int depth, float lod, ImageViewMinLodParams* minLodParams)
3227 tcu::Vec4 t0 = sampleCubeSeamlessNearest(faces[face][level0], sampler, s, t, depth);
3234 tcu::Vec4 t1 = sampleCubeSeamlessNearest(faces[face][level1], sampler, s, t, depth);
3246 Vec4 result = sampleCubeSeamlessLinear(faceAccesses, face, sampler, s, t, depth);
3258 result += sampleCubeSeamlessLinear(faceAccesses, face, sampler, s, t, depth) * deFloatFrac(minLodRelative);
3274 return sampleCubeSeamlessNearest(faces[face][level], sampler, s, t, depth);
3283 return sampleCubeSeamlessLinear(faceAccesses, face, sampler, s, t, depth);
3303 t0 = sampleCubeSeamlessNearest(faces[face][level0], sampler, s, t, depth);
3304 t1 = sampleCubeSeamlessNearest(faces[face][level1], sampler, s, t, depth);
3318 t0 = sampleCubeSeamlessLinear(faceAccesses0, face, sampler, s, t, depth);
3319 t1 = sampleCubeSeamlessLinear(faceAccesses1, face, sampler, s, t, depth);
3373 hasBothCoordsOutOfBounds[i] = coords.face == CUBEFACE_LAST;
3377 const bool isFixedPointDepth = isFixedPointDepthTextureFormat(faceAccesses[coords.face].getFormat());
3379 sampleRes[i] = execCompare(faceAccesses[coords.face].getPixel(coords.s, coords.t), sampler.compare, sampler.compareChannel, ref, isFixedPointDepth);
3420 static float sampleLevelArrayCubeSeamlessCompare (const ConstPixelBufferAccess* const (&faces)[CUBEFACE_LAST], int numLevels, CubeFace face, const Sampler& sampler, float ref, float s, float t, float lod)
3428 return sampleCubeSeamlessNearestCompare(faces[face][0], sampler, ref, s, t);
3436 return sampleCubeSeamlessLinearCompare(faceAccesses, face, sampler, ref, s, t);
3447 return sampleCubeSeamlessNearestCompare(faces[face][level], sampler, ref, s, t);
3456 return sampleCubeSeamlessLinearCompare(faceAccesses, face, sampler, ref, s, t);
3473 t0 = sampleCubeSeamlessNearestCompare(faces[face][level0], sampler, ref, s, t);
3474 t1 = sampleCubeSeamlessNearestCompare(faces[face][level1], sampler, ref, s, t);
3488 t0 = sampleCubeSeamlessLinearCompare(faceAccesses0, face, sampler, ref, s, t);
3489 t1 = sampleCubeSeamlessLinearCompare(faceAccesses1, face, sampler, ref, s, t);
3503 static inline ConstPixelBufferAccess getCubeArrayFaceAccess (const ConstPixelBufferAccess* const levels, int levelNdx, int slice, CubeFace face)
3506 const int depth = (slice * 6) + getCubeArrayFaceIndex(face);
3511 static Vec4 sampleCubeArraySeamless (const ConstPixelBufferAccess* const levels, int numLevels, int slice, CubeFace face, const Sampler& sampler, float s, float t, float lod)
3513 const int faceDepth = (slice * 6) + getCubeArrayFaceIndex(face);
3528 return sampleCubeSeamlessLinear(faceAccesses, face, sampler, s, t, 0);
3548 return sampleCubeSeamlessLinear(faceAccesses, face, sampler, s, t, 0);
3580 t0 = sampleCubeSeamlessLinear(faceAccesses0, face, sampler, s, t, 0);
3581 t1 = sampleCubeSeamlessLinear(faceAccesses1, face, sampler, s, t, 0);
3593 static float sampleCubeArraySeamlessCompare (const ConstPixelBufferAccess* const levels, int numLevels, int slice, CubeFace face, const Sampler& sampler, float ref, float s, float t, float lod)
3595 const int faceDepth = (slice * 6) + getCubeArrayFaceIndex(face);
3610 return sampleCubeSeamlessLinearCompare(faceAccesses, face, sampler, ref, s, t);
3630 return sampleCubeSeamlessLinearCompare(faceAccesses, face, sampler, ref, s, t);
3662 t0 = sampleCubeSeamlessLinearCompare(faceAccesses0, face, sampler, ref, s, t);
3663 t1 = sampleCubeSeamlessLinearCompare(faceAccesses1, face, sampler, ref, s, t);
3891 // Computes (face, s, t).
3894 return sampleLevelArrayCubeSeamless(m_levels, m_numLevels, coords.face, sampler, coords.s, coords.t, 0 /* depth */, lod, m_minLodParams);
3896 return sampleLevelArray2D(m_levels[coords.face], m_numLevels, sampler, coords.s, coords.t, 0 /* depth */, lod, m_es2, m_minLodParams);
3903 // Computes (face, s, t).
3906 return sampleLevelArrayCubeSeamlessCompare(m_levels, m_numLevels, coords.face, sampler, ref, coords.s, coords.t, lod);
3908 return sampleLevelArray2DCompare(m_levels[coords.face], m_numLevels, sampler, ref, coords.s, coords.t, lod, IVec3(0, 0, 0));
3932 getCubeLinearSamples(faceAccesses, coords.face, u, v, 0, sampleColors);
3969 for (int face = 0; face < CUBEFACE_LAST; face++)
3971 m_data[face].resize(numLevels);
3972 m_access[face].resize(numLevels);
3973 levels[face] = &m_access[face][0];
3986 for (int face = 0; face < CUBEFACE_LAST; face++)
3988 m_data[face].resize(numLevels);
3989 m_access[face].resize(numLevels);
3990 levels[face] = &m_access[face][0];
3997 for (int face = 0; face < CUBEFACE_LAST; face++)
3999 if (!other.isLevelEmpty((CubeFace)face, levelNdx))
4001 allocLevel((CubeFace)face, levelNdx);
4002 copy(getLevelFace(levelNdx, (CubeFace)face),
4003 other.getLevelFace(levelNdx, (CubeFace)face));
4017 for (int face = 0; face < CUBEFACE_LAST; face++)
4019 m_data[face].resize(numLevels);
4020 m_access[face].resize(numLevels);
4021 levels[face] = &m_access[face][0];
4030 for (int face = 0; face < CUBEFACE_LAST; face++)
4032 if (!isLevelEmpty((CubeFace)face, levelNdx))
4033 clearLevel((CubeFace)face, levelNdx);
4035 if (!other.isLevelEmpty((CubeFace)face, levelNdx))
4037 allocLevel((CubeFace)face, levelNdx);
4038 copy(getLevelFace(levelNdx, (CubeFace)face),
4039 other.getLevelFace(levelNdx, (CubeFace)face));
4051 void TextureCube::allocLevel (tcu::CubeFace face, int levelNdx)
4055 DE_ASSERT(isLevelEmpty(face, levelNdx));
4057 m_data[face][levelNdx].setStorage(dataSize);
4058 m_access[face][levelNdx] = PixelBufferAccess(m_format, size, size, 1, m_data[face][levelNdx].getPtr());
4061 void TextureCube::clearLevel (tcu::CubeFace face, int levelNdx)
4063 DE_ASSERT(!isLevelEmpty(face, levelNdx));
4064 m_data[face][levelNdx].clear();
4065 m_access[face][levelNdx] = PixelBufferAccess();
4320 const int faceDepth = (layer * 6) + getCubeArrayFaceIndex(coords.face);
4325 return sampleCubeArraySeamless(m_levels, m_numLevels, layer, coords.face, sampler, coords.s, coords.t, lod);
4334 const int faceDepth = (layer * 6) + getCubeArrayFaceIndex(coords.face);
4339 return sampleCubeArraySeamlessCompare(m_levels, m_numLevels, layer, coords.face, sampler, ref, coords.s, coords.t, lod);
4485 std::ostream& operator<< (std::ostream& str, CubeFace face)
4487 switch (face)
4496 default: return str << "UNKNOWN(" << (int)face << ")";