Lines Matching refs:rr

45 class ColorVertexShader : public rr::VertexShader
48 ColorVertexShader (void) : rr::VertexShader(2, 2)
50 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
51 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
53 m_outputs[0].type = rr::GENERICVECTYPE_FLOAT;
54 m_outputs[1].type = rr::GENERICVECTYPE_FLOAT;
59 virtual void shadeVertices (const rr::VertexAttrib* inputs,
60 rr::VertexPacket* const* packets,
68 rr::VertexPacket* const packet = packets[packetNdx];
80 class ColorVertexShaderDualSource : public rr::VertexShader
83 ColorVertexShaderDualSource (void) : rr::VertexShader(3, 3)
85 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
86 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
87 m_inputs[2].type = rr::GENERICVECTYPE_FLOAT;
89 m_outputs[0].type = rr::GENERICVECTYPE_FLOAT;
90 m_outputs[1].type = rr::GENERICVECTYPE_FLOAT;
91 m_outputs[2].type = rr::GENERICVECTYPE_FLOAT;
96 virtual void shadeVertices (const rr::VertexAttrib* inputs,
97 rr::VertexPacket* const* packets,
106 rr::VertexPacket* const packet = packets[packetNdx];
120 class TexCoordVertexShader : public rr::VertexShader
123 TexCoordVertexShader (void) : rr::VertexShader(2, 2)
125 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
126 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
128 m_outputs[0].type = rr::GENERICVECTYPE_FLOAT;
129 m_outputs[1].type = rr::GENERICVECTYPE_FLOAT;
134 virtual void shadeVertices (const rr::VertexAttrib* inputs,
135 rr::VertexPacket* const* packets,
143 rr::VertexPacket* const packet = packets[packetNdx];
155 class ColorFragmentShader : public rr::FragmentShader
166 : rr::FragmentShader (2, 1)
173 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
174 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
175 m_outputs[0].type = (channelClass == tcu::TEXTURECHANNELCLASS_SIGNED_INTEGER)? rr::GENERICVECTYPE_INT32 :
176 (channelClass == tcu::TEXTURECHANNELCLASS_UNSIGNED_INTEGER)? rr::GENERICVECTYPE_UINT32
177 : rr::GENERICVECTYPE_FLOAT;
182 virtual void shadeFragments (rr::FragmentPacket* packets,
184 const rr::FragmentShadingContext& context) const
188 const rr::FragmentPacket& packet = packets[packetNdx];
198 const tcu::Vec4 vtxPosition = rr::readVarying<float>(packet, context, 0, fragNdx);
199 rr::writeFragmentDepth(context, packetNdx, fragNdx, 0, vtxPosition.z());
205 const tcu::Vec4 vtxColor = rr::readVarying<float>(packet, context, 1, fragNdx);
206 rr::writeFragmentOutput(context, packetNdx, fragNdx, 0, vtxColor);
212 class ColorFragmentShaderDualSource : public rr::FragmentShader
221 : rr::FragmentShader (3, 1)
227 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
228 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
229 m_inputs[2].type = rr::GENERICVECTYPE_FLOAT;
231 m_outputs[0].type = (channelClass == tcu::TEXTURECHANNELCLASS_SIGNED_INTEGER)? rr::GENERICVECTYPE_INT32 :
232 (channelClass == tcu::TEXTURECHANNELCLASS_UNSIGNED_INTEGER)? rr::GENERICVECTYPE_UINT32
233 : rr::GENERICVECTYPE_FLOAT;
238 virtual void shadeFragments (rr::FragmentPacket* packets,
240 const rr::FragmentShadingContext& context) const
244 const rr::FragmentPacket& packet = packets[packetNdx];
250 const tcu::Vec4 vtxPosition = rr::readVarying<float>(packet, context, 0, fragNdx);
251 rr::writeFragmentDepth(context, packetNdx, fragNdx, 0, vtxPosition.z());
257 const tcu::Vec4 vtxColor0 = rr::readVarying<float>(packet, context, 1, fragNdx);
258 const tcu::Vec4 vtxColor1 = rr::readVarying<float>(packet, context, 2, fragNdx);
259 rr::writeFragmentOutputDualSource(context, packetNdx, fragNdx, 0, vtxColor0, vtxColor1);
265 class CoordinateCaptureFragmentShader : public rr::FragmentShader
269 : rr::FragmentShader(2, 1)
271 m_inputs[0].type = rr::GENERICVECTYPE_FLOAT;
272 m_inputs[1].type = rr::GENERICVECTYPE_FLOAT;
273 m_outputs[0].type = rr::GENERICVECTYPE_FLOAT;
280 virtual void shadeFragments (rr::FragmentPacket* packets,
282 const rr::FragmentShadingContext& context) const
286 const rr::FragmentPacket& packet = packets[packetNdx];
290 const tcu::Vec4 vtxTexCoord = rr::readVarying<float>(packet, context, 1, fragNdx);
291 rr::writeFragmentOutput(context, packetNdx, fragNdx, 0, vtxTexCoord);
302 virtual rr::Program getReferenceProgram (void) const = 0;
317 virtual rr::Program getReferenceProgram (void) const
319 return rr::Program(&m_vertexShader, &m_fragmentShader);
331 const rr::Program* const program);
337 void draw (const rr::RenderState& renderState,
338 const rr::PrimitiveType primitive,
341 void draw (const rr::RenderState& renderState,
342 const rr::PrimitiveType primitive,
345 void draw (const rr::RenderState& renderState,
346 const rr::PrimitiveType primitive,
351 const rr::ViewportState getViewportState (void) const;
354 rr::Renderer m_renderer;
368 rr::RenderTarget* m_renderTarget;
369 const rr::Program* m_program;
372 rr::TestFunc mapVkCompareOp (vk::VkCompareOp compareFunc);
373 rr::PrimitiveType mapVkPrimitiveTopology (vk::VkPrimitiveTopology primitiveTopology);
374 rr::BlendFunc mapVkBlendFactor (vk::VkBlendFactor blendFactor);
375 rr::BlendEquation mapVkBlendOp (vk::VkBlendOp blendOp);
377 rr::StencilOp mapVkStencilOp (vk::VkStencilOp stencilOp);