MCPcopy Create free account
hub / github.com/esengine/esengine / getTileUV

Method getTileUV

packages/tilemap/src/TilemapComponent.ts:1000–1020  ·  view source on GitHub ↗

* Get UV coordinates for a tile * 获取 tile 的 UV 坐标 * * 使用 UVHelper 计算 OpenGL 纹理坐标。 * Uses UVHelper to calculate OpenGL texture coordinates. * * @see UVHelper.calculateTileUV for coordinate system documentation * @param tilesetIndex Tileset index | Tileset 索引 *

(tilesetIndex: number, localTileId: number)

Source from the content-addressed store, hash-verified

998 * @returns [u0, v0, u1, v1] OpenGL UV coordinates, or null if invalid
999 */
1000 getTileUV(tilesetIndex: number, localTileId: number): [number, number, number, number] | null {
1001 if (localTileId <= 0) return null;
1002
1003 const tilesetData = this.getTilesetData(tilesetIndex);
1004 if (!tilesetData) {
1005 console.warn('[TilemapComponent] getTileUV: No tileset data for index', tilesetIndex);
1006 return null;
1007 }
1008
1009 // Use UVHelper for coordinate calculation
1010 // 使用 UVHelper 计算坐标
1011 return UVHelper.calculateTileUV(localTileId - 1, {
1012 columns: tilesetData.columns,
1013 tileWidth: tilesetData.tileWidth,
1014 tileHeight: tilesetData.tileHeight,
1015 imageWidth: tilesetData.imageWidth,
1016 imageHeight: tilesetData.imageHeight,
1017 margin: tilesetData.margin,
1018 spacing: tilesetData.spacing
1019 });
1020 }
1021
1022 // ===== Resize | 大小调整 =====
1023

Callers 1

buildLayerRenderDataMethod · 0.80

Calls 3

getTilesetDataMethod · 0.95
calculateTileUVMethod · 0.80
warnMethod · 0.45

Tested by

no test coverage detected