GteAmbientLightEffect.h
Go to the documentation of this file.
1 // David Eberly, Geometric Tools, Redmond WA 98052
2 // Copyright (c) 1998-2017
3 // Distributed under the Boost Software License, Version 1.0.
4 // http://www.boost.org/LICENSE_1_0.txt
5 // http://www.geometrictools.com/License/Boost/LICENSE_1_0.txt
6 // File Version: 3.0.0 (2016/06/19)
7 
8 #pragma once
9 
11 
12 namespace gte
13 {
14 
16 {
17 public:
18  // Construction.
19  AmbientLightEffect(std::shared_ptr<ProgramFactory> const& factory,
20  BufferUpdater const& updater, std::shared_ptr<Material> const& material,
21  std::shared_ptr<Lighting> const& lighting);
22 
23  // After you set or modify 'material' or 'lighting', call the update to
24  // inform any listener that the corresponding constant buffer has changed.
25  virtual void UpdateMaterialConstant();
26  virtual void UpdateLightingConstant();
27 
28 private:
30  {
33  };
34 
36  {
39  };
40 
41  // Shader source code as strings.
44  static std::string const msHLSLSource;
45  static std::string const* msVSSource[ProgramFactory::PF_NUM_API];
46  static std::string const* msPSSource[ProgramFactory::PF_NUM_API];
47 };
48 
49 }
static std::string const msGLSLVSSource
std::function< void(std::shared_ptr< Buffer > const &)> BufferUpdater
Definition: GteBuffer.h:24
static std::string const msGLSLPSSource
GLsizei const GLchar *const * string
Definition: glcorearb.h:809
#define GTE_IMPEXP
Definition: GTEngineDEF.h:63
static std::string const msHLSLSource


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 03:59:58