25 std::string const* psSource[], std::shared_ptr<Material>
const& material,
26 std::shared_ptr<Lighting>
const& lighting,
27 std::shared_ptr<LightCameraGeometry>
const& geometry);
31 inline void SetMaterial(std::shared_ptr<Material>
const& material);
32 inline void SetLighting(std::shared_ptr<Lighting>
const& lighting);
33 inline void SetGeometry(std::shared_ptr<LightCameraGeometry>
const& geometry);
34 inline std::shared_ptr<Material>
const& GetMaterial()
const;
35 inline std::shared_ptr<Lighting>
const& GetLighting()
const;
36 inline std::shared_ptr<LightCameraGeometry>
const& GetGeometry()
const;
37 inline std::shared_ptr<ConstantBuffer>
const& GetPVWMatrixConstant()
const;
38 inline std::shared_ptr<ConstantBuffer>
const& GetMaterialConstant()
const;
39 inline std::shared_ptr<ConstantBuffer>
const& GetLightingConstant()
const;
40 inline std::shared_ptr<ConstantBuffer>
const& GetGeometryConstant()
const;
42 void SetPVWMatrixConstant(std::shared_ptr<ConstantBuffer>
const& pvwMatrix);
52 virtual void UpdateMaterialConstant();
53 virtual void UpdateLightingConstant();
54 virtual void UpdateGeometryConstant();
73 static std::string GetShaderSourceLitFunctionGLSL();
108 return mPVWMatrixConstant;
113 return mMaterialConstant;
118 return mLightingConstant;
123 return mGeometryConstant;
std::shared_ptr< ConstantBuffer > const & GetPVWMatrixConstant() const
std::shared_ptr< Material > mMaterial
void SetLighting(std::shared_ptr< Lighting > const &lighting)
std::shared_ptr< Lighting > const & GetLighting() const
std::shared_ptr< LightCameraGeometry > mGeometry
std::function< void(std::shared_ptr< Buffer > const &)> BufferUpdater
std::shared_ptr< ConstantBuffer > mGeometryConstant
void SetGeometry(std::shared_ptr< LightCameraGeometry > const &geometry)
std::shared_ptr< Lighting > mLighting
std::shared_ptr< LightCameraGeometry > const & GetGeometry() const
std::shared_ptr< ConstantBuffer > const & GetLightingConstant() const
std::shared_ptr< ConstantBuffer > const & GetGeometryConstant() const
GLsizei const GLchar *const * string
std::shared_ptr< ConstantBuffer > mLightingConstant
std::shared_ptr< ConstantBuffer > const & GetMaterialConstant() const
std::shared_ptr< ConstantBuffer > mMaterialConstant
void SetMaterial(std::shared_ptr< Material > const &material)
std::shared_ptr< ConstantBuffer > mPVWMatrixConstant
std::shared_ptr< Material > const & GetMaterial() const