void ShaderD3D::parseVaryings(ShHandle compiler) { if (!mTranslatedSource.empty()) { const std::vector<sh::Varying> *varyings = ShGetVaryings(compiler); ASSERT(varyings); mVaryings = *varyings; for (size_t varyingIndex = 0; varyingIndex < varyings->size(); varyingIndex++) { mPackedVaryings.push_back(PackedVarying(mVaryings[varyingIndex])); } mUsesMultipleRenderTargets = mTranslatedSource.find("GL_USES_MRT") != std::string::npos; mUsesFragColor = mTranslatedSource.find("GL_USES_FRAG_COLOR") != std::string::npos; mUsesFragData = mTranslatedSource.find("GL_USES_FRAG_DATA") != std::string::npos; mUsesFragCoord = mTranslatedSource.find("GL_USES_FRAG_COORD") != std::string::npos; mUsesFrontFacing = mTranslatedSource.find("GL_USES_FRONT_FACING") != std::string::npos; mUsesPointSize = mTranslatedSource.find("GL_USES_POINT_SIZE") != std::string::npos; mUsesPointCoord = mTranslatedSource.find("GL_USES_POINT_COORD") != std::string::npos; mUsesDepthRange = mTranslatedSource.find("GL_USES_DEPTH_RANGE") != std::string::npos; mUsesFragDepth = mTranslatedSource.find("GL_USES_FRAG_DEPTH") != std::string::npos; mUsesDiscardRewriting = mTranslatedSource.find("ANGLE_USES_DISCARD_REWRITING") != std::string::npos; mUsesNestedBreak = mTranslatedSource.find("ANGLE_USES_NESTED_BREAK") != std::string::npos; mUsesDeferredInit = mTranslatedSource.find("ANGLE_USES_DEFERRED_INIT") != std::string::npos; mRequiresIEEEStrictCompiling = mTranslatedSource.find("ANGLE_REQUIRES_IEEE_STRICT_COMPILING") != std::string::npos; } }
void Shader::parseVaryings(void *compiler) { if (!mHlsl.empty()) { std::vector<Varying> *activeVaryings; ShGetInfoPointer(compiler, SH_ACTIVE_VARYINGS_ARRAY, reinterpret_cast<void**>(&activeVaryings)); for (size_t varyingIndex = 0; varyingIndex < activeVaryings->size(); varyingIndex++) { mVaryings.push_back(PackedVarying((*activeVaryings)[varyingIndex])); } mUsesMultipleRenderTargets = mHlsl.find("GL_USES_MRT") != std::string::npos; mUsesFragColor = mHlsl.find("GL_USES_FRAG_COLOR") != std::string::npos; mUsesFragData = mHlsl.find("GL_USES_FRAG_DATA") != std::string::npos; mUsesFragCoord = mHlsl.find("GL_USES_FRAG_COORD") != std::string::npos; mUsesFrontFacing = mHlsl.find("GL_USES_FRONT_FACING") != std::string::npos; mUsesPointSize = mHlsl.find("GL_USES_POINT_SIZE") != std::string::npos; mUsesPointCoord = mHlsl.find("GL_USES_POINT_COORD") != std::string::npos; mUsesDepthRange = mHlsl.find("GL_USES_DEPTH_RANGE") != std::string::npos; mUsesFragDepth = mHlsl.find("GL_USES_FRAG_DEPTH") != std::string::npos; mUsesDiscardRewriting = mHlsl.find("ANGLE_USES_DISCARD_REWRITING") != std::string::npos; mUsesNestedBreak = mHlsl.find("ANGLE_USES_NESTED_BREAK") != std::string::npos; } }