30 lines
955 B
JavaScript
30 lines
955 B
JavaScript
import { TexturePool } from '../../../rendering/renderers/shared/texture/TexturePool.mjs';
|
|
import { Bounds } from '../../container/bounds/Bounds.mjs';
|
|
|
|
"use strict";
|
|
const tempBounds = new Bounds();
|
|
function getPo2TextureFromSource(image, width, height, resolution) {
|
|
const bounds = tempBounds;
|
|
bounds.minX = 0;
|
|
bounds.minY = 0;
|
|
bounds.maxX = image.width / resolution | 0;
|
|
bounds.maxY = image.height / resolution | 0;
|
|
const texture = TexturePool.getOptimalTexture(
|
|
bounds.width,
|
|
bounds.height,
|
|
resolution,
|
|
false
|
|
);
|
|
texture.source.uploadMethodId = "image";
|
|
texture.source.resource = image;
|
|
texture.source.alphaMode = "premultiply-alpha-on-upload";
|
|
texture.frame.width = width / resolution;
|
|
texture.frame.height = height / resolution;
|
|
texture.source.emit("update", texture.source);
|
|
texture.updateUvs();
|
|
return texture;
|
|
}
|
|
|
|
export { getPo2TextureFromSource };
|
|
//# sourceMappingURL=getPo2TextureFromSource.mjs.map
|