Expand description

G’day, and welcome to Hotham! 👋

Hotham is an attempt to create a lightweight, high performance game engine for mobile VR headsets. It’s primarily aimed at small (1-5 person) teams of mostly technical folk who are looking to create games for devices like the Oculus Quest, but find existing tools cumbersome to work with. You can learn more about the project in the FAQ.

Getting started

Hotham is a complex project with many moving parts! Have no fear - we’ve written an easy to follow Getting Started guide that will have you running our example application in no time. Head on over to getting started to.. get.. started.

Sponsoring

Hotham’s development is only possible thanks to the support of the community. It’s currently being developed on full time by @kanerogers If you’d like to help make VR development in Rust possible, please consider becoming a donor. 💗

Re-exports

pub use openxr as xr;
pub use hecs;
pub use nalgebra;
pub use rapier3d;

Modules

Components are data that are used to update the simulation and interact with the external world

A tool to import models from glTF files into Hotham

Resources are wrappers around some external state that the engine will interact with

Data used in the fragment shader

Systems are functions called each frame to update either the external state or the current simulation

Kitchen sink utility functions

Raw Vulkan bindings and types, generated from vk.xml

Structs

The Hotham Engine A wrapper around the “external world” from the perspective of the engine, eg. renderer, XR, etc. IMPORTANT: make sure you call update each tick

Builder for Engine.

Enums

Hotham Error type

Constants

OpenXR blend mode

Format used for colour textures

Vulkan depth attachment usage flags

Format used for depth textures

Swapchain length

Number of views

OpenXR view type

Type Definitions

Hotham result type