SixDOFConstraintTest.h 891 B

123456789101112131415161718192021222324252627282930313233
  1. // SPDX-FileCopyrightText: 2021 Jorrit Rouwe
  2. // SPDX-License-Identifier: MIT
  3. #pragma once
  4. #include <Tests/Test.h>
  5. #include <Jolt/Physics/Constraints/SixDOFConstraint.h>
  6. class SixDOFConstraintTest : public Test
  7. {
  8. public:
  9. JPH_DECLARE_RTTI_VIRTUAL(SixDOFConstraintTest)
  10. virtual void Initialize() override;
  11. virtual void GetInitialCamera(CameraState &ioState) const override;
  12. virtual bool HasSettingsMenu() const override { return true; }
  13. virtual void CreateSettingsMenu(DebugUI *inUI, UIElement *inSubMenu) override;
  14. private:
  15. using SettingsRef = Ref<SixDOFConstraintSettings>;
  16. using EAxis = SixDOFConstraintSettings::EAxis;
  17. static float sLimitMin[EAxis::Num];
  18. static float sLimitMax[EAxis::Num];
  19. static bool sEnableLimits[EAxis::Num];
  20. static SettingsRef sSettings;
  21. Vec3 mTargetOrientationCS = Vec3::sZero();
  22. Ref<SixDOFConstraint> mConstraint;
  23. };