Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 计算Pixi.js中sprite纹理的分辨率_Javascript_Webgl_Pixi.js - Fatal编程技术网

Javascript 计算Pixi.js中sprite纹理的分辨率

Javascript 计算Pixi.js中sprite纹理的分辨率,javascript,webgl,pixi.js,Javascript,Webgl,Pixi.js,如何计算PIXI.js中生成纹理的分辨率。generateTexture(…)的文档需要一个用于解析的数字 文件: 在下面的示例中,将绘制具有特定宽度和高度的矩形。在我看来,分辨率是通过宽度和高度相乘得到的像素数 this._graphics.lineStyle(1, 0x012489, 1.0); this._graphics.beginFill(0x696969, this.1.0); this._graphics.drawRect(-(width/2.0), -(height/2.0),

如何计算PIXI.js中生成纹理的分辨率。generateTexture(…)的文档需要一个用于解析的数字

文件:

在下面的示例中,将绘制具有特定宽度和高度的矩形。在我看来,分辨率是通过宽度和高度相乘得到的像素数

this._graphics.lineStyle(1, 0x012489, 1.0);
this._graphics.beginFill(0x696969, this.1.0);
this._graphics.drawRect(-(width/2.0), -(height/2.0), width, height);
this._graphics.endFill();

this.texture = this._graphics.generateTexture(width * height, PIXI.SCALE_MODES.DEFAULT);

从代码来看,分辨率设置的似乎不是分辨率,而是相对分辨率,实际上是这样的:,因此它指出:“具有不同像素比率的设备的纹理分辨率”


默认值为1,这对于桌面设备是正常的,移动设备上的像素比率可以不同。您应该能够使用此函数获得像素比率(getPixelRatio):,但该函数并未经过真正的战斗测试,尽管到目前为止在测试中也没有显示任何问题。

您的假设听起来不错,但我现在无法确认。但是你似乎没有考虑起始的x和y坐标。尺寸不仅仅是宽度*高度,因为你不从坐标0,0开始。还要注意的是,由于图形是矢量,您当然可以提供您希望图像具有的任何分辨率。它不需要与图形中的完全相同,因为它会被缩放。