Have you ever tried to develop a game, only to have the framerate get slower and slower as you add more content and features? This is especially problematic in virtual reality because low framerates cause motion sickness and can make your game or experience unplayable. Ultra Engine is designed to achieve ultimate scalability and deliver blazingly fast performance as your game grows, with a revolutionary new rendering architecture that unlocks the full power of your GPU to deliver up to 10x faster performance.
Code Games with Lua
Ultra Engine provides an easy-to-learn programming API that can be used with Lua, integrated into Visual Studio Code. Documentation is extensive, with hundreds of code examples demonstrating how to use graphics, physics, raycasting, pathfinding, and other systems to build games and VR applications. Your game code runs on its own thread, so there's no performance penalty for using an interpreted language.
No-Limits Royalty-Free License for Game Developers
Games you create are yours to play, sell, or give away, with no additional costs or hidden fees. And because we only rely on free open-source middleware libraries, you never have to worry about purchasing expensive licenses from third parties.
Graphics
- Revolutionary new rendering architecture
- Clustered forward+ renderer with uniform lighting model and optional depth prepass
- Multi-display support
- PBR materials
- Load 3D models from glTF, OBJ, MDL, and FBX (using glTF converter)
- Image loading, saving, processing
- Vertex, pixel, geometry, and tessellation shaders
- Normal mapping with specular
- Post-processing stack
- Hardware tessellation
- Environment probes
- Instanced rendering
- Real-time mesh modification
- Imposters
VR
- SteamVR integration with support for a variety of headsets
- Fast stereoscopic rendering
- Controller input and display
- Attach objects to hand controllers and headset
- Translation and rotation view offset
Entity Component System
- Multiple components per entity are supported
- Save and load game states
- Visual flowgraph connects component actions to create event sequences
Terrain
- Dynamically sculpt and paint terrain
- Cut holes in terrain
- Up to 256 material layers
- Terrain foliage system
3D Models
- Load and save Khronos glTF files
- Load and save Wavefront OBJ files
- Convert FBX files to glTF and load
- Convert Collada files to glTF and load
- Load other formats with plugin system
Animation
- Animated skinned characters
- Share skeletons across multiple characters
- Attach objects to bones
- Built-in animation transition and update system
- Hardware skinning
- Blend and transition animations
Physics
- Fast and accurate asynchronous rigid body physics
- Constraints including hinge, ball, kinematic, plane, and sliding joints
- Motorized joints with limits
- Generate physics shapes
- Swept collision
- Raycasting with lines or spheres
Pathfinding
- Navmesh pathfinding
- Crowd avoidance and steering
- Navigation areas visible in editor
- Physics-based character controller
- Automatic AI following
Sound
- 3D sound spatialization
- Head-related transfer function (HRTF)
- Audio filters including distortion, flanging, echo, and EAX reverb effects
- Emit a sound from any entity
- Automatic channel management
- Skip to any time in sound
GUI
- Resolution-independent for any DPI
- Extensible widgets system
- Load SVG vector images
- Set widget and item image
- Change mouse cursor
- Custom color schemes stored in JSON files
Plugins
- Basis Universal supercompressed texture support
- FreeImage Texture Support for PNG, JPG, BMP, TGA, PSD, etc.
- Wavefront OBJ model saving
- ISPC Fast Texture Compression
- Quake package, model, and texture loading
System
- File I/O
- File system watcher
- Memory allocation and management
- String manipulation (split, search, conversion, etc.)
- Message boxes and file / folder requester
- Plugin system
Steamworks Integration
- Authentication
- User info
- Leaderboards
- Stats and achievements
- Multiplayer lobbies
- Peer-to-peer networking
- Voice over Internet protocol (VoIP)