Hey guys,
with the upcoming Direct3D12 I want to get ready to integrate the new API into my framework, so I thought of adding a new layer of abstraction on top of the existing code. But is this really the "right" way of doing things? The other thing is that some things in my code can't really be abstracted that well. For example my Material & Texture class:
class Texture {
Texture(ID3D11ShaderResource* theTexture);
...
};
class Material {
void AttachDiffuseMap(const Texture& map);
...
void Bind(ID3D11DeviceContext* ctx, ...);
};
How would I make Texture::Texture and Material::Bind more abstract, when they need something very specific, any patterns for this kind of design problem?