RecastNavigationMeshComponent.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include <AzCore/Component/Component.h>
  10. #include <AzCore/EBus/ScheduledEvent.h>
  11. #include <AzFramework/Components/ComponentAdapter.h>
  12. #include <Misc/RecastNavigationMeshComponentController.h>
  13. #include <Misc/RecastNavigationMeshConfig.h>
  14. #include <Misc/RecastNavigationConstants.h>
  15. namespace RecastNavigation
  16. {
  17. //! Calculates a navigation mesh with the triangle data provided by @RecastNavigationPhysXProviderComponent.
  18. //! Path calculation is done using @DetourNavigationComponent.
  19. class RecastNavigationMeshComponent final
  20. : public AzFramework::Components::ComponentAdapter<RecastNavigationMeshComponentController, RecastNavigationMeshConfig>
  21. {
  22. using BaseClass = AzFramework::Components::ComponentAdapter<RecastNavigationMeshComponentController, RecastNavigationMeshConfig>;
  23. public:
  24. AZ_COMPONENT(RecastNavigationMeshComponent, RecastNavigationMeshComponentTypeId, BaseClass);
  25. RecastNavigationMeshComponent() = default;
  26. explicit RecastNavigationMeshComponent(const RecastNavigationMeshConfig& config);
  27. static void Reflect(AZ::ReflectContext* context);
  28. };
  29. } // namespace RecastNavigation