Pioneer
MaterialDummy.h
Go to the documentation of this file.
1 // Copyright © 2008-2023 Pioneer Developers. See AUTHORS.txt for details
2 // Licensed under the terms of the GPL v3. See licenses/GPL-3.txt
3 
4 #ifndef _DUMMY_MATERIAL_H
5 #define _DUMMY_MATERIAL_H
6 
7 #include "graphics/Material.h"
8 #include "graphics/RenderState.h"
9 #include "graphics/Renderer.h"
10 
11 namespace Graphics {
12 
13  class RendererDummy;
14 
15  namespace Dummy {
16 
17  class Program;
18 
19  class Material : public Graphics::Material {
20  public:
22  rsd(rsd) {}
23  // Create an appropriate program for this material.
24  virtual Program *CreateProgram(const MaterialDescriptor &) { return nullptr; }
25  virtual bool IsProgramLoaded() const override final { return false; }
26  virtual void SetProgram(Program *p) {}
27 
28  virtual bool SetTexture(size_t name, Texture *tex) override { return false; }
29  virtual bool SetBuffer(size_t name, BufferBinding<UniformBuffer>) override { return false; }
30  virtual bool SetBufferDynamic(size_t name, void *data, size_t size) override { return false; }
31 
32  virtual bool SetPushConstant(size_t name, int i) override { return false; }
33  virtual bool SetPushConstant(size_t name, float f) override { return false; }
34  virtual bool SetPushConstant(size_t name, vector3f v3) override { return false; }
35  virtual bool SetPushConstant(size_t name, vector3f v4, float f4) override { return false; }
36  virtual bool SetPushConstant(size_t name, Color c) override { return false; }
37  virtual bool SetPushConstant(size_t name, matrix3x3f mat3) override { return false; }
38  virtual bool SetPushConstant(size_t name, matrix4x4f mat4) override { return false; }
39 
40  RenderStateDesc rsd; // here to ensure validation works correctly
41  };
42  } // namespace Dummy
43 } // namespace Graphics
44 
45 #endif
Definition: MaterialDummy.h:19
virtual bool SetPushConstant(size_t name, Color c) override
Definition: MaterialDummy.h:36
virtual bool SetBufferDynamic(size_t name, void *data, size_t size) override
Definition: MaterialDummy.h:30
virtual bool IsProgramLoaded() const override final
Definition: MaterialDummy.h:25
virtual bool SetPushConstant(size_t name, vector3f v4, float f4) override
Definition: MaterialDummy.h:35
virtual bool SetTexture(size_t name, Texture *tex) override
Definition: MaterialDummy.h:28
virtual bool SetPushConstant(size_t name, matrix4x4f mat4) override
Definition: MaterialDummy.h:38
Material(RenderStateDesc rsd)
Definition: MaterialDummy.h:21
virtual bool SetPushConstant(size_t name, int i) override
Definition: MaterialDummy.h:32
virtual bool SetPushConstant(size_t name, matrix3x3f mat3) override
Definition: MaterialDummy.h:37
virtual void SetProgram(Program *p)
Definition: MaterialDummy.h:26
virtual bool SetPushConstant(size_t name, float f) override
Definition: MaterialDummy.h:33
virtual bool SetBuffer(size_t name, BufferBinding< UniformBuffer >) override
Definition: MaterialDummy.h:29
RenderStateDesc rsd
Definition: MaterialDummy.h:40
virtual Program * CreateProgram(const MaterialDescriptor &)
Definition: MaterialDummy.h:24
virtual bool SetPushConstant(size_t name, vector3f v3) override
Definition: MaterialDummy.h:34
Definition: Material.h:60
Definition: Material.h:148
Definition: Texture.h:106
Definition: Background.h:14
Definition: Color.h:66
Definition: BufferCommon.h:63
Definition: RenderState.h:10