pub mod animation;
pub mod assets;
#[cfg(all(target_arch = "wasm32", feature = "browser-probe"))]
pub mod browser_probe;
pub mod controls;
#[cfg(all(target_arch = "wasm32", feature = "demo-page"))]
pub mod demo_page;
pub mod diagnostics;
pub mod geometry;
pub mod material;
pub mod picking;
pub mod platform;
pub mod render;
pub mod scene;
pub mod viewer;
pub use animation::{
AnimationChannel, AnimationClip, AnimationClipKey, AnimationInterpolation, AnimationLoopMode,
AnimationMixer, AnimationMixerKey, AnimationOutput, AnimationPlaybackState,
AnimationSourceChannel, AnimationSourceClip, AnimationTarget,
};
#[cfg(target_arch = "wasm32")]
pub use assets::BrowserAssetFetcher;
#[cfg(not(target_arch = "wasm32"))]
pub use assets::FileAssetFetcher;
pub use assets::{
AssetEvictionStats, AssetFetcher, AssetLoadControl, AssetLoadOptions, AssetLoadProgress,
AssetLoadReport, AssetLoadWarning, AssetPath, AssetStoreId, Assets, DefaultAssetFetcher,
EnvironmentDerivative, EnvironmentDesc, EnvironmentHandle, EnvironmentSourceKind,
GeometryHandle, GltfDecoderPolicy, GltfExtensionDiagnostic, GltfExtensionStatus,
MaterialHandle, MaterialVariantBinding, ModelHandle, RetainPolicy, SceneAsset,
SceneAssetAnchor, SceneAssetClip, SceneAssetLight, SceneAssetMesh, SceneAssetNode, TextureDesc,
TextureFilter, TextureHandle, TextureSamplerDesc, TextureSourceFormat, TextureWrap,
WasmEnvironmentDelivery,
};
pub use controls::{
OrbitControlAction, OrbitControls, PointerButton, PointerEvent, PointerEventKind, TouchEvent,
TouchEventKind,
};
pub use diagnostics::{
AdapterLimitsReport, AlphaPipelineStatus, AnimationError, AssetError, Backend, BuildError,
Capabilities, CapabilityReport, CapabilityStatus, ChangeKind, DebugOverlay, DevicePoll,
Diagnostic, DiagnosticCode, DiagnosticSeverity, Error, GpuAdapterReport, HardwareTier,
ImportDiagnosticOverlay, ImportDiagnosticOverlayKind, ImportError, InstantiateError,
LookupError, NotPreparedReason, OutputStageStatus, PrepareError, RenderError, RenderOutcome,
RendererStats,
};
pub use geometry::{
Aabb, GeometryDesc, GeometryError, GeometryMorphTarget, GeometrySkin, GeometryTopology,
GeometryVertex, Primitive, SkinningMatrix, StaticBatchReport, Vertex,
};
pub use material::{
AlphaMode, Color, ColorParseError, DEFAULT_EDGE_ANGLE_THRESHOLD_DEGREES,
DEFAULT_STROKE_WIDTH_PX, MaterialDesc, MaterialKind, TextureColorSpace, TextureTransform,
};
pub use picking::{CursorPosition, Hit, HitTarget, InteractionContext, InteractionStyle, Viewport};
#[cfg(not(target_arch = "wasm32"))]
pub use platform::NativeWindowHandle;
pub use platform::{PlatformSurface, SurfaceEvent, SurfaceKind, SurfaceSize, SurfaceViewport};
pub use render::{
AutoExposureConfig, AutoExposureResult, OffscreenTarget, PixelReadback, Profile, Quality,
RenderMode, Renderer, RendererOptions, Tonemapper, estimate_auto_exposure_from_linear_colors,
estimate_auto_exposure_from_srgb8,
};
pub use scene::{
AnchorFrame, AnchorKey, Angle, Camera, CameraKey, ClippingPlane, ClippingPlaneKey,
ClippingPlaneSet, ConnectOptions, ConnectionAlignment, ConnectionError, ConnectionLineOverlay,
ConnectionParenting, ConnectionPreview, ConnectionRequest, ConnectionRoll, ConnectionWarning,
ConnectorFrame, ConnectorKey, ConnectorMetadata, ConnectorPolarity, ConnectorRollPolicy,
DepthRange, DirectionalLight, FramingOptions, FramingOutcome, GridFloorHandles,
GridFloorOptions, ImportAnchor, ImportAnchorDebugMetadata, ImportClip, ImportConnector,
ImportOptions, ImportPivot, Instance, InstanceCullingPolicy, InstanceId, InstanceSet,
InstanceSetKey, LabelBillboard, LabelDesc, LabelKey, LabelRasterization, Light, LightBuilder,
LightKey, MeshBuilder, MeshNode, ModelBuilder, ModelNode, Node, NodeKey, NodeKind,
OrthographicCamera, PerspectiveCamera, PointLight, ProjectedPoint, Quat, Scene,
SceneDirtyState, SceneImport, SceneSkinBinding, ScreenRect, SourceCoordinateSystem,
SourceUnits, SpotLight, StudioLightingHandles, Transform, Vec3,
};
#[cfg(feature = "inspection")]
pub use scene::{
SceneCameraFrustumInspection, SceneDrawInspection, SceneInspectionReport,
SceneMaterialInspection, SceneNodeInspection, SceneNormalInspection, SceneTextureInspection,
};
pub use viewer::{
FirstRender, HeadlessGltfViewer, HeadlessGltfViewerBuilder, InteractiveGltfViewer,
InteractiveGltfViewerBuilder, first_render_gltf_headless, headless_gltf_viewer,
interactive_gltf_viewer,
};
pub type Result<T> = std::result::Result<T, Error>;