Tessellation partial implementation (not ready for use yet), including:
- the built-in constants - built-in variable declarations, some dependent on gl_MaxPatchVertices - layout qualifier for vertices (shared with geometry shader max_vertices) - layout qualifiers for vertex spacing, vertex order, point mode, and primitive type - link semantics for layout qualifiers Still TBD: - patch qualifier and arrayed input handling - sizing of gl_out[] - additional semantic checking - supporting the extension on version 150 git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24468 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
parent
2fcc9ff1d2
commit
623833fabc
28 changed files with 831 additions and 342 deletions
|
|
@ -523,7 +523,7 @@ bool CompileDeferred(
|
|||
}
|
||||
|
||||
if (messages & EShMsgAST)
|
||||
intermediate.outputTree(parseContext.infoSink);
|
||||
intermediate.output(parseContext.infoSink, true);
|
||||
|
||||
delete [] lengths;
|
||||
delete [] strings;
|
||||
|
|
@ -1057,12 +1057,12 @@ bool TProgram::linkStage(EShLanguage stage, EShMessages messages)
|
|||
std::list<TShader*>::const_iterator it;
|
||||
for (it = stages[stage].begin(); it != stages[stage].end(); ++it)
|
||||
intermediate[stage]->merge(*infoSink, *(*it)->intermediate);
|
||||
|
||||
if (messages & EShMsgAST)
|
||||
intermediate[stage]->outputTree(*infoSink);
|
||||
}
|
||||
|
||||
intermediate[stage]->errorCheck(*infoSink);
|
||||
intermediate[stage]->finalCheck(*infoSink);
|
||||
|
||||
if (messages & EShMsgAST)
|
||||
intermediate[stage]->output(*infoSink, stages[stage].size() > 1);
|
||||
|
||||
return intermediate[stage]->getNumErrors() == 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue