VTK  9.3.20240424
vtkPBRLUTTexture.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
11#ifndef vtkPBRLUTTexture_h
12#define vtkPBRLUTTexture_h
13
14#include "vtkOpenGLTexture.h"
15#include "vtkRenderingOpenGL2Module.h" // For export macro
16#include "vtkSmartPointer.h" // For vtkSmartPointer
17
18VTK_ABI_NAMESPACE_BEGIN
22class vtkRenderWindow;
23
24class VTKRENDERINGOPENGL2_EXPORT vtkPBRLUTTexture : public vtkOpenGLTexture
25{
26public:
29 void PrintSelf(ostream& os, vtkIndent indent) override;
30
34 void Load(vtkRenderer*) override;
35
39 void Render(vtkRenderer* ren) override { this->Load(ren); }
40
42
46 vtkGetMacro(LUTSize, unsigned int);
47 vtkSetMacro(LUTSize, unsigned int);
49
51
55 vtkGetMacro(LUTSamples, unsigned int);
56 vtkSetMacro(LUTSamples, unsigned int);
58
59protected:
60 vtkPBRLUTTexture() = default;
61 ~vtkPBRLUTTexture() override = default;
62
63 unsigned int LUTSize = 512;
64 unsigned int LUTSamples = 1024;
65
66private:
67 vtkPBRLUTTexture(const vtkPBRLUTTexture&) = delete;
68 void operator=(const vtkPBRLUTTexture&) = delete;
69};
70
71VTK_ABI_NAMESPACE_END
72#endif
a simple class to control print indentation
Definition vtkIndent.h:108
Internal class which encapsulates OpenGL FramebufferObject.
OpenGL rendering window.
OpenGL texture map.
void Load(vtkRenderer *) override
Implement base class method.
precompute BRDF look-up table texture used in physically based rendering
void Render(vtkRenderer *ren) override
Implement base class method.
vtkPBRLUTTexture()=default
~vtkPBRLUTTexture() override=default
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Load(vtkRenderer *) override
Implement base class method.
static vtkPBRLUTTexture * New()
create a window for renderers to draw into
abstract specification for renderers