[][src]Crate rendy_core

Crate that contains utility modules used by other rendy crates

Modules

hal

Low-level graphics abstraction for Rust. Mostly operates on data, not types. Designed for use by libraries and higher-level abstractions only.

types

Types shared across rendy

Macros

backend_enum

Allows create new enumerations with variants for each active backend. rendy_backend! can be used to match over it.

device_owned

Implement ownership checking for value with device: DeviceId field.

instance_owned

Implement ownership checking for value with instance: InstanceId field.

rendy_backend

Execute arm with matching backend. If particular backend is disabled then its arm is stripped from compilation altogether.

rendy_not_wasm32

Resolve into input AST if target architecture is not "wasm32"

rendy_slow_assert

assert! that is exists only if "no-slow-safety-checks" feature is not enabled.

rendy_slow_assert_eq

assert_eq! that is exists only if "no-slow-safety-checks" feature is not enabled.

rendy_slow_assert_ne

assert_ne! that is exists only if "no-slow-safety-checks" feature is not enabled.

rendy_wasm32

Resolve into input AST if target architecture is "wasm32"

rendy_with_dx12_backend

Resolve into input AST if dx12 backend is enabled.

rendy_with_empty_backend

Resolve into input AST if empty backend is enabled.

rendy_with_gl_backend

Resolve into input AST if gl backend is enabled.

rendy_with_metal_backend

Resolve into input AST if metal backend is enabled.

rendy_with_slow_safety_checks

Resolve into input AST if rendy is requested to perform slow safety checks.

rendy_with_vulkan_backend

Resolve into input AST if vulkan backend is enabled.

rendy_without_dx12_backend

Resolve into input AST if dx12 backend is disabled.

rendy_without_empty_backend

Resolve into input AST if empty backend is disabled.

rendy_without_gl_backend

Resolve into input AST if gl backend is disabled.

rendy_without_metal_backend

Resolve into input AST if metal backend is disabled.

rendy_without_slow_safety_checks

Resolve into input AST if rendy is requested to not perform slow safety checks.

rendy_without_vulkan_backend

Resolve into input AST if vulkan backend is disabled.

Structs

Device

Raw device wrapper with id.

DeviceId

Id of the instance.

Instance

Raw instance wrapper with id.

InstanceId

Id of the hal instance.

NotEnabled

Error signaling that particular backend is not enabled.

ParseBackendError

Unknown backend errors.

Enums

Backend

Backend enumerator.

EnabledBackend

Backend enumerator.

RawWindowHandle

Traits

HasRawWindowHandle

Window that wraps around a raw window handle.

Functions

cast_cow

Cast cow of some arbitrary type into cow of bytes. Can lead to UB if allocator changes. Use with caution. TODO: Replace with something safer.

cast_slice

Cast slice of some arbitrary type into slice of bytes.

cast_vec

Cast vec of some arbitrary type into vec of bytes. Can lead to UB if allocator changes. Use with caution. TODO: Replace with something safer.

identical_cast

Casts identical types. Useful in generic environment where caller knows that two types are the same but Rust is not convinced.

uses_pipeline_barriers

Check if specified backend would use pipeline barriers or using them is futile. Piece of internal knowledge.