if(info.bind_point>=0)
{
if(!buffer)
+ {
buffer = new Buffer(UNIFORM_BUFFER);
+#ifdef DEBUG
+ if(!debug_name.empty())
+ buffer->set_debug_name(debug_name);
+#endif
+ }
+
BufferBackedUniformBlock *bb_block = new BufferBackedUniformBlock(info.data_size);
block.block = bb_block;
bb_block->use_buffer(buffer, last_buffer_block);
delete buffer;
buffer = new Buffer(UNIFORM_BUFFER);
last_buffer_block->change_buffer(buffer);
+
+#ifdef DEBUG
+ if(!debug_name.empty())
+ buffer->set_debug_name(debug_name);
+#endif
}
buffer->storage(required_size);
i->block->apply(i->bind_point);
}
+void ProgramData::set_debug_name(const string &name)
+{
+#ifdef DEBUG
+ debug_name = name;
+ if(buffer)
+ buffer->set_debug_name(name);
+#else
+ (void)name;
+#endif
+}
+
ProgramData::TaggedUniform::TaggedUniform():
value(0)