All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
UnityInteriorHighlightRenderable.h
1 #pragma once
2 
3 #include "InteriorHighlightRenderable.h"
4 #include "UnityRenderStateAdaptor.h"
5 
6 namespace Eegeo
7 {
8  namespace Unity
9  {
11  {
12  public:
13 
15  Rendering::LayerIds::Values layerId,
16  int floorIndex,
18  Rendering::Mesh* pMesh,
19  Culling::CullingVolumeTree* pCullingVolumeTree,
20  const Rendering::VertexLayouts::VertexBinding& vertexBinding,
21  Eegeo::dv3 ecefLocalOrigin,
22  Eegeo::v4 positionBoundsMin,
23  Eegeo::v4 positionBoundsMax,
24  Eegeo::v2 uvBoundsMin,
25  Eegeo::v2 uvBoundsMax,
26  const std::string& renderableId,
28  const float interiorTerrainHeight,
29  bool ownsMesh,
30  const std::string& interiorIdentifier,
31  const std::string& meshName,
32  const UnityCallbacks& unityCallbacks);
33 
35 
36  void SetModelTransform(const m44& modelToLocalEcefTransform) override;
37 
38  void SetDiffuseColor(const v4& color) override;
39 
40  void SetColor(const v4& color) override;
41 
42  void SetMaterial(const Rendering::Materials::IMaterial* pMaterial, Rendering::VertexLayouts::VertexBindingPool& vertexBindingPool) override;
43 
44  private:
45 
46  void OnColorChanged();
47 
48  UnityRenderStateAdaptor m_unityStateAdaptor;
49  const std::string m_meshName;
50  const UnityCallbacks m_unityCallbacks;
51  };
52  }
53 }