virtual ~UniformBlock() { }
virtual void attach(const Program::UniformInfo &, const Uniform &) = 0;
- virtual void apply(int) const = 0;
};
/** Stores uniforms for the default uniform block. Uniforms are associated
virtual void attach(const Program::UniformInfo &, const Uniform &);
void attach(int, const Uniform &);
- virtual void apply(int) const;
+ void apply() const;
};
/** Stores uniforms for a buffer-backed uniform block. Uniform values are
private:
unsigned size;
std::vector<char> data;
- mutable BufferRange *buf_range;
public:
BufferBackedUniformBlock(unsigned);
- virtual ~BufferBackedUniformBlock();
-private:
virtual unsigned get_data_size() const { return size; }
+private:
virtual const void *get_data_pointer() const { return &data[0]; }
virtual unsigned get_alignment() const;
- virtual void location_changed(Buffer *, unsigned, unsigned) const;
public:
void attach(const Program::UniformInfo &, const Uniform &);
- virtual void apply(int) const;
};
} // namespace GL