Cargo Features

[dependencies]
reactor_core = { version = "1.0.0", default-features = false, features = ["plugin", "spatial", "random", "camera", "proto", "serial", "progress", "proto_progress", "serial_progress", "all_asset_loaders", "toml", "yaml", "json", "msgpack", "xml", "csv"] }
default = camera, plugin, proto, random, serial, spatial

These default features are set whenever reactor_core is added without default-features = false somewhere in the dependency tree.

plugin default

Enables bevy

spatial default = reactor_spatial

Affects reactor_core::spatial

random default = reactor_random

Enables random of reactor_spatial

Affects reactor_core::random

camera default = reactor_camera

Affects reactor_core::camera

proto default progress? = reactor_proto

Affects reactor_core::proto

serial default progress? = reactor_serial

Affects reactor_core::serial, plugin::ReactorCorePlugin.game_name

progress = proto, proto_progress, serial, serial_progress
proto_progress progress?

Enables progress_tracking of reactor_proto

reactor_proto:

Support for iyes_progress

serial_progress progress?

Enables progress_tracking of reactor_serial

all_asset_loaders

Additional prototype formats

Enables all_asset_loaders of reactor_proto and reactor_serial

toml

Enables toml of reactor_proto and reactor_serial

reactor_proto:

Support for the TOML file format
This is a straightforward choice for configuration files.

yaml

Enables yaml of reactor_proto and reactor_serial

reactor_proto:

Support for the YAML file format
This is a relatively common choice for configuration files,
and substantially more complex than TOML

json

Enables json of reactor_proto and reactor_serial

reactor_proto:

Support for the JSON file format
JSON is nearly universal, but can be a bit verbose and nitpicky.
The key advantage is that it is well-supported by web technologies,
and has robust validation tooling.

msgpack

Enables msgpack of reactor_proto and reactor_serial

reactor_proto:

Support for the MessagePack file format
This is a binary format that is more compact than JSON, but not human-readable.

xml

Enables xml of reactor_proto and reactor_serial

reactor_proto:

Support for the XML file format
XML is meaningfully more complex and less compact than JSON,
but comes with schemas and validation tools.

csv

Enables csv of reactor_proto and reactor_serial

reactor_proto:

Support for the CSV file format.
This is a great fit for tabular data, but notoriously flaky in edge cases due to the lack of a standard.
Good interop with spreadsheet software though!

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

reactor_spatial random spatial
reactor_random random
reactor_camera camera
reactor_proto all_asset_loaders? csv? json? msgpack? proto proto_progress? toml? xml? yaml?
reactor_serial all_asset_loaders? csv? json? msgpack? serial serial_progress? toml? xml? yaml?