Game of Ur 0.3.3
This is a computer adaptation of Game of Ur, written in C++ mainly using SDL and OpenGL.
Loading...
Searching...
No Matches
Serialization

Topics

 Resource Database
 

Files

file  scene_loading.hpp
 A collection of ResourceConstructor classes responsible for loading a scene into the engine.
 

Classes

struct  ToyMaker::ComponentFromJSON< TComponent, Enable >
 A struct that describes how a JSON component description is turned into a component. More...
 
struct  ToyMaker::ComponentFromJSON< std::shared_ptr< TComponent >, Enable >
 A specialization of ComponentFromJSON that applies to components that are stored as shared pointers to components (as opposed to a value of the component type itself) More...
 
struct  ToyMaker::ComponentFromJSON< std::shared_ptr< TResource >, typename std::enable_if< std::is_base_of< IResource, TResource >::value >::type >
 Allows a shared pointer to a resource to be constructed as a component for an entity when loading a scene. More...
 

Functions

 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (CameraProperties::ProjectionType, { {CameraProperties::ProjectionType::FRUSTUM, "frustum"}, {CameraProperties::ProjectionType::ORTHOGRAPHIC, "orthographic"}, })
 
void ToyMaker::to_json (nlohmann::json &json, const CameraProperties &cameraProperties)
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (DeviceType, { {DeviceType::NA, "na"}, {DeviceType::MOUSE, "mouse"}, {DeviceType::KEYBOARD, "keyboard"}, {DeviceType::TOUCH, "touch"}, {DeviceType::CONTROLLER, "controller"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ControlType, { {ControlType::NA, "na"}, {ControlType::AXIS, "axis"}, {ControlType::MOTION, "motion"}, {ControlType::POINT, "point"}, {ControlType::BUTTON, "button"}, {ControlType::RADIO, "radio"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (AxisFilter, { {AxisFilter::SIMPLE, "simple"}, {AxisFilter::X_POS, "+x"}, {AxisFilter::X_NEG, "-x"}, {AxisFilter::Y_POS, "+y"}, {AxisFilter::Y_NEG, "-y"}, {AxisFilter::Z_POS, "+z"}, {AxisFilter::Z_NEG, "-z"}, {AxisFilter::X_CHANGE_POS, "+dx"}, {AxisFilter::X_CHANGE_NEG, "-dx"}, {AxisFilter::Y_CHANGE_POS, "+dy"}, {AxisFilter::Y_CHANGE_NEG, "-dy"}, {AxisFilter::Z_CHANGE_POS, "+dz"}, {AxisFilter::Z_CHANGE_NEG, "-dz"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (InputCombo::Trigger, { {InputCombo::Trigger::ON_PRESS, "on-press"}, {InputCombo::Trigger::ON_RELEASE, "on-release"}, {InputCombo::Trigger::ON_CHANGE, "on-change"}, {InputCombo::Trigger::ON_BUTTON_PRESS, "on-button-press"}, {InputCombo::Trigger::ON_BUTTON_RELEASE, "on-button-release"}, {InputCombo::Trigger::ON_BUTTON_CHANGE, "on-button-change"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ActionValueType, { {ActionValueType::STATE, "state"}, {ActionValueType::CHANGE, "change"}, })
 
void ToyMaker::to_json (nlohmann::json &json, const ToyMaker::InputAttributesType &inputAttributes)
 
void ToyMaker::from_json (const nlohmann::json &json, ToyMaker::InputAttributesType &inputAttributes)
 
void ToyMaker::to_json (nlohmann::json &json, const ToyMaker::InputSourceDescription &inputSourceDescription)
 
void ToyMaker::from_json (const nlohmann::json &json, ToyMaker::InputSourceDescription &inputSourceDescription)
 
void ToyMaker::to_json (nlohmann::json &json, const ToyMaker::InputFilter &inputFilter)
 
void ToyMaker::from_json (const nlohmann::json &json, ToyMaker::InputFilter &inputFilter)
 
void ToyMaker::to_json (nlohmann::json &json, const ToyMaker::InputCombo &inputCombo)
 
void ToyMaker::from_json (const nlohmann::json &json, ToyMaker::InputCombo &inputCombo)
 
void ToyMaker::to_json (nlohmann::json &json, const ToyMaker::ActionDefinition &actionDefinition)
 
void ToyMaker::from_json (const nlohmann::json &json, ToyMaker::ActionDefinition &actionDefinition)
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ViewportNode::RenderConfiguration::ResizeType, { {ViewportNode::RenderConfiguration::ResizeType::OFF, "off"}, {ViewportNode::RenderConfiguration::ResizeType::VIEWPORT_DIMENSIONS, "viewport-dimensions"}, {ViewportNode::RenderConfiguration::ResizeType::TEXTURE_DIMENSIONS, "texture-dimensions"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ViewportNode::RenderConfiguration::ResizeMode, { {ViewportNode::RenderConfiguration::ResizeMode::FIXED_ASPECT,"fixed-aspect"}, {ViewportNode::RenderConfiguration::ResizeMode::EXPAND_VERTICALLY, "expand-vertically"}, {ViewportNode::RenderConfiguration::ResizeMode::EXPAND_HORIZONTALLY, "expand-horizontally"}, {ViewportNode::RenderConfiguration::ResizeMode::EXPAND_FILL, "expand-fill"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ViewportNode::RenderConfiguration::UpdateMode, { {ViewportNode::RenderConfiguration::UpdateMode::NEVER, "never"}, {ViewportNode::RenderConfiguration::UpdateMode::ONCE, "once"}, {ViewportNode::RenderConfiguration::UpdateMode::ON_FETCH, "on-fetch"}, {ViewportNode::RenderConfiguration::UpdateMode::ON_RENDER, "on-render"}, {ViewportNode::RenderConfiguration::UpdateMode::ON_RENDER_CAP_FPS, "on-render-cap-fps"}, })
 
 ToyMaker::NLOHMANN_JSON_SERIALIZE_ENUM (ViewportNode::RenderConfiguration::RenderType, { {ViewportNode::RenderConfiguration::RenderType::BASIC_3D, "basic-3d"}, {ViewportNode::RenderConfiguration::RenderType::ADDITION, "addition"}, })
 
void ToyMaker::to_json (nlohmann::json &json, const ViewportNode::RenderConfiguration &renderConfiguration)
 
void ToyMaker::from_json (const nlohmann::json &json, ViewportNode::RenderConfiguration &renderConfiguration)
 
void ToyMaker::from_json (const nlohmann::json &json, BuiltinVertexData &builtinVertexData)
 
void ToyMaker::to_json (nlohmann::json &json, const BuiltinVertexData &builtinVertexData)
 

Detailed Description