(3.6.1) Image Empties have no texture filtering options to speak of(?)

Image Empties appear to default to using Linear texture filtering, which makes distinguishing between pixels when working with pixel-art cumbersome. As far as I know, the option to change the method of filtering is either invisible or nonexistent, and the only known solution to this problem is avoiding using empties altogether; I post this topic in the hopes I am wrong.

First off, welcome to the community, @VanishingPoint! It might help to have a little background as to why you are using the Image Empties in the first place. In digging around in the system myself, I wasn’t able to find a clear way to change filtering/interpolation for images when added to your scene as Image Empties (or as Image > Background from the Shift + A Add menu).

I think this gets back to the why…Are you trying to use the images as reference to model off of? That’s a simple fix. Open the image in Gimp or Photoshop or Photopea or whatever, scale your reference photo by a factor of 4 (make it substantially big enough that you won’t need to scale too much within Blender), and load it back in Blender as an Image Empty.

To get around the lack of resampling/filtering options for Image Empties, you can use the free bundled add-on called Import Images as Planes, and that will give you texture interpolation options. After enabling the add-on, you’ll have a new option in the Add > Image menu called “Images as Planes”. From there, choose your image, and on the Import Options on the right, select Shadeless in the Material Settings Material Type section, and select Closest from the Texture Settings Interpolation section.

Here’s an example. In the center, I have added a 32x32 pixel art sample (credit to LucidNightmarezz on DeviantArt) as an Image Empty. I see the blurry mess you are probably seeing. On the left, I scaled up the 32x32 image to 4096x4096 on Photopea and loaded it back in as an Image Empty. On the right, I used the Images as Planes add-on to add the 32x32 version in as a plane (with Shadeless/Closest). The main thing with this method is that you have to be in Material Preview mode in order to see the texture.

I hope these options help, but if not, can you give us a bit more about what you’re doing with image planes and we can help you come up with a solution?

2 Likes

Well… blender is full of surprises… :wink:

Just for the benefit of @VanishingPoint, I think you’re pointing out that you can show the object’s texture while in Solid mode by clicking the Viewport Shading options drop down and selecting Texture under the Color section. You’re spot on! You absolutely can see the texture of your object in a mode that isn’t Material Preview.

Now, there are a couple of things, though. As Image Empties are treated as Overlays, they still display when you are in Wireframe Mode in the viewport (and all other view modes). So, you can’t use the second option in Wireframe mode (Images as Planes). If you want to be able to use your reference image empty in Wireframe mode, the resize by factor of 4 in an image program is the best way forward:

If you don’t need to be able to see your reference image in Wireframe mode, @Okidoki’s suggestion gets you the texture in Solid mode - but if you don’t want it affected by the default Studio lighting setup in the viewport’s Solid mode, select the Flat option in the Lighting section:

1 Like

If scaling the image is truly the only way to get crisp pixelart on an Image Empty, that’s a tad unfortunate, as well as quite strange, considering that in every other instance, images are free to choose their own filtering method. One problem I see coming from this is when, like in my case, the image is quite large- not because it is hi-def, but because it is packed with detail. If I were to scale my image 128x like you did, it would go from 816 x 850 to a whopping 104,448 x 108,800, which means having to cutting the image into pieces if you want to use it in Blender at some point.

By the way, the main reason I want to stick with using Image Empties for reference is their unique ability to draw over (or under) all the elements in a scene and to be transparent, which make them perfect for their purpose. A plane won’t cut it in this case.

You might elaborate you use case… maybe even some thign like this would be more helpfull:

https://blender.stackexchange.com/questions/137052/create-geometry-based-on-an-image