#pragma once
#include <nlohmann/json.hpp>
#include "quaternion.hpp"
#include "vector.hpp"
namespace prism {
inline void to_json(nlohmann::json& j, const float3& p) {
j["x"] = p.x;
j["y"] = p.y;
j["z"] = p.z;
}
inline void from_json(const nlohmann::json& j, float3& p) {
p.x = j["x"];
p.y = j["y"];
p.z = j["z"];
} // namespace prism
inline void to_json(nlohmann::json& j, const Quaternion& p) {
j["w"] = p.w;
inline void from_json(const nlohmann::json& j, Quaternion& p) {
p.w = j["w"];