@spearwolf/twopoint5d
Version:
Create 2.5D realtime graphics and pixelart with WebGL and three.js
68 lines • 1.88 kB
TypeScript
import type { WebGPURenderer } from 'three/webgpu';
import { Texture, TextureLoader, type ColorSpace, type TextureFilter } from 'three/webgpu';
import type { TextureSource } from './types.js';
export interface TextureOptions {
magFilter: TextureFilter;
minFilter: TextureFilter;
anisotrophy: number;
flipY: boolean;
colorSpace: ColorSpace;
}
declare const TextureClasses: {
anisotrophy: {
anisotrophy: number;
};
'anisotrophy-2': {
anisotrophy: number;
};
'anisotrophy-4': {
anisotrophy: number;
};
'no-anisotrophy': {
anisotrophy: number;
};
nearest: {
magFilter: 1003;
minFilter: 1003;
};
'mag-nearest': {
magFilter: 1003;
};
'min-nearest': {
minFilter: 1003;
};
linear: {
magFilter: 1006;
minFilter: 1006;
};
'mag-linear': {
magFilter: 1006;
};
'min-linear': {
minFilter: 1006;
};
flipy: {
flipY: boolean;
};
'no-flipy': {
flipY: boolean;
};
srgb: {
colorSpace: "srgb";
};
'linear-srgb': {
colorSpace: "srgb-linear";
};
};
export type TextureOptionClasses = keyof typeof TextureClasses;
export declare class TextureFactory {
#private;
textureLoader: TextureLoader;
constructor(maxAnisotrophyOrRenderer?: WebGPURenderer | number, defaultClassNames?: Array<TextureOptionClasses>, defaultOptions?: Partial<TextureOptions>);
getOptions(classNames: Array<TextureOptionClasses>): Partial<TextureOptions>;
create(source: TextureSource, ...classNames: Array<TextureOptionClasses>): Texture;
update(texture: Texture, ...classNames: Array<TextureOptionClasses>): Texture;
load(url: string, ...classNames: Array<TextureOptionClasses>): Texture;
}
export {};
//# sourceMappingURL=TextureFactory.d.ts.map