<< " uvec4 mask = subgroupBallot(true);\n"
<< bdy.str()
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< " uvec4 mask = subgroupBallot(true);\n"
<< bdy.str()
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< "{\n"
<< bdy.str()
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< " tempResult |= !bool(uvec4(0) == subgroupBallot(bData)) ? 0x2 : 0;\n"
<< " tempResult |= uvec4(0) == subgroupBallot(false) ? 0x4 : 0;\n"
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< " {\n"
<< " result[gl_VertexIndex] = " << UNELECTED_VALUE << ";\n"
<< " }\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< " uint tempResult = 0;\n"
<< bdy.str()
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< "{\n"
<< bdy.str()
<< " result[gl_VertexIndex] = tempResult;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< "void main (void)\n"
<< "{\n"
<< " result[gl_VertexIndex] = uvec4(gl_SubgroupSize, gl_SubgroupInvocationID, 0, 0);\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< " {\n"
<< " result[gl_VertexIndex] = 1; // Invocation we read from was inactive, so we can't verify results!\n"
<< " }\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert")
<< "(data[0]) ? 0x4 : 0;\n";
}
+ src << " gl_PointSize = 1.0f;\n";
src << "}\n";
programCollection.glslSources.add("vert")
<< "void main (void)\n"
<< "{\n"
<< " sb_out.result[gl_VertexIndex] = int(gl_VertexIndex);\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert_0") << glu::VertexSource(src.str());
}
<< " {\n"
<< " sb_out.result[ndx] = int(ndx);\n"
<< " }\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert_1") << glu::VertexSource(src.str());
}
<< " {\n"
<< " sb_out.result[uint(ndx)] = ndx;\n"
<< " }\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("vert_2") << glu::VertexSource(src.str());
}
<< "void main (void)\n"
<< "{\n"
<< " b_out.data[gl_VertexIndex] = v_in_data;\n"
+ << " gl_PointSize = 1.0f;\n"
<< "}\n";
programCollection.glslSources.add("input_vert") << glu::VertexSource(src.str());
}