Вот тупица...
Портируя старый код, я получил эту 2D-шестигранную сетку, визуализируемую в 2.5D:
Y-масштаб и положение плиток рассчитываются для перспективы, но я хотел бы также масштабировать и располагать их для перспективы по горизонтали (мультяшки в верхней части доски выглядят сплющенными). Вот текущий код:
const SCALE_X = PixiStages.game._width * 0.0012;
const SCALE_Y = PixiStages.game._height * 0.0018;
this.scale.x = SCALE_X;
this.scale.y = SCALE_Y * ( 0.5 + 0.5 * gamePiece.y / Game.TILE_ROWS );
const getStageXFromBoardX = ( board_x ) => {
const tileWidth = SCALE_X * 38;
return board_x*tileWidth;
}
const getStageYFromBoardY = ( board_y ) => {
const tileHeight = SCALE_Y * 44;
return board_y*tileHeight/4 + board_y*board_y*tileHeight / (8*Game.TILE_ROWS);
}
Простое изменение масштаба x на this.scale.x = SCALE_X * ( 0.5 + 0.5 * gamePiece.y / Game.TILE_ROWS );
выглядит так:
... так что, думаю, мне просто нужно уравнение, чтобы правильно установить их x-позицию.
Любые идеи или ссылки? Спасибо!