VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtLightData.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 #pragma once
10 
11 #include "DtGraphicsUtilsPreReqs.h"
12 
13 #pragma warning( push )
14 #pragma warning( disable : 4251 )
15 
16 #include "DtDataFormat.h"
17 #include "DtForwardDeclare.h"
19 #include "DtIntSize.h"
20 
21  namespace makVrv {
22 
24  {
25  float ambient[3];
26  float diffuse[3];
27  float specular[3];
28 
29  float position[3];
30  float direction[3];
31 
32  float attenuation[3];
33  float spotparams[3];
34 
35  float range;
36  float type;
37 
38  float pack;
39 
40  static size_t GetSizeInFloats(void);
41  };
42 
46  {
47  public:
49  DtLightData(size_t maxLights);
50 
52  virtual ~DtLightData();
53 
54  size_t maxLights(void) const;
55  size_t sizeInBytes(void) const;
56 
58  void packLights(const VectorLights& lights);
60  void packLights(const VectorLights& lights, size_t total);
61 
63  float32* data(void);
64  private:
66  size_t myMaxLights;
67 
68  void packLight(size_t offset, const DtLight* pLight);
69  };
70 
71 } //namespace makVrv
72 
73 #pragma warning( pop )

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)