LMStaticModel.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // Copyright (c) 2014-2015, THUNDERBEAST GAMES LLC All rights reserved
  2. // Please see LICENSE.md in repository root for license information
  3. // https://github.com/AtomicGameEngine/AtomicGameEngine
  4. #pragma once
  5. #include "../Graphics/StaticModel.h"
  6. #include "../Graphics/Texture2D.h"
  7. #include "../Graphics/Material.h"
  8. namespace Atomic
  9. {
  10. class LMStaticModel: public StaticModel
  11. {
  12. ATOMIC_OBJECT(LMStaticModel, StaticModel);
  13. public:
  14. /// Construct.
  15. LMStaticModel(Context* context);
  16. /// Destruct.
  17. virtual ~LMStaticModel();
  18. /// Register object factory. StaticModel must be registered first.
  19. static void RegisterObject(Context* context);
  20. virtual void UpdateBatches(const FrameInfo& frame);
  21. Vector4 lightmapTilingOffset_;
  22. void SetLightmapTextureAttr(const ResourceRef& value);
  23. ResourceRef GetLightmapTextureAttr() const;
  24. void SetLightmapTexure(Texture2D* texture)
  25. {
  26. lightmapTexture_ = texture;
  27. }
  28. private:
  29. SharedPtr<Texture2D> lightmapTexture_;
  30. SharedPtr<Material> lightmapMaterial_;
  31. };
  32. }