VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtLightData.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 #pragma once
10 
12 
13 #pragma warning( push )
14 #pragma warning( disable : 4251 )
15 
19 #include <vrvGraphicsUtils/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 Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)