# Key Type

This document mainly introduces some objects and classes that users often use when writing scripts in game development.

# engine object

The engine object is the most basic object in the game framework. It contains many properties and objects, the main ones are:

-Version information: version version number. -Device information: device object, including information such as screen size and platform. -Global settings: the settings object, which mainly contains the configuration and rendering adaptation options of some module variables. -Built-in components: various components provided by the framework. -Constants and enumerations: constants include TypeNames, etc., enumeration values ​​include TextureFilterMode, TextureWrapMode, etc. -Decorators: decorators objects, executeInGameMode, executeInEditMode, executeInAllMode, etc. -Singleton objects: loader, cache, game objects, etc.

# Node class Entity

Lifecycle Entity is a class representing object nodes on the scene, it can mount different components to achieve various functions. Each Entity instance will have a Transform3D or Transform2D component (except the destroyed Entity instance) to represent its own coordinates. The creation of an instance of Entity** cannot be created by way of new Entity**. This is because the framework has logical requirements for node management in memory. Users should use engine.game.createEntity2D or engine. game.createEntity3D to create, such a created node will be mounted under the engine.game.detachedRoot node by default (see [scene](../../../handbook/gameplay/scene.md for details) ) Related documents).

The attributes that can be set for the Entity object are active, name and layer: -active: Set the active state of the node, which is synchronized with the active property of the Transform3D (or Transform2D) component mounted on the node. -name: Node name. -layer: Rendering and physics-related configuration, see Camera document for details.