MaterialX 1.39.1
Loading...
Searching...
No Matches
TextureBaker.h
Go to the documentation of this file.
1//
2// Copyright Contributors to the MaterialX Project
3// SPDX-License-Identifier: Apache-2.0
4//
5
6#ifndef MATERIALX_TEXTUREBAKER_GLSL
7#define MATERIALX_TEXTUREBAKER_GLSL
8
11
12#include <iostream>
13
14#include <MaterialXCore/Unit.h>
16
18
22
23MATERIALX_NAMESPACE_BEGIN
24
26using TextureBakerPtr = shared_ptr<class TextureBakerGlsl>;
27
29using BakedDocumentVec = std::vector<std::pair<std::string, DocumentPtr>>;
30
33class MX_RENDERGLSL_API TextureBakerGlsl : public TextureBaker<GlslRenderer, GlslShaderGenerator>
34{
35 public:
36 static TextureBakerPtr create(unsigned int width = 1024, unsigned int height = 1024, Image::BaseType baseType = Image::BaseType::UINT8)
37 {
38 return TextureBakerPtr(new TextureBakerGlsl(width, height, baseType));
39 }
40
41 TextureBakerGlsl(unsigned int width, unsigned int height, Image::BaseType baseType);
42};
43
44MATERIALX_NAMESPACE_END
45
46#endif
OpenGL texture handler.
GLSL code renderer.
GLSL shader generator.
Texture baking functionality.
std::vector< std::pair< std::string, DocumentPtr > > BakedDocumentVec
A vector of baked documents with their associated names.
Definition: TextureBaker.h:24
Macros for declaring imported and exported symbols.
shared_ptr< class TextureBakerGlsl > TextureBakerPtr
A shared pointer to a TextureBaker.
Definition: TextureBaker.h:26
Unit classes.
An implementation of TextureBaker based on GLSL shader generation.
Definition: TextureBaker.h:34
A helper class for baking procedural material content to textures.
Definition: TextureBaker.h:32