VTK  9.3.0
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 
18 VTK_ABI_NAMESPACE_BEGIN
21 class vtkOpenGLTexture;
22 class vtkRenderWindow;
23 
24 class VTKRENDERINGOPENGL2_EXPORT vtkPBRLUTTexture : public vtkOpenGLTexture
25 {
26 public:
27  static vtkPBRLUTTexture* New();
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 
59 protected:
60  vtkPBRLUTTexture() = default;
61  ~vtkPBRLUTTexture() override = default;
62 
63  unsigned int LUTSize = 512;
64  unsigned int LUTSamples = 1024;
65 
66 private:
67  vtkPBRLUTTexture(const vtkPBRLUTTexture&) = delete;
68  void operator=(const vtkPBRLUTTexture&) = delete;
69 };
70 
71 VTK_ABI_NAMESPACE_END
72 #endif
a simple class to control print indentation
Definition: vtkIndent.h:38
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
Definition: vtkRenderer.h:71