godot/modules/gridmap/doc_classes/GridMap.xml

228 lines
7.4 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8" ?>
<class name="GridMap" inherits="Spatial" category="Core" version="3.1">
<brief_description>
2017-10-08 18:14:09 +08:00
Node for 3D tile-based maps.
</brief_description>
<description>
2017-10-08 18:14:09 +08:00
GridMap lets you place meshes on a grid interactively. It works both from the editor and can help you create in-game level editors.
GridMaps use a [MeshLibrary] which contain a list of tiles: meshes with materials plus optional collisions and extra elements.
A GridMap contains a collection of cells. Each grid cell refers to a [MeshLibrary] item. All cells in the map have the same dimensions.
A GridMap is split into a sparse collection of octants for efficient rendering and physics processing. Every octant has the same dimensions and can contain several cells.
</description>
<tutorials>
<link>https://docs.godotengine.org/en/latest/tutorials/3d/using_gridmaps.html</link>
</tutorials>
<demos>
</demos>
<methods>
<method name="clear">
<return type="void">
</return>
<description>
2017-10-08 18:14:09 +08:00
Clear all cells.
</description>
</method>
2017-12-18 15:13:58 +08:00
<method name="clear_baked_meshes">
<return type="void">
</return>
<description>
</description>
</method>
<method name="get_bake_mesh_instance">
<return type="RID">
</return>
<argument index="0" name="idx" type="int">
</argument>
<description>
</description>
</method>
<method name="get_bake_meshes">
<return type="Array">
</return>
<description>
</description>
</method>
<method name="get_cell_item" qualifiers="const">
<return type="int">
</return>
<argument index="0" name="x" type="int">
</argument>
<argument index="1" name="y" type="int">
</argument>
<argument index="2" name="z" type="int">
</argument>
<description>
The [MeshLibrary] item index located at the grid-based X, Y and Z coordinates. If the cell is empty, [constant INVALID_CELL_ITEM] will be returned.
</description>
</method>
<method name="get_cell_item_orientation" qualifiers="const">
<return type="int">
</return>
<argument index="0" name="x" type="int">
</argument>
<argument index="1" name="y" type="int">
</argument>
<argument index="2" name="z" type="int">
</argument>
<description>
The orientation of the cell at the grid-based X, Y and Z coordinates. -1 is returned if the cell is empty.
</description>
</method>
2018-01-03 20:45:03 +08:00
<method name="get_collision_layer_bit" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="bit" type="int">
</argument>
<description>
</description>
</method>
<method name="get_collision_mask_bit" qualifiers="const">
<return type="bool">
</return>
<argument index="0" name="bit" type="int">
</argument>
<description>
</description>
</method>
<method name="get_meshes">
<return type="Array">
</return>
<description>
2017-10-08 18:14:09 +08:00
Array of [Transform] and [Mesh] references corresponding to the non empty cells in the grid. The transforms are specified in world space.
</description>
</method>
<method name="get_used_cells" qualifiers="const">
<return type="Array">
</return>
<description>
2017-10-08 18:14:09 +08:00
Array of [Vector3] with the non empty cell coordinates in the grid map.
</description>
</method>
2017-12-18 15:13:58 +08:00
<method name="make_baked_meshes">
<return type="void">
</return>
<argument index="0" name="gen_lightmap_uv" type="bool" default="false">
</argument>
<argument index="1" name="lightmap_uv_texel_size" type="float" default="0.1">
</argument>
<description>
</description>
</method>
2017-10-21 18:02:08 +08:00
<method name="map_to_world" qualifiers="const">
<return type="Vector3">
</return>
<argument index="0" name="x" type="int">
</argument>
<argument index="1" name="y" type="int">
</argument>
<argument index="2" name="z" type="int">
</argument>
<description>
</description>
</method>
<method name="resource_changed">
<return type="void">
</return>
<argument index="0" name="resource" type="Resource">
</argument>
<description>
</description>
</method>
<method name="set_cell_item">
<return type="void">
</return>
<argument index="0" name="x" type="int">
</argument>
<argument index="1" name="y" type="int">
</argument>
<argument index="2" name="z" type="int">
</argument>
<argument index="3" name="item" type="int">
</argument>
<argument index="4" name="orientation" type="int" default="0">
</argument>
<description>
2017-10-08 18:14:09 +08:00
Set the mesh index for the cell referenced by its grid-based X, Y and Z coordinates.
A negative item index will clear the cell.
Optionally, the item's orientation can be passed.
</description>
</method>
<method name="set_clip">
<return type="void">
</return>
<argument index="0" name="enabled" type="bool">
</argument>
<argument index="1" name="clipabove" type="bool" default="true">
</argument>
<argument index="2" name="floor" type="int" default="0">
</argument>
<argument index="3" name="axis" type="int" enum="Vector3.Axis" default="0">
</argument>
<description>
</description>
</method>
2018-01-03 20:45:03 +08:00
<method name="set_collision_layer_bit">
<return type="void">
</return>
<argument index="0" name="bit" type="int">
</argument>
<argument index="1" name="value" type="bool">
</argument>
<description>
</description>
</method>
<method name="set_collision_mask_bit">
<return type="void">
</return>
<argument index="0" name="bit" type="int">
</argument>
<argument index="1" name="value" type="bool">
</argument>
<description>
</description>
</method>
2017-10-21 18:02:08 +08:00
<method name="world_to_map" qualifiers="const">
<return type="Vector3">
</return>
<argument index="0" name="pos" type="Vector3">
</argument>
<description>
</description>
</method>
</methods>
2018-01-03 20:45:03 +08:00
<members>
2018-01-12 06:38:35 +08:00
<member name="cell_center_x" type="bool" setter="set_center_x" getter="get_center_x">
If [code]true[/code], grid items are centered on the X axis.
2018-01-12 06:38:35 +08:00
</member>
<member name="cell_center_y" type="bool" setter="set_center_y" getter="get_center_y">
If [code]true[/code], grid items are centered on the Y axis.
2018-01-12 06:38:35 +08:00
</member>
<member name="cell_center_z" type="bool" setter="set_center_z" getter="get_center_z">
If [code]true[/code], grid items are centered on the Z axis.
2018-01-12 06:38:35 +08:00
</member>
<member name="cell_octant_size" type="int" setter="set_octant_size" getter="get_octant_size">
The size of each octant measured in number of cells. This applies to all three axis.
</member>
<member name="cell_scale" type="float" setter="set_cell_scale" getter="get_cell_scale">
</member>
<member name="cell_size" type="Vector3" setter="set_cell_size" getter="get_cell_size">
The dimensions of the grid's cells.
</member>
2018-01-03 20:45:03 +08:00
<member name="collision_layer" type="int" setter="set_collision_layer" getter="get_collision_layer">
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask">
</member>
2018-08-30 04:25:11 +08:00
<member name="mesh_library" type="MeshLibrary" setter="set_mesh_library" getter="get_mesh_library">
2018-01-12 06:38:35 +08:00
The assigned [MeshLibrary].
</member>
2018-08-30 04:25:11 +08:00
<member name="theme" type="MeshLibrary" setter="set_theme" getter="get_theme">
Deprecated, use [member mesh_library] instead.
</member>
2018-01-03 20:45:03 +08:00
</members>
<constants>
2017-11-25 06:16:30 +08:00
<constant name="INVALID_CELL_ITEM" value="-1">
2017-10-08 18:14:09 +08:00
Invalid cell item that can be used in [method set_cell_item] to clear cells (or represent an empty cell in [method get_cell_item]).
</constant>
</constants>
</class>