Skip to main content

Module prelude

Module prelude 

Source
Expand description

Everything a script author needs.

Re-exports§

pub use crate::audio::AudioBus;
pub use crate::audio::AudioSource;
pub use crate::audio::SoundId;
pub use crate::cloth::Cloth;
pub use crate::cloth::ClothPin;
pub use crate::events::EventQueue;
pub use crate::fx::PostEffect;
pub use crate::fx::PostSettings;
pub use crate::fx::ShadowSettings;
pub use crate::fx::Upscaler;
pub use crate::gameplay::Lifetime;
pub use crate::gameplay::Tags;
pub use crate::gameplay::Visibility;
pub use crate::grass::Grass;
pub use crate::tree::TreeStyle;
pub use crate::decal::DecalBlend;
pub use crate::decal::DecalShape;
pub use crate::canvas::Align;
pub use crate::canvas::ButtonStyle;
pub use crate::canvas::Canvas;
pub use crate::storage::SaveInfo;
pub use crate::storage::Storage;
pub use crate::hierarchy;
pub use crate::input::Hud;
pub use crate::math::approach;
pub use crate::math::approach_degrees;
pub use crate::math::damp;
pub use crate::math::ease_smooth;
pub use crate::math::ease_smoother;
pub use crate::math::smooth_damp;
pub use crate::math::delta_degrees;
pub use crate::math::inverse_lerp;
pub use crate::math::lerp;
pub use crate::math::remap;
pub use crate::math::remap_clamped;
pub use crate::math::smoothstep;
pub use crate::math::wrap_degrees;
pub use crate::random::Rng;
pub use crate::paint::TexturePaint;
pub use crate::particles::EmitterShape;
pub use crate::particles::ParticleEmitter;
pub use crate::params::Color;
pub use crate::params::EntityRef;
pub use crate::params::Local;
pub use crate::params::MeshRef;
pub use crate::params::Param;
pub use crate::params::SoundRef;
pub use crate::params::TextureRef;
pub use crate::script;
pub use crate::script;
pub use crate::input::Input;
pub use crate::input::Key;
pub use crate::input::MouseButton;
pub use crate::interaction::press;
pub use crate::interaction::Slider;
pub use crate::interaction::Switch;
pub use crate::interaction::SwitchKind;
pub use crate::meshmod::MeshModifiers;
pub use crate::meshmod::ModAxis;
pub use crate::meshmod::Modifier;
pub use crate::modifiers::hsv_to_rgb;
pub use crate::modifiers::Bob;
pub use crate::modifiers::ColorCycle;
pub use crate::modifiers::Pulse;
pub use crate::modifiers::Spin;
pub use crate::modifiers::Wobble;
pub use crate::noise::Noise;
pub use crate::noise::NoiseKind;
pub use crate::noise::NoiseTexture;
pub use crate::physics::QueryOptions;
pub use crate::physics::RayHit;
pub use crate::reflect::Field;
pub use crate::script::Ctx;
pub use crate::script::Script;
pub use crate::signals::Signal;
pub use crate::signals::SignalBus;
pub use crate::signals::SignalError;
pub use crate::spatial::Aabb;
pub use crate::spatial::Frustum;
pub use crate::spatial::Ray;
pub use crate::timer::Timer;
pub use crate::timer::TimerMode;
pub use crate::tween::Ease;
pub use crate::tween::MoveTween;
pub use crate::tween::TweenMode;
pub use crate::voxel::VoxelClouds;
pub use crate::voxel::VoxelSmoke;
pub use crate::water::VoxelWater;
pub use crate::water::WaterStyle;
pub use crate::components::*;

Macros§

fields
Lists the Inspector fields of a hand-written script in one line. Every listed field must implement Param (numbers, bool, Vec3, String, Color, asset and entity references, enums with Choice, and Local to hide a variable).
json
Construct a serde_json::Value from a JSON literal.
register_scripts
Exports the scripts of a library crate: register_scripts!(Spinner, Player);
script
Declares a whole script in one block: the variables with their defaults (shown in the Inspector and saved in the scene) and the callbacks. No Default, no fields(), no boilerplate.
script_params
Declares a script struct with typed, defaulted variables. Generates Default and params(), which a script returns from fields():

Structs§

Entity
Generational handle to an entity in one World.
Mat4
A 4x4 column major matrix.
Quat
A quaternion representing an orientation.
Vec2
A 2-dimensional vector.
Vec3
A 3-dimensional vector.
World
Collection of entities and registered sparse component storages.