logo

Crate fyrox

source · []
Expand description

3D and 2D Game Engine.

Re-exports

pub use crate::core::rand;
pub use fxhash;
pub use lazy_static;
pub use tbc;
pub use walkdir;

Modules

Resource management

Core data structures and algorithms used throughout Fyrox.

UI scaling is important, so read the docs for this module if you don’t want to be confused.

Engine is container for all subsystems (renderer, ui, sound, resource manager). It also creates a window and an OpenGL context.

The Event enum and assorted supporting types.

The EventLoop struct and assorted supporting types, including ControlFlow.

Extendable, retained mode, graphics API agnostic UI library.

Material is a set of parameters for a shader. This module contains everything related to materials.

Types useful for interacting with a user’s monitors.

Contains traits with platform-specific methods in them.

Everything related to plugins. See Plugin docs for more info.

Renderer is a “workhorse” of the engine, it draws scenes (both 3D and 2D), user interface, debug geometry and has an ability to add user-defined render passes. Current renderer implementation is not very flexible, but should cover 95% of use cases.

Everything related to resources.

Contains all structures and methods to create and manage 3D scenes.

Utilities module provides set of commonly used algorithms.

The Window struct and associated types.

Macros

Defines as_(variant), as_mut_(variant) and is_(variant) methods.

Defines a builder’s with_xxx method.

A helper macro that allows you to handle object’s property changed message. Such messages may come from editor’s Inspector. It handles CollectionChanged variant of the message. The type of the collection item must have a method called on_property_changed - you could use newtype for that (see examples).

A helper macro that allows you to handle object’s property changed message. Such messages may come from editor’s Inspector. It handles Object variant of the message.

Implements DirectlyInheritableEntity trait for a specified object.

Structs

Represents an OpenGL Context.

An object that allows you to build Contexts, RawContext<T>s and WindowedContext<T>s.

A context which has an underlying window, which may or may not be stored separately.

Attributes to use when creating an OpenGL Context.

Describes a possible format.

Describes how the backend should choose a pixel format.

A type that Contexts which might possibly be currently current on some thread take as a generic.

Enums

All APIs related to OpenGL that you can possibly get while using glutin.

Error that can happen when manipulating an OpenGL Context.

Error that can happen while creating a window or a headless renderer.

Describes the requested OpenGL Context profiles.

Describes the OpenGL API and version that are being requested when a context is created.

A type that Contexts which are not currently current on any thread take as a generic.

The behavior of the driver when you change the current context.

Specifies the tolerance of the OpenGL Context to faults. If you accept raw OpenGL commands and/or raw shader code from an untrusted source, you should definitely care about this.

Statics

The minimum core profile GL context. Useful for getting the minimum required GL version while still running on OSX, which often forbids the compatibility profile features.

Traits

A trait implemented on both NotCurrent and PossiblyCurrent.

Type Definitions

Represents an OpenGL Context which has an underlying window that is stored separately.

Represents an OpenGL Context and the Window with which it is associated.