Crate fyrox::asset::core

source ·
Expand description

Core data structures and algorithms used throughout Fyrox.

Some of them can be useful separately outside the engine.

Modules§

  • nalgebra
  • arrayvec provides the types ArrayVec and ArrayString: array-backed vector and string types, which store their contents inline.
  • This crate provides convenience methods for encoding and decoding numbers in either big-endian or little-endian order.
  • Abstractions for asynchronous programming.
  • Simple logger, it writes in file and in console at the same time.
  • Cross-platform file system notification library
  • Numeric traits for generic mathematics
  • This library provides implementations of Mutex, RwLock, Condvar and Once that are smaller, faster and more flexible than those in the Rust standard library. It also provides a ReentrantMutex type.
  • A generational arena - a contiguous growable array type which allows removing from the middle without shifting and therefore without invalidating other indices.
  • Built-in scoped profiler. You must compile with feature “enable_profiler” to force profiler gather info! It is disabled by default because it is not cheap and takes 3-5% of performance for internal needs.
  • Utilities for random number generation
  • Rectangle packer is used to pack set of smaller rectangles into one big, it used in texture atlas packer.
  • Runtime reflection
  • Immutable string + immutable string storage. See docs of ImmutableString and ImmutableStringStorage for more info.
  • Generate and parse universally unique identifiers (UUIDs).
  • A wrapper for a variable that hold additional flag that tells that initial value was changed in runtime.
  • Visitor is a tree-based serializer/deserializer.
  • Resource watcher allows you to track changed resources and “tell” resource manager to reload them.

Macros§

Structs§

Traits§

  • Component provider provides dynamic access to inner components of an object by their type id.
  • A trait for entities that have name.
  • A trait for an entity that has unique type identifier.

Functions§

  • Appends specified extension to the path.
  • “Transmutes” array of any sized type to a slice of bytes.
  • Tries to find an entity by its name in a series of entities produced by an iterator.
  • Tries to find an entity by its name in a series of entities produced by an iterator.
  • Performs hashing of a sized value by interpreting it as raw memory.
  • Strip working directory from file name. The function may fail for one main reason - input path is not valid, does not exist, or there is some other issues with it.
  • Utility function that replaces back slashes \ to forward /. Internally, it converts the input path to string (lossy - see Path::to_string_lossy) and replaces the slashes in the string. Finally, it converts the string to the PathBuf and returns it. This method is intended to be used only for paths, that does not contain non-unicode characters.
  • Takes a vector of trivially-copyable values and turns it into a vector of bytes.
  • “Transmutes” value of any sized type to a slice of bytes.

Derive Macros§