phaser-framework - Phaser 3 - 将形状固定到相机视图中
问题描述
我正在尝试从代表我的级别的随机生成的矩阵中绘制一个小地图。
为此,我一个一个地绘制黑色或白色的小方块来直观地表示矩阵(我不知道这是否是使用移相器的最佳方法,实际上,我是这个框架的初学者)。
地图绘制正确,但它的位置绑定到世界而不是相机,所以当我移动它时它不再可见。
这是我用来绘制地图的代码:
generate() {
let wallsGraphics = this._scene.add.graphics({fillStyle : {color : LabyrinthConfig.MAPS.MINI_MAP.WALLS_COLOR}});
let pathGraphics = this._scene.add.graphics({fillStyle : {color : LabyrinthConfig.MAPS.MINI_MAP.PATH_COLOR}});
// Draw the map
let y = 0;
for (let line of this._matrix) {
let x = 0;
for (let cell of line) {
let rect = new Phaser.Geom.Rectangle();
rect.width = LabyrinthConfig.MAPS.MINI_MAP.CELL_WIDTH;
rect.height = LabyrinthConfig.MAPS.MINI_MAP.CELL_HEIGHT;
rect.x = LabyrinthConfig.MAPS.MINI_MAP.POSITION_X + x * LabyrinthConfig.MAPS.MINI_MAP.CELL_WIDTH;
rect.y = LabyrinthConfig.MAPS.MINI_MAP.POSITION_Y + y * LabyrinthConfig.MAPS.MINI_MAP.CELL_HEIGHT;
cell === 0 ? wallsGraphics.fillRectShape(rect) : pathGraphics.fillRectShape(rect);
x++;
}
y++;
}
}
有关如何将此地图修复到相机视图的任何帮助?
解决方案
将图形对象的滚动因子设置为 0。
wallsGraphics.setScrollFactor(0);
pathGraphics.setScrollFactor(0);
推荐阅读
- python-3.x - py_call_impl(callable, dots$args, dots$keywords) 中的 Keras 错误:
- .net - 改变sidetoc的宽度
- c# - 抓钩关节不会钩到游戏对象 Unity
- python - 如果对象包含键,则从数组中删除对象:值为空
- eclipse - 用于 if 条件和函数参数对齐的 Eclipse Java 格式化程序设置
- python - 每次我从我的烧瓶应用程序将其提交到数据库时都会出错
- c++ - 为什么我们只能用原始类型或指针初始化结构?
- android - 点击 recyclerview 时隐藏浮动操作按钮 (FAB)
- django - Faker() 引发 Django ImproperlyConfigured 错误
- c# - 如何将int转换为枚举而不是使用switch