Crafty.createLayer()
public void Crafty.createLayer(string name, string type[, object options])
- name
the name that will refer to the layer
- type
the type of the draw layer to create ('DOM', 'Canvas', or 'WebGL')
- options
this will override the default values of each layer
Creates a new system which implements the specified type of layer. The options (and their default values) are
{
xResponse: 1, // How the layer will pan in response to the viewport x position
yResponse: 1, // How the layer will pan in response to the viewport y position
scaleResponse: 1, // How the layer will scale in response to the viewport scale. (Layer scale will be scale^scaleResponse.)
z: 0 // The zIndex of the layer relative to other layers
}
Crafty will automatically define three built-in layers: "DefaultDOMLayer", DefaultCanvasLayer", and "DefaultWebGLLayer".
They will have z
values of 30
, 20
, and 10
respectively, and will be initialized if a "DOM", "Canvas" or "WebGL" component
is used with an entity not attached to any user-specified layer.
Note: Layers are implemented as systems, so the layer name must be distinct from other systems.
Note: By default, layers will persist across scene changes. You can manually clean up a layer by removing all it's entities and then destroying it.
Example
Crafty.createLayer("MyCanvasLayer", "Canvas")
Crafty.e("2D, MyCanvasLayer, Color");
Define a custom canvas layer, then create an entity that uses the custom layer to render.
Example
Crafty.createLayer("UILayer", "DOM", {scaleResponse: 0, xResponse: 0, yResponse: 0})
Crafty.e("2D, UILayer, Text");
Define a custom DOM layer that will not move with the camera. (Useful for static UI elements!)
Example
Crafty.createLayer("MyCanvasLayer", "Canvas");
Crafty.s("MyCanvasLayer").one("RenderScene", function(){ this.everRendered = true; });
Create a custom layer, and then bind a method to run the first time it renders.
Example
Crafty("MyCanvasLayer").destroy();
Crafty.s("MyCanvasLayer").destroy();
For a previously defined "MyCanvasLayer", destroy it and all the entities rendered by it.