如何在threejs / react-three-fiber中使用原始图像大小的纹理

How to use a texture in the size of the original image in threejs / react-three-fiber

我在一个项目中遇到了困难,我需要创建一个盒子来优化处理,我想要纹理是 16 px x 16 px。当我将它应用到盒子上时,无论盒子的大小如何,它都会像下图一样变得模糊。是否有可能将纹理的像素设置为看起来与图像完全一样?不使用大图?

使用 16 x 16 像素的图像生成。

使用 500 x 16 像素的图像生成。

我设法通过在纹理上添加过滤器来解决它: 示例:

import dirtImg from './images/dirt.jpg';
export const dirt = new TextureLoader().load(dirtImg);
dirt.magFilter = NearestFilter;
dirt.minFilter = LinearMipMapLinearFilter;