XLE
v0.02.0
|
Binds material settings to the device More...
#include <MaterialBinder.h>
Classes | |
class | SystemConstants |
Public Member Functions | |
virtual RenderCore::Metal::ShaderProgram * | Apply (RenderCore::Metal::DeviceContext &metalContext, RenderCore::Techniques::ParsingContext &parserContext, unsigned techniqueIndex, const RenderCore::Assets::ResolvedMaterial &mat, const SystemConstants &sysConstants, const ::Assets::DirectorySearchRules &searchRules, const RenderCore::Metal::InputLayout &geoInputLayout)=0 |
Static Protected Member Functions | |
static void | BindConstantsAndResources (RenderCore::Metal::DeviceContext &metalContext, RenderCore::Techniques::ParsingContext &parsingContext, const RenderCore::Assets::ResolvedMaterial &mat, const SystemConstants &sysConstants, const ::Assets::DirectorySearchRules &searchRules, RenderCore::Metal::ShaderProgram &shaderProgram) |
Binds material settings to the device
This object is intended for tools and non-performance critical operations. For material preview operations, we need often need to bind some material settings to the device (for example, for drawing material preview window) At runtime the game will typically need to process material information into a compiled state (for example, when constructing a ModelRenderer) But for tools, we need a more flexible way to do it – one that doesn't rely on a lot of processing steps. Hense the material binder!