Supported APIs
Overview
YAHAHA Studio offers a diverse range of APIs to empower developers in game development and customization. This documentation provides a comprehensive overview of these API types and their current availability status.
API Types
Low-Level APIs
- Engine API: This is provided by the core engine (Unity) and is implemented in a low-level programming language.
- Engine Plugin API: This extends the core engine through Yahaha's extensions. It's also implemented using low-level programming languages. It supports features such as cutscenes, graphical user interfaces (GUIs), and network functionality.
- FairyGUI API: This offers developers a robust set of functions and tools for efficiently creating, managing, and manipulating user interface elements within the FairyGUI framework, facilitating flexible UI development for both games and applications.
- Resource Manager API: Provided by Yahaha, this enables asynchronous resource provision and release by offering a consistent method for accessing resources while abstracting specific loading implementations. It also includes features for dependency resolution and memory management, which simplify asset loading and handling in game code. Lua
Lua APIs
- Built-in API: Implemented using low-level Lua programming, it offers runtime functionality and some basic capabilities for Lua components, such as allowing access to YahahaObjects or registering an Update Function.
- GamePlay API: It focuses on specific game logic and is implemented in Lua. For example, it implements events, conditions, and actions, which form the logic of the Event Trigger component.
Currently available APIs
At this time, the following APIs are available for use:
- Engine API from the Low-Level API category: Fully functional and ready for implementation.
- FairyGUI API from the Low-Level API category: Some features are currently accessible.
- Resource Manager API from the Low-Level API category: Fully functional and ready for implementation.
- Built-in API from the Lua API category: Some features are currently accessible.
Reasons for current API Release:
The decision to release these APIs is based on several key factors:
- Core functionality: The Engine API serves as a powerful foundation, allowing users to implement a wide array of game logic and features.
- Documentation and stability: The Engine API is well-documented and stable, benefiting from the resources of the core engine.
- Early access to coding features: The Engine API release allows creators to experiment with new functionalities before they are fully integrated into YAHAHA Studio. This empowers developers to design games beyond the limitations of the current Studio, enhancing the game creation process with additional capabilities and options.
Future Plans
We plan to complete the documentation for the Engine Plugin API and Lua API, providing better support for customizing game logic through Lua scripts.
YAHAHA Studio's API ecosystem is designed to balance powerful low-level capabilities with user-friendly scripting options. As we continue to develop and refine these tools, we remain committed to providing a robust environment for developers to create innovative gaming experiences.