TileMapLayer
Entity 2D карт на основе плитки.
Entity 2D карт на основе плитки.
Entity 2D карт на основе плитки. TileMapLayer использует a TileSet которые содержат список плиток, используемых для создания карт на основе сетки. TileMap узел, который оскверняется, TileMapLayer Вы можете использовать несколько слоёв плитки TileMapLayer достижения того же результата, что и TileMap Узел.
По причинам эффективности работы все TileMap В конце рамы производится набор данных. Это, в частности, означает, что сцена из плитки TileSetScenesCollectionSource Они инициализируются после их родителей.
Чтобы запустить обновление, звоните. TileMapLayer.UpdateInternals.
Примечание: По соображениям эффективности и совместимости координаты, серийные TileMapLayer дальность для координат X и Y от -32768 в адрес 32767. При сохранении данных о плитках плитки, находящиеся за пределами этого диапазона, завернуты.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
TileMapLayerКонструктор
public TileMapLayer();Свойства13
CollisionEnabledСвойство
public bool CollisionEnabled { get; set; }Включить или отключить столкновения.
CollisionVisibilityModeСвойство
public TileMapLayer.DebugVisibilityMode CollisionVisibilityMode { get; set; }Показать или скрыть формы столкновений TileMapLayer. Если установлено значение TileMapLayer.DebugVisibilityMode.Default, это зависит от настроек отладки столкновений.
EnabledСвойство
public bool Enabled { get; set; }Если false, полностью отключает этот TileMapLayer (рендеринг, столкновения, навигацию, тайлы сцены и т. д.)
NavigationEnabledСвойство
public bool NavigationEnabled { get; set; }Если true, области навигации включены.
NavigationVisibilityModeСвойство
public TileMapLayer.DebugVisibilityMode NavigationVisibilityMode { get; set; }Показать или скрыть навигационные сетки TileMapLayer. Если установлено значение TileMapLayer.DebugVisibilityMode.Default, это зависит от настроек отладки навигации показа.
OcclusionEnabledСвойство
public bool OcclusionEnabled { get; set; }Включить или отключить окклюзию света.
PhysicsQuadrantSizeСвойство
public int PhysicsQuadrantSize { get; set; }Размер физического квадранта TileMapLayer. Внутри физического квадранта ячейки со схожими физическими свойствами группируются вместе, и их формы столкновений объединяются. TileMapLayer.PhysicsQuadrantSize определяет длину стороны квадрата в системе координат карты, которая образует квадрант. Таким образом, размер квадранта по умолчанию группирует 16 * 16 = 256 тайлов.
Примечание: Поскольку квадранты создаются в соответствии с системой координат карты, «квадратная форма» квадранта может не выглядеть как квадрат в локальной системе координат TileMapLayer.
Примечание: Это влияет на значение, возвращаемое TileMapLayer.GetCoordsForBodyRid. Более высокие значения сделают эту функцию менее точной. Чтобы получить точные координаты ячейки, необходимо установить параметр TileMapLayer.PhysicsQuadrantSize равным 1, что отключает разбиение физических ячеек на блоки.
RenderingQuadrantSizeСвойство
public int RenderingQuadrantSize { get; set; }Размер квадранта рендеринга TileMapLayer. Квадрант — это группа тайлов, которые нужно нарисовать вместе на одном элементе холста в целях оптимизации. TileMapLayer.RenderingQuadrantSize определяет длину стороны квадрата в системе координат карты, которая образует квадрант. Таким образом, размер квадранта по умолчанию группирует вместе 16 * 16 = 256 тайлов.
Размер квадранта не применяется к отсортированному по Y TileMapLayer, так как в этом случае тайлы группируются по положению Y.
Примечание: Поскольку квадранты создаются в соответствии с системой координат карты, «квадратная форма» квадранта может не выглядеть как квадрат в локальной системе координат TileMapLayer.
TileMapDataСвойство
public byte[] TileMapData { get; set; }Бинарные данные клеток, без самого TileSet и его текстур. В формате проверенной версии координаты записываются как знаковые 16-битные числа: сохраняйте их в [-32768,32767]. Клетка (40000,0) существует во время работы, но после сохранения и загрузки становится (-25536,0). Не считайте этот массив универсальным долговременным форматом сейва; сохраняйте привязку к нужному TileSet и версию своей схемы.
TileSetСвойство
UseKinematicBodiesСвойство
public bool UseKinematicBodies { get; set; }Если true, то формы столкновений TileMapLayer будут инстанцированы как кинематические тела. Это может понадобиться для перемещения узлов TileMapLayer (т. е. перемещения платформ).
XDrawOrderReversedСвойство
public bool XDrawOrderReversed { get; set; }Если CanvasItem.YSortEnabled включен, установка этого параметра в true изменит порядок отрисовки плиток на оси X на обратный.
YSortOriginСвойство
public int YSortOrigin { get; set; }Это значение Y-сортное происхождение добавляется к значению Y-сортное происхождение каждого тайла. Это позволяет, например, подделать другой уровень высоты. Это может быть полезно для игр с видом сверху вниз.
Методы59
Clearvoid
public void Clear();Очистка всех ячеек.
EraseCellvoid
public void EraseCell(Vector2I coords);Стирает ячейку с координатами coords.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
FixInvalidTilesvoid
public void FixInvalidTiles();Очищает ячейки, содержащие тайлы, которые не существуют в TileMapLayer.TileSet.
GetCellAlternativeTileint
public int GetCellAlternativeTile(Vector2I coords);Возвращает идентификатор альтернативного тайла ячейки по координатам coords.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
intGetCellAtlasCoordsVector2I
public Vector2I GetCellAtlasCoords(Vector2I coords);Возвращает идентификатор координат атласа тайла ячейки с координатами coords. Возвращает Vector2i(-1, -1), если ячейка не существует.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
Vector2IGetCellSourceIdint
public int GetCellSourceId(Vector2I coords);Возвращает идентификатор источника тайла ячейки с координатами coords. Возвращает -1, если ячейка не существует.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
intGetCellTileDataTileData
public TileData GetCellTileData(Vector2I coords);Читает TileData для действительной atlas-клетки. Это данные тайла в общем TileSet, не уникальное изменяемое состояние экземпляра клетки. Перед использованием назначьте TileSet и проверьте наличие клетки.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
coordsКоордината клетки в сетке слоя.
TileDataTileData из TileSetAtlasSource либо null для пустой клетки или источника другого типа. Проверяйте результат перед обращением к данным.
GetCollisionVisibilityModeTileMapLayer.DebugVisibilityMode
public TileMapLayer.DebugVisibilityMode GetCollisionVisibilityMode();TileMapLayer.DebugVisibilityModeGetCoordsForBodyRidVector2I
public Vector2I GetCoordsForBodyRid(Rid body);Возвращает координаты физического квадранта (см. TileMapLayer.PhysicsQuadrantSize) для заданного физического тела Rid. Такой Rid можно получить из KinematicCollision2D.GetColliderRid при столкновении с тайлом.
Примечание: Более высокие значения TileMapLayer.PhysicsQuadrantSize сделают эту функцию менее точной. Чтобы получить точные координаты ячейки, необходимо установить TileMapLayer.PhysicsQuadrantSize равным 1, что отключает разбиение физического тела на блоки.
| Имя | Тип | По умолчанию |
|---|---|---|
body | Rid | — |
Vector2IGetNavigationMapRid
public Rid GetNavigationMap();Возвращает Rid навигации NavigationServer2D, используемой этим TileMapLayer.
По умолчанию возвращается карта навигации World2D по умолчанию, если только пользовательская карта не была предоставлена с помощью TileMapLayer.SetNavigationMap.
RidGetNavigationVisibilityModeTileMapLayer.DebugVisibilityMode
public TileMapLayer.DebugVisibilityMode GetNavigationVisibilityMode();TileMapLayer.DebugVisibilityModeGetNeighborCellVector2I
public Vector2I GetNeighborCell(Vector2I coords, TileSet.CellNeighbor neighbor);Возвращает соседнюю ячейку к ячейке с координатами coords, идентифицированной направлением neighbor. Этот метод учитывает различные макеты, которые может принимать TileMap.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
neighbor | TileSet.CellNeighbor | — |
Vector2IGetPatternTileMapPattern
public TileMapPattern GetPattern(Reckfell.Collections.Array<Vector2I> coordsArray);Создает и возвращает новый TileMapPattern из указанного массива ячеек. См. также TileMapLayer.SetPattern.
| Имя | Тип | По умолчанию |
|---|---|---|
coordsArray | Reckfell.Collections.Array<Vector2I> | — |
TileMapPatternGetPhysicsQuadrantSizeint
public int GetPhysicsQuadrantSize();intGetRenderingQuadrantSizeint
public int GetRenderingQuadrantSize();intGetSurroundingCellsReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetSurroundingCells(Vector2I coords);Возвращает список всех соседних ячеек для ячейки с coords. Любая соседняя ячейка — это та, которая касается краев, поэтому для квадратной ячейки будет возвращено 4 ячейки, для шестиугольника — 6 ячеек.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
Reckfell.Collections.Array<Vector2I>GetTileMapDataAsArraybyte[]
public byte[] GetTileMapDataAsArray();byte[]GetTileSetTileSet
public TileSet GetTileSet();TileSetGetUsedCellsReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetUsedCells();Возвращает массив Vector2I с позициями всех ячеек, содержащих тайл. Ячейка считается пустой, если ее исходный идентификатор равен -1, ее идентификатор координат атласа равен Vector2(-1, -1), а ее альтернативный идентификатор равен -1.
Reckfell.Collections.Array<Vector2I>GetUsedCellsByIdReckfell.Collections.Array<Vector2I>
public Reckfell.Collections.Array<Vector2I> GetUsedCellsById(int sourceId = -1, Vector2I? atlasCoords = default, int alternativeTile = -1);Возвращает массив Vector2I с позициями всех ячеек, содержащих тайл. Тайлы могут быть отфильтрованы по их источнику (source_id), координатам атласа (atlas_coords) или альтернативному идентификатору (alternative_tile).
Если параметр имеет значение по умолчанию, он не используется для фильтрации ячеек. Таким образом, если все параметры имеют свои значения по умолчанию, этот метод возвращает тот же результат, что и TileMapLayer.GetUsedCells.
Ячейка считается пустой, если её идентификатор источника равен -1, координаты атласа — Vector2(-1, -1), а альтернативный идентификатор — -1.
| Имя | Тип | По умолчанию |
|---|---|---|
sourceId | int | -1 |
atlasCoords | Vector2I? | default |
alternativeTile | int | -1 |
atlasCoordsЕсли параметр не имеет значения, то значение по умолчанию: new Vector2I(-1, -1).
Reckfell.Collections.Array<Vector2I>GetUsedRectRect2I
public Rect2I GetUsedRect();Охватывающий прямоугольник непустых клеток в координатах сетки. Это не размер в пикселях, экранные границы или область коллизии.
Rect2IRect2I по клеткам; пустой прямоугольник, если клеток нет. Карта 20×15 с координатами от (0,0) до (19,14) даёт позицию (0,0) и размер (20,15).
GetYSortOriginint
public int GetYSortOrigin();intHasBodyRidbool
public bool HasBodyRid(Rid body);Возвращает, принадлежит ли предоставленный body Rid одной из ячеек TileMapLayer.
| Имя | Тип | По умолчанию |
|---|---|---|
body | Rid | — |
boolIsCellFlippedHbool
public bool IsCellFlippedH(Vector2I coords);Возвращает true, если ячейка с координатами coords перевернута по горизонтали. Результат действителен только для источников атласа.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
boolIsCellFlippedVbool
public bool IsCellFlippedV(Vector2I coords);Возвращает true, если ячейка с координатами coords перевернута вертикально. Результат действителен только для источников атласа.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
boolIsCellTransposedbool
public bool IsCellTransposed(Vector2I coords);Возвращает true, если ячейка с координатами coords транспонирована. Результат действителен только для источников атласа.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
boolIsCollisionEnabledbool
public bool IsCollisionEnabled();boolIsEnabledbool
public bool IsEnabled();boolIsNavigationEnabledbool
public bool IsNavigationEnabled();boolIsOcclusionEnabledbool
public bool IsOcclusionEnabled();boolIsUsingKinematicBodiesbool
public bool IsUsingKinematicBodies();boolIsXDrawOrderReversedbool
public bool IsXDrawOrderReversed();boolLocalToMapVector2I
public Vector2I LocalToMap(Vector2 localPosition);Находит клетку по локальной позиции слоя. Для canvas-позиции сначала вызовите ToLocal. Не заменяйте преобразование приведением деления к int: отрицательные значения и другие раскладки дают иной результат.
| Имя | Тип | По умолчанию |
|---|---|---|
localPosition | Vector2 | — |
localPositionПозиция в локальных координатах TileMapLayer, не InputEvent.Position напрямую.
Vector2IКоордината клетки. На квадратной сетке 16×16 локальная точка (-1,-1) относится к клетке (-1,-1).
MapPatternVector2I
public Vector2I MapPattern(Vector2I positionInTilemap, Vector2I coordsInPattern, TileMapPattern pattern);Возвращает соответствующие координаты ячейки для заданных координат coords_in_pattern в TileMapPattern, если шаблон был вставлен по координатам position_in_tilemap (см. TileMapLayer.SetPattern). Это сопоставление необходимо, потому что для фигур тайлов со смещением на половину простое вычисление position_in_tile_map + coords_in_pattern может не сработать.
| Имя | Тип | По умолчанию |
|---|---|---|
positionInTilemap | Vector2I | — |
coordsInPattern | Vector2I | — |
pattern | TileMapPattern | — |
Vector2IMapToLocalVector2
public Vector2 MapToLocal(Vector2I mapPosition);Переводит координаты сетки в центр клетки относительно TileMapLayer. Учитывает форму и раскладку TileSet, но не трансформацию Entity в canvas и не смещение изображения TileData.TextureOrigin.
| Имя | Тип | По умолчанию |
|---|---|---|
mapPosition | Vector2I | — |
mapPositionЦелочисленная координата клетки.
Vector2Локальная позиция центра. Для квадратной сетки 16×16 клетка (2,3) даёт (40,56). Для canvas-позиции примените ToGlobal.
NotifyRuntimeTileDataUpdatevoid
public void NotifyRuntimeTileDataUpdate();Уведомляет узел TileMapLayer, что вызовы TileMapLayer._UseTileDataRuntimeUpdate или TileMapLayer._TileDataRuntimeUpdate приведут к разным результатам. Таким образом, это вызовет обновление TileMapLayer.
Предупреждение: Обновление TileMapLayer требует больших вычислительных затрат и может повлиять на производительность. Постарайтесь ограничить количество вызовов этой функции, чтобы избежать ненужного обновления.
Примечание: Это не запускает прямое обновление TileMapLayer, обновление будет выполнено в конце кадра, как обычно (если только вы не вызовете TileMapLayer.UpdateInternals).
SetCellvoid
public void SetCell(Vector2I coords, int sourceId = -1, Vector2I? atlasCoords = default, int alternativeTile = 0);Задаёт ссылку клетки на тайл: sourceId, atlasCoords и alternativeTile. Передавайте все нужные идентификаторы явно. Если один из них равен недопустимому значению, клетка становится пустой. Логические данные меняются сразу, а пакеты отрисовки/физики обновляются отложенно.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
sourceId | int | -1 |
atlasCoords | Vector2I? | default |
alternativeTile | int | 0 |
coordsЦелочисленные координаты клетки в сетке слоя, не пиксели и не координаты атласа.
sourceIdID источника в TileSet. По умолчанию -1, что удаляет тайл. ID источника и координаты изображения — разные значения.
atlasCoordsКоординаты тайла в сетке атласа. Значение по умолчанию соответствует недопустимым (-1,-1), а не Vector2I.Zero. Поэтому SetCell(coords, 0) очищает клетку вместо выбора первого тайла.
alternativeTileID альтернативы; 0 — базовый вариант. Для atlas-источника также могут использоваться предусмотренные transform-флаги. Значение -1 делает клетку пустой.
SetCellsTerrainConnectvoid
public void SetCellsTerrainConnect(Reckfell.Collections.Array<Vector2I> cells, int terrainSet, int terrain, bool ignoreEmptyTerrains = true);Обновить все ячейки в массиве координат cells так, чтобы они использовали заданный terrain для заданного terrain_set. Если обновленная ячейка имеет тот же рельеф, что и одна из соседних ячеек, эта функция пытается объединить две. Эта функция может обновить соседние тайлы, если это необходимо для создания правильных переходов рельефа.
Если ignore_empty_terrains имеет значение true, пустые ландшафты будут игнорироваться при попытке найти наиболее подходящий тайл для заданных ограничений рельефа.
Примечание: Для корректной работы этот метод требует, чтобы TileSet TileMapLayer имел ландшафты (terrain), настроенные со всеми требуемыми комбинациями рельефа. В противном случае это может привести к неожиданным результатам.
| Имя | Тип | По умолчанию |
|---|---|---|
cells | Reckfell.Collections.Array<Vector2I> | — |
terrainSet | int | — |
terrain | int | — |
ignoreEmptyTerrains | bool | true |
SetCellsTerrainPathvoid
public void SetCellsTerrainPath(Reckfell.Collections.Array<Vector2I> path, int terrainSet, int terrain, bool ignoreEmptyTerrains = true);Обновите все ячейки в массиве координат path, чтобы они использовали заданный terrain для заданного terrain_set. Функция также соединит две последовательные ячейки на пути с тем же рельефом. Эта функция может обновить соседние тайлы, если необходимо создать правильные переходы рельефа.
Если ignore_empty_terrains имеет значение true, пустые ландшафты будут игнорироваться при попытке найти наиболее подходящий тайл для заданных ограничений рельефа.
Примечание: Для корректной работы этот метод требует, чтобы TileSet TileMapLayer имел ландшафты, настроенные со всеми требуемыми комбинациями рельефа. В противном случае это может привести к неожиданным результатам.
| Имя | Тип | По умолчанию |
|---|---|---|
path | Reckfell.Collections.Array<Vector2I> | — |
terrainSet | int | — |
terrain | int | — |
ignoreEmptyTerrains | bool | true |
SetCollisionEnabledvoid
public void SetCollisionEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetCollisionVisibilityModevoid
public void SetCollisionVisibilityMode(TileMapLayer.DebugVisibilityMode visibilityMode);| Имя | Тип | По умолчанию |
|---|---|---|
visibilityMode | TileMapLayer.DebugVisibilityMode | — |
SetEnabledvoid
public void SetEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetNavigationEnabledvoid
public void SetNavigationEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetNavigationMapvoid
public void SetNavigationMap(Rid map);Устанавливает пользовательскую map как навигационную карту NavigationServer2D. Если не установлено, вместо этого используется навигационная карта по умолчанию World2D.
| Имя | Тип | По умолчанию |
|---|---|---|
map | Rid | — |
SetNavigationVisibilityModevoid
public void SetNavigationVisibilityMode(TileMapLayer.DebugVisibilityMode showNavigation);| Имя | Тип | По умолчанию |
|---|---|---|
showNavigation | TileMapLayer.DebugVisibilityMode | — |
SetOcclusionEnabledvoid
public void SetOcclusionEnabled(bool enabled);| Имя | Тип | По умолчанию |
|---|---|---|
enabled | bool | — |
SetPatternvoid
public void SetPattern(Vector2I position, TileMapPattern pattern);Вставляет TileMapPattern в указанную position на карте тайлов. См. также TileMapLayer.GetPattern.
| Имя | Тип | По умолчанию |
|---|---|---|
position | Vector2I | — |
pattern | TileMapPattern | — |
SetPhysicsQuadrantSizevoid
public void SetPhysicsQuadrantSize(int size);| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
SetRenderingQuadrantSizevoid
public void SetRenderingQuadrantSize(int size);| Имя | Тип | По умолчанию |
|---|---|---|
size | int | — |
SetTileMapDataFromArray2 перегрузки
public void SetTileMapDataFromArray(byte[] tileMapLayerData);| Имя | Тип | По умолчанию |
|---|---|---|
tileMapLayerData | byte[] | — |
public void SetTileMapDataFromArray(ReadOnlySpan<byte> tileMapLayerData);| Имя | Тип | По умолчанию |
|---|---|---|
tileMapLayerData | ReadOnlySpan<byte> | — |
SetTileSetvoid
public void SetTileSet(TileSet tileSet);| Имя | Тип | По умолчанию |
|---|---|---|
tileSet | TileSet | — |
SetUseKinematicBodiesvoid
public void SetUseKinematicBodies(bool useKinematicBodies);| Имя | Тип | По умолчанию |
|---|---|---|
useKinematicBodies | bool | — |
SetXDrawOrderReversedvoid
public void SetXDrawOrderReversed(bool xDrawOrderReversed);| Имя | Тип | По умолчанию |
|---|---|---|
xDrawOrderReversed | bool | — |
SetYSortOriginvoid
public void SetYSortOrigin(int ySortOrigin);| Имя | Тип | По умолчанию |
|---|---|---|
ySortOrigin | int | — |
UpdateInternalsvoid
public void UpdateInternals();Принудительно обрабатывает накопленные внутренние изменения слоя. Обычно они пакетируются; вызывайте один раз после серии правок, если обновление нужно раньше штатного отложенного шага. Метод не прокручивает физическое время и не должен вызываться после каждой клетки в большом цикле.
_TileDataRuntimeUpdatevoid
public virtual void _TileDataRuntimeUpdate(Vector2I coords, TileData tileData);Вызывается с объектом TileData, который будет использоваться внутри TileMapLayer, что позволяет изменять его во время выполнения.
Этот метод вызывается только в том случае, если реализован TileMapLayer._UseTileDataRuntimeUpdate и возвращает true для заданного тайла coords.
Предупреждение: Подресурсы объекта tile_data такие же, как в TileSet. Их изменение может повлиять на весь TileSet. Вместо этого обязательно дублируйте эти ресурсы.
Примечание: Если свойства объекта tile_data должны со временем измениться, используйте TileMapLayer.NotifyRuntimeTileDataUpdate, чтобы уведомить TileMapLayer, что ему нужно обновление.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
tileData | TileData | — |
_UpdateCellsvoid
public virtual void _UpdateCells(Reckfell.Collections.Array<Vector2I> coords, bool forcedCleanup);Позвонил, когда это TileMapLayer's клетки нуждаются во внутреннем обновлении. Это обновление может быть вызвано модификацией отдельных клеток или изменением TileMapLayer.TileSet (приведение всех клеток в очередь для обновления). Первый вызов к этой функции всегда для инициализации всех TileMapLayerКлетки. coords содержит координаты всех модифицированных клеток, примерно в том порядке, в котором они были изменены. forced_cleanup это true когда TileMapLayerВнутренности должны быть полностью очищены.
- Слой выключен;
- Слой не виден;
TileMapLayer.TileSetустановлен следующим образом:null;- Узел удаляется с дерева;
- Узел свободен.
Следует отметить, что любое внутреннее обновление данных в период проверки одного из этих условий считается "очисткой".
TileMapLayer.UpdateInternals. Предупреждение: Применение этого метода может привести к деградацииTileMapLayer- Это представление.
####use_til_data_reuntime update
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Reckfell.Collections.Array<Vector2I> | — |
forcedCleanup | bool | — |
_UseTileDataRuntimeUpdatebool
public virtual bool _UseTileDataRuntimeUpdate(Vector2I coords);Должен возвращать true, если тайл по координатам coords требует обновления во время выполнения.
Предупреждение: Убедитесь, что эта функция возвращает true только при необходимости. Обработка любого тайла во время выполнения без необходимости приведёт к значительному снижению производительности.
Примечание: Если результат этой функции должен измениться, используйте TileMapLayer.NotifyRuntimeTileDataUpdate, чтобы уведомить TileMapLayer о необходимости обновления.
| Имя | Тип | По умолчанию |
|---|---|---|
coords | Vector2I | — |
boolСигналы и события1
ChangedСобытие
public event Action Changed;Разрешено, когда это TileMapLayer" изменения в свойствах, включая изменения в присвоении TileSet.
Примечание: Этот сигнал может излучаться очень часто, когда партия модифицирует TileMapLayer. Избегать осуществления сложной обработки в рамках соединенной функции и рассмотреть вопрос о ее переносе на конец рамы (т.е. ReckfellObject.CallDeferred).
TileMapLayer.DebugVisibilityMode
| Значение | Описание |
|---|---|
Default = 0 | Скройте формы отладки столкновений или навигации в редакторе и используйте настройки отладки, чтобы определить их видимость в игре (например, |
ForceHide = 2 | Всегда скрывайте формы отладки столкновений или навигации. |
ForceShow = 1 | Всегда показывать формы отладки столкновений или навигации. |