Pioneer
GenGasGiantColourMaterial.h
Go to the documentation of this file.
1 // Copyright © 2008-2014 Pioneer Developers. See AUTHORS.txt for details
2 // Licensed under the terms of the GPL v3. See licenses/GPL-3.txt
3 
4 #pragma once
5 
6 #ifndef _OGL_GENGASGIANTCOLOURMATERIAL_H
7 #define _OGL_GENGASGIANTCOLOURMATERIAL_H
8 /*
9  * Material(s) used to generate
10  *
11  */
12 #include "MaterialGL.h"
13 #include "Program.h"
14 
15 namespace Graphics {
16 
18  const vector3d *v;
19  float fracStep;
20  float planetRadius;
21  float time;
22  float hueAdjust;
24  };
25 
26  namespace OGL {
27 
32  // technically Ice Giants not Gas Giants...
36  };
37 
39  public:
41 
49 
50  protected:
51  virtual void InitUniforms() override final;
52  };
53 
54  class GenGasGiantColourMaterial : public Material { //unlit
55  public:
56  virtual Program *CreateProgram(const MaterialDescriptor &) override final;
57  virtual void Apply() override final;
58  virtual void Unapply() override final;
59  };
60  } // namespace OGL
61 } // namespace Graphics
62 
63 #endif
Definition: Material.h:57
Definition: GenGasGiantColourMaterial.h:54
Definition: GenGasGiantColourMaterial.h:38
Uniform permTexture
Definition: GenGasGiantColourMaterial.h:44
Uniform time
Definition: GenGasGiantColourMaterial.h:46
Uniform gradTexture
Definition: GenGasGiantColourMaterial.h:45
virtual void InitUniforms() override final
Definition: GenGasGiantColourMaterial.cpp:61
Uniform v3
Definition: GenGasGiantColourMaterial.h:42
Uniform frequency
Definition: GenGasGiantColourMaterial.h:47
Uniform v2
Definition: GenGasGiantColourMaterial.h:42
GenGasGiantColourProgram(const MaterialDescriptor &)
Definition: GenGasGiantColourMaterial.cpp:16
Uniform v0
Definition: GenGasGiantColourMaterial.h:42
Uniform v1
Definition: GenGasGiantColourMaterial.h:42
Uniform fracStep
Definition: GenGasGiantColourMaterial.h:43
Uniform hueAdjust
Definition: GenGasGiantColourMaterial.h:48
Definition: MaterialGL.h:26
Definition: Program.h:23
Definition: Uniform.h:21
GasGiantQuality
Definition: GenGasGiantColourMaterial.h:28
@ GEN_SATURN2_TEXTURE
Definition: GenGasGiantColourMaterial.h:31
@ GEN_NEPTUNE_TEXTURE
Definition: GenGasGiantColourMaterial.h:33
@ GEN_JUPITER_TEXTURE
Definition: GenGasGiantColourMaterial.h:29
@ GEN_NEPTUNE2_TEXTURE
Definition: GenGasGiantColourMaterial.h:34
@ GEN_URANUS_TEXTURE
Definition: GenGasGiantColourMaterial.h:35
@ GEN_SATURN_TEXTURE
Definition: GenGasGiantColourMaterial.h:30
Definition: Background.h:13
Definition: GenGasGiantColourMaterial.h:17
float time
Definition: GenGasGiantColourMaterial.h:21
const vector3d * v
Definition: GenGasGiantColourMaterial.h:18
float hueAdjust
Definition: GenGasGiantColourMaterial.h:22
vector3f frequency
Definition: GenGasGiantColourMaterial.h:23
float planetRadius
Definition: GenGasGiantColourMaterial.h:20
float fracStep
Definition: GenGasGiantColourMaterial.h:19