+
+ SampledTexture() = default;
+ SampledTexture(const Texture *t, const Sampler *s, int l): texture(t), sampler(s), level(l) { }
+
+ bool operator==(const SampledTexture &o) const { return texture==o.texture && sampler==o.sampler && level==o.level; }
+ };
+
+ template<typename T>
+ struct BoundResource
+ {
+ Tag tag;
+ mutable int binding = -1;