Blending Graphics APIs via Emulation Layer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current electronic gaming machines (EGMs) face challenges in seamlessly integrating graphical content from different executing programs within the same window, particularly when using different graphics application programming interfaces (APIs), which limits the flexibility and user experience in presenting a unified gaming experience across various devices.

Innovation Solution

The implementation of a game host engine that creates a graphics context for a first API and converts commands from a second API using an emulation layer, allowing blended graphical content from different APIs to be rendered in a single display window, enabling unified presentations on devices like smartphones and tablets.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If graphical content from different APIs is integrated into the same window, then the flexibility and user experience are improved, but the system complexity increases due to API compatibility requirements

Engineering Contradiction:
ImproveflexibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements an emulation layer that acts as an intermediary between different graphics APIs (OpenGL and WebGL). This emulation layer receives commands from either API and translates them into a unified internal representation, allowing graphical content from multiple APIs to be integrated into the same rendering context without direct API interaction. The emulation layer absorbs the complexity of API compatibility, enabling the higher-level system to maintain flexibility while the lower-level translation handles the technical disparities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If an emulation layer is implemented to convert commands between APIs, then API compatibility is achieved, but the processing time and computational overhead increase

Engineering Contradiction:
ImproveAPI compatibilityVSAvoidprocessing time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-compiling game code into a universal format that can be executed across different platforms. The emulation layer is pre-configured with knowledge of both OpenGL and WebGL command structures, allowing it to quickly translate commands without extensive runtime processing. This preparation work reduces the computational overhead during actual game execution, minimizing the time penalty associated with API conversion.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If game code is provided in an interpreted language, then distribution flexibility is improved by bypassing App Store review, but code security and validation become more challenging

Engineering Contradiction:
Improvedistribution flexibilityVSAvoidcode security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent uses copying by distributing game code in an interpreted language format (such as JavaScript) that can be executed directly in web browsers without compilation or App Store review. The game logic is copied from development environments directly to the client-side browser, where it runs within the sandboxed environment of the browser engine. This approach maintains distribution flexibility while relying on the browser's inherent security model to validate and execute the code safely.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10964155B2Techniques and apparatuses for providing blended graphical content for gaming applications using a single graphics context and multiple application programming interfaces
Publication Date: 2021.03.30 ARISTOCRAT TECH AUSTRALIA PTY LTD
  • US10964155B2 patent drawing
  • US10964155B2 patent drawing
  • US10964155B2 patent drawing

AI summary

Techniques and apparatuses are provided for allowing simultaneous presentation, via a single graphics context, of graphical content originating through the execution of two programs that produce graphics-related commands using two different application programming interfaces (APIs). For example, a game host engine may produce commands using a first API and may cause a graphics context for the first API to be created. Game application code that causes commands using a second API to be created may be executed as well, in addition to an emulation layer that may translate the second API commands into equivalent first API commands. The emulation layer may then send the equivalent first API commands to the graphics context, resulting graphical content that originates from both the game application code using the second API and the game host engine using the first API to be blended together in the graphics context and then rendered to a display.