ParticleEntityRendererFactory.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Copyright (C) 2022 The V-Gears Team
  3. *
  4. * This file is part of V-Gears
  5. *
  6. * V-Gears is free software: you can redistribute it and/or modify it under
  7. * terms of the GNU General Public License as published by the Free Software
  8. * Foundation, version 3.0 (GPLv3) of the License.
  9. *
  10. * V-Gears is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. * GNU General Public License for more details.
  14. */
  15. #pragma once
  16. #include "../ParticleRendererFactory.h"
  17. #include "ParticleEntityRenderer.h"
  18. /**
  19. * A particle entity renderer factory.
  20. */
  21. class ParticleEntityRendererFactory : public ParticleRendererFactory{
  22. public:
  23. /**
  24. * Constructor.
  25. */
  26. ParticleEntityRendererFactory() {};
  27. /**
  28. * Destructor.
  29. */
  30. virtual ~ParticleEntityRendererFactory(){};
  31. /**
  32. * Retrieves the renderer type.
  33. *
  34. * @return The renderer type (always "Entity").
  35. */
  36. Ogre::String GetRendererType() const{return "Entity";}
  37. /**
  38. * Create a renderer.
  39. *
  40. * @return A new renderer.
  41. */
  42. ParticleRenderer* CreateRenderer(){
  43. return _createRenderer<ParticleEntityRenderer>();
  44. }
  45. };