hdr(false),
alpha(false),
required_multisample(0),
- max_multisample(0)
+ max_multisample(0),
+ clear_enabled(false),
+ clear_depth(1.0f),
+ clear_stencil(0)
{ }
SequenceTemplate::~SequenceTemplate()
{
add("hdr", &SequenceTemplate::hdr);
add("alpha", &SequenceTemplate::alpha);
+ add("clear", &Loader::clear);
add("multisample", &Loader::multisample);
add("multisample", &Loader::multisample_range);
add("postprocessor", &Loader::postprocessor);
obj.postprocessors.push_back(get_postprocessor_template());
}
+void SequenceTemplate::Loader::clear()
+{
+ ClearLoader ldr(obj);
+ load_sub_with(ldr);
+ obj.clear_enabled = true;
+}
+
void SequenceTemplate::Loader::multisample(unsigned samples)
{
obj.required_multisample = samples;
}
+SequenceTemplate::ClearLoader::ClearLoader(SequenceTemplate &t):
+ ObjectLoader<SequenceTemplate>(t)
+{
+ add("color", &ClearLoader::color);
+ add("depth", &ClearLoader::depth);
+ add("stencil", &ClearLoader::stencil);
+}
+
+void SequenceTemplate::ClearLoader::color(float r, float g, float b, float a)
+{
+ obj.clear_colors.push_back(Color(r, g, b, a));
+}
+
+void SequenceTemplate::ClearLoader::depth(float d)
+{
+ obj.clear_depth = d;
+}
+
+void SequenceTemplate::ClearLoader::stencil(int s)
+{
+ obj.clear_stencil = s;
+}
+
+
SequenceTemplate::Step::Loader::Loader(Step &p):
DataFile::CollectionObjectLoader<Step>(p, 0)
{