Version:

Gem Reference in Open 3D Engine

Gems are redistributable packages that contain source code and assets that you can include in your Open 3D Engine (O3DE) projects to add new functionality. O3DE provides the following Gems:

Animation

GemDescription
EMotion FX AnimationThe EMotion FX Animation Gem provides Open 3D Engine’s animation system for rigged actors and includes Animation Editor, a tool for creating animated behaviors, simulated objects, and colliders for rigged actors.
Maestro CinematicsThe Maestro Cinematics Gem provides Track View, Open 3D Engine’s animated sequence and cinematics editor.

Artificial Intelligence

GemDescription
Kythera AIThe Kythera AI Gem provides support for Kythera AI features in Open 3D Engine (O3DE), and includes a demo project, levels, and assets that demonstrate the features of Kythera AI.
Recast NavigationThe Recast Navigation Gem provides support for building navigation meshes and calculating walkable paths within those navigation meshes. It uses open source library Recast Navigation . An example of its use can be found in AutomatedTesting project in Navigation Sample level.

Assets

GemDescription
Asset ValidationThe Asset Validation Gem provides seed-related commands to ensure assets have valid seeds for asset bundling.
Custom Asset ExampleThe Custom Asset Example Gem provides example code for creating a custom asset for Open 3D Engine’s asset pipeline.
Dev TexturesThe Dev Textures Gem provides a collection of general purpose texture assets useful for prototypes and preproduction.
Prefab BuilderThe Prefab Builder Gem provides an Asset Processor module for prefabs, which are complex assets built by combining smaller entities.
Primitive AssetsThe Primitive Assets Gem provides primitive shape mesh objects with physics enabled.
Scene ProcessingThe Scene Processing Gem provides FBX Settings, a tool you can use to specify the default settings for processing .fbx files for actors, meshes, motions, and PhysX.
Test Asset BuilderThe Test Asset Builder Gem is used to feature test Asset Processor.

Audio

GemDescription
Audio Engine WwiseThe Wwise Audio Engine Gem provides support for Audiokinetic Wave Works Interactive Sound Engine (Wwise).
Audio SystemThe Audio System Gem provides the Audio Translation Layer (ATL), which adds support for audio in your Open 3D Engine projects.
MicrophoneThe Microphone Gem provides support for audio input through microphones.
MiniAudioThe MiniAudio Gem provides support for audio playback and positioning using MiniAudio .

AWS

GemDescription
AWS Client AuthThe AWS Client Auth Gem provides solutions for client authentication and AWS authorization.
AWS CoreThe AWS Core Gem provides basic shared AWS functionality such as AWS SDK initialization and client configuration.
AWS MetricsThe AWS Metrics Gem provides a solution for AWS metrics submission and analytics.
AWS GameLiftThe AWS GameLift Gem provides a framework to extend the O3DE networking layer and Multiplayer Gem to work with Amazon GameLift.

Core

GemDescription
O3DE Core (LmbrCentral)The O3DE Core (LmbrCentral) Gem provides required code and assets for running Open 3D Engine Editor.

Debug

GemDescription
Crash ReportingThe Crash Reporting Gem provides support for external crash reporting for Open 3D Engine projects.
Debug DrawThe Debug Draw Gem provides Editor and runtime debug visualization features for Open 3D Engine.
Immediate Mode GUI (IMGUI)The Immediate Mode GUI Gem provides the 3rdParty library IMGUI which can be used to create run time immediate mode overlays for debugging and profiling information in Open 3D Engine.
Remote ToolsThe Remote Tools Gem facilitates connections between Open 3D Engine applications for debugging purposes.

Design

GemDescription
White BoxThe White Box Gem provides White Box rapid design components for Open 3D Engine.

Environment

GemDescription
Landscape CanvasThe Landscape Canvas Gem provides the Landscape Canvas editor; a node-based graph tool for authoring workflows to populate landscape with dynamic vegetation.
Surface DataThe Surface Data Gem provides functionality to emit signals or tags from surfaces such as meshes and terrain.
VegetationThe Vegetation Gem provides tools to place natural-looking vegetation in Open 3D Engine.
TerrainThe Terrain Gem provides a terrain system that maps height, color, and surface data to regions of the world. It also provides gradient-based and shape-based authoring tools and workflows, integrates with physics for physical simulation and efficiently renders terrain.

Framework

GemDescription
Graph CanvasThe Graph Canvas Gem provides a C++ framework for creating custom graphical node based editors for Open 3D Engine.
Graph ModelThe Graph Model Gem provides a generic node graph data model framework for Open 3D Engine.

Gameplay

GemDescription
AchievementsThe Achievements Gem provides a target platform agnostic interface for retrieving achievement details and unlocking achievements.
Game StateThe Game State Gem provides functionality to determine and manage game states in Open 3D Engine projects.
Game State SamplesThe Game State Samples Gem provides a set of sample game states (built on top of the Game State Gem), including primary user selection, main menu, level loading, level running, and level paused.
Tick Bus Order ViewerThe Tick Bus Order Console Variable Gem provides a console variable that displays the order of runtime tick events.

Input

GemDescription
GesturesThe Gestures Gem provides detection for common gesture-based input actions.
Local UserThe Local User Gem provides functionality for mapping local user ids to local player slots and managing local user profiles.
Starting Point InputThe Starting Point Input Gem provides functionality to map low-level input events to high-level actions.
Starting Point MovementThe Starting Point Movement Gem provides a series of Lua scripts that listen and respond to input events.
Virtual GamepadThe Virtual Gamepad Gem provides controls that emulate a gamepad on touch screen devices.

Multiplayer

GemDescription
MultiplayerThe Multiplayer Gem provides high-level, advanced multiplayer gameplay functionality such as entity replication, local prediction, and server-side backward reconciliation.
Multiplayer CompressionThe Multiplayer Compression Gem provides an open-source compressor to use with the Multiplayer Gem.

Network

GemDescription
Certificate ManagerThe Certificate Manager Gem provides access to authentication files for secure game connections from Amazon S3, files on disk, and other 3rd party sources.
Http RequestorThe HTTP Requestor Gem provides functionality to make asynchronous HTTP/HTTPS requests and return data through a user-provided call back function.
MetastreamThe Metastream Gem provides functionality for an HTTP server that allows broadcasters to customize game streams with overlays of statistics and event data from a game session.
PresenceThe Presence Gem provides a target platform agnostic interface for Presence services.
TwitchThe Twitch Gem provides access to the Twitch API v5 SDK including social functions, channels, and other APIs.

Physics

GemDescription
NVIDIA Cloth (NvCloth)The NVIDIA Cloth (NvCloth) Gem provides functionality to create realistic cloth and fabric simulation.
PhysXThe PhysX Gem provides physics simulation with NVIDIA PhysX including static and dynamic rigid body simulation, force regions, ragdolls, and dynamic PhysX joints.
PhysX DebugThe PhysX Debug Gem provides debugging functionality and visualizations for PhysX in Open 3D Engine (O3DE) projects.

Rendering

GemDescription
Atom Common FeaturesThe Atom Gem provides Atom Renderer and its associated tools (such as Material Editor), utilities, libraries, and interfaces.
Atom ContentThe Atom Content Gem provides assets including models, textures, and materials, that can be used to test Atom Renderer in Open 3D Engine.
Atom O3DE IntegrationThe Atom O3DE Integration Gem provides components, libraries, and functionality to support and integrate Atom Renderer in Open 3D Engine.
Atom TressFXThe Atom TressFX Gem provides realistic hair and fur simulation and rendering in Atom and Open 3D Engine.
CameraThe Camera Gem provides a basic camera component that defines a frustum for runtime rendering.
Camera FrameworkThe Camera Framework Gem provides a base for implementing more complex camera systems.
PBR Reference MaterialsThe PBR Reference Materials Gem provides physically based reference materials for Open 3D Engine (O3DE) projects.
StarsThe Stars Gem provides physically-based animated resolution-independent distant stars.
Starting Point CameraThe Starting Point Camera Gem provides the behaviors used with the Camera Framework Gem to define a camera rig.
Video Playback FrameworkThe Video Playback Framework Gem provides the interface to play back video.

Robotics

GemDescription
Human WorkerThe Human Worker Gem provides a collection of animated human worker assets that can be used in robotic simulations.
OTTO RobotsThe OTTO Robots Gem provides a collection of autonomous mobile robots assets that can be used in robotic simulations.
RGLThe Robotec GPU Lidar (RGL) Gem for Open 3D Engine (O3DE) enables GPU-accelerated LiDAR simulation for robotics.
ROS 2The ROS 2 Gem provides integration with the Robot Operating System (ROS) 2 library and enables the design of the simulation of robotics systems.
UR RobotsThe UR Robots Gem provides a collection of robotic arms assets that can be used in robotic simulations.

Script

GemDescription
Editor Python BindingsThe Editor Python Bindings Gem provides Python commands for Open 3D Engine Editor functions.
Expression EvaluationThe Expression Evaluation Gem provides a method for parsing and executing string expressions.
Python Asset BuilderThe Python Asset Builder Gem provides functionality to implement custom asset builders in Python for Asset Processor.
Script CanvasThe Script Canvas Gem provides Open 3D Engine’s visual scripting environment Script Canvas.
Script Canvas DeveloperThe Script Canvas Developer Gem provides a suite of utility features for the development and debugging of Script Canvas systems.
Script Canvas PhysicsThe Script Canvas Physics Gem provides Script Canvas nodes for physics scene queries such as raycasts.
Script Canvas TestingThe Script Canvas Testing Gem provides a framework for testing for and with Script Canvas.
Scripted Entity TweenerThe Scripted Entity Tweener Gem provides a script driven animation system for Open 3D Engine projects.
Script EventsThe Script Events Gem provides a framework for creating event assets usable from any scripting solution in Open 3D Engine.
Qt for PythonThe Qt for Python Gem provides the PySide2 Python libraries to manage Qt widgets.

SDK

GemDescription
In-App PurchasesThe In-App Purchases Gem provides functionality for in app purchases in Open 3D Engine projects.

UI

GemDescription
LyShineThe LyShine Gem provides the runtime UI system and creation tools for Open 3D Engine projects.
LyShine ExamplesThe LyShine Examples Gem provides example code and assets for LyShine, the runtime UI system and editor for Open 3D Engine projects.
Message PopupThe Message Popup Gem provides an example implementation of popup messages in an Open 3D Engine project.
UI BasicsThe UI Basics Gem provides a collection of assets that can be used with LyShine, the Open 3D Engine runtime User Interface system and editor.

Utility

GemDescription
Fast NoiseThe Fast Noise Gradient Gem uses the third-party, open source FastNoise library to provide a variety of high-performance noise generation algorithms.
Gradient SignalThe Gradient Signal Gem provides a number of components for generating, modifying, and mixing gradient signals.
Save DataThe Save Data Gem provides an API to save runtime data in Open 3D Engine projects.
Scene Logging ExampleThe Scene Logging Example Gem demonstrates the basics of extending the Open 3D Engine SceneAPI by adding additional logging to the pipeline.
Texture AtlasThe Texture Atlas Gem provides the formatting for texture atlases in Open 3D Engine.