--- /dev/null
+#ifndef GONG_PHYSICS_SPHERE_HPP_
+#define GONG_PHYSICS_SPHERE_HPP_
+
+#include "Object.hpp"
+#include "../geometry/primitive.hpp"
+
+
+namespace gong {
+namespace physics {
+
+class Sphere
+: public Object {
+
+public:
+ explicit Sphere(float radius);
+
+ /// Get geometric description of shape in world coordinates
+ geometry::Sphere Shape() {
+ return geometry::Sphere{ state.pos, radius };
+ }
+
+private:
+ void ReverseCollisionTest(Object &, std::vector<Contact> &) override;
+ void ActualCollisionTest(Sphere &, std::vector<Contact> &) override;
+
+private:
+ float radius;
+
+};
+
+}
+}
+
+#endif