US 12,079,104 B2
Infrastructure to integrate an integrated development environment (IDE) with game engines
Jean-Baptiste Pierre Jean Evain, Redmond, WA (US); John Robert Miller, Gettysburg, PA (US); and Sebastien Gerard Lebreton, Cailloux sur Fontaines (FR)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Jan. 4, 2022, as Appl. No. 17/568,581.
Prior Publication US 2023/0214310 A1, Jul. 6, 2023
Int. Cl. G06F 11/36 (2006.01); A63F 13/60 (2014.01)
CPC G06F 11/362 (2013.01) [A63F 13/60 (2014.09); G06F 11/3688 (2013.01); A63F 2300/6009 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
a memory; and
a processing system coupled to the memory, the processing system configured to:
identify a plurality of states of a plurality of game engines, the plurality of states indicating whether an integrated development environment (IDE) enables a game developer to interact with respective game engines of the plurality of game engines or games created by the respective game engines;
cause at least two game engines of the plurality of game engines to be displayed to the game developer based at least in part on the IDE enabling the game developer to interact with the at least two game engines or games created by the at least two game engines;
receive a selection indicator, which indicates that a game engine is selected from the at least two game engines;
provide an integration infrastructure that includes a game engine-agnostic messaging protocol, which enables bi-directional communication between the IDE and the at least two game engines, and that further includes a plurality of game engine-agnostic messages, which are usable by the at least two game engines to interact with the IDE in accordance with the game engine-agnostic messaging protocol;
detect that the game developer provides a portion of a name of an application programming interface (API) in the IDE;
cause a suggestion of a game engine-specific API, which is specific to the game engine that is selected from the at least two game engines, to be displayed to the game developer, wherein the suggestion of the game engine-specific API is based at least in part on the portion of the name of the API; and
perform at least one of the following:
at least one of run or debug at least a portion of game code, which defines a game, using the IDE in a context of the game engine that is selected from the at least two game engines; or
at least one of run or debug a unit test, which is configured to test at least a portion of the game code, using the IDE in the context of the game engine that is selected from the at least two game engines.