Add EmitVertex and EndPrimitive
This commit is contained in:
parent
b4eeadfd9b
commit
3067893923
2 changed files with 14 additions and 0 deletions
|
@ -358,6 +358,12 @@ public:
|
||||||
/// Make an intermediate object whose value is undefined.
|
/// Make an intermediate object whose value is undefined.
|
||||||
Id OpUndef(Id result_type);
|
Id OpUndef(Id result_type);
|
||||||
|
|
||||||
|
/// Emits the current values of all output variables to the current output primitive.
|
||||||
|
Id OpEmitVertex();
|
||||||
|
|
||||||
|
/// Finish the current primitive and start a new one. No vertex is emitted.
|
||||||
|
Id OpEndPrimitive();
|
||||||
|
|
||||||
// Logical
|
// Logical
|
||||||
|
|
||||||
/// Result is true if any component of Vector is true, otherwise result is false.
|
/// Result is true if any component of Vector is true, otherwise result is false.
|
||||||
|
|
|
@ -14,4 +14,12 @@ Id Module::OpUndef(Id result_type) {
|
||||||
return AddCode(std::make_unique<Op>(spv::Op::OpUndef, bound++, result_type));
|
return AddCode(std::make_unique<Op>(spv::Op::OpUndef, bound++, result_type));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Id Module::OpEmitVertex() {
|
||||||
|
return AddCode(std::make_unique<Op>(spv::Op::OpEmitVertex));
|
||||||
|
}
|
||||||
|
|
||||||
|
Id Module::OpEndPrimitive() {
|
||||||
|
return AddCode(std::make_unique<Op>(spv::Op::OpEndPrimitive));
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace Sirit
|
} // namespace Sirit
|
||||||
|
|
Loading…
Reference in a new issue