# 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
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.