UV maps to stop small textures from being blurry (pixelated instead)

4/10/23: Solved! See below.

I am trying to figure out how to use UV maps to make small pixelated textures (think 128x128) to make models with sharp pixelated textures.

Here is an example of the type of model I am trying to make:

image

Currently, if I were to use a regular UV map and a small texture image, the model’s texture would be blurry.

I wondering how this resource make their small pixelated textures sharp when applied to their model through UV maps:

I find videos or tutorial articles super helpful. Explanations are great too. I appreciate any help!

4/10/23 Edit:
I figured out how this was done: a bunch of small faces were added for each pixel. (I then assume they used a super small UV box for each of them on the corresponding pixel of the texture.)
Screenshot 2023-04-10 at 3.38.03 PM
Unfortunately this won’t work for my game but it might be useful for other people to know.

image
u fixed stuff like this?

For UI you can use ResampleMode.

For 3D models like the character in the UI, the solution I found was a little hacky. It’s creating a polygon for each pixel then using UV mapping where each pixel goes only to the single polygon so it has no blur.

Both solutions–adding individual polygons for pixels and increasing the texture size by a magnitude–waste memory that is desperately needed.

I suspect though that adding individual polygons uses less memory (and it looks better) so it’s at least an improvement.

See this feature request:

And this one:

sorry but i really dont get this post? did you fix the head being extremely glitchy? if is then can i have the model? try making it simplified cuz im dum
also what i meant is if you fixed image being different on the front part in head

You can voxelize your mesh, bake the texture to the UV map of the voxelized one, and then use it as a texture for the non-voxelized mesh. UV maps are just directions for the renderer, so it knows where to put what. So you can texture on a different mesh. Normally, this is done to bake details from a high poly mesh onto a low poly one. But your situation would also benefit

I’m really not sure what’s going on here. This update was my “solution”–I was asking how a non-pixelated model was achieved in Roblox that used low resolution textures. Roblox’s forced antialiasing normally doesn’t allow that. What they did is they made their model have a polygon per pixel.

I’m sorry I have no idea what this is about. Please see the original post: this is about making pixelated 3D objects in Roblox. If you need help with something specific I would recommend creating a #help-and-feedback thread.

1 Like

I don’t have a ton of experience with modeling, but I don’t believe this works for Roblox. The problem is that roblox forces texture antialiasing, so pixelated textures appear blurry:

image

(Source: Horomori)

The model needs to be voxelized so that the edges between colors are discrete to avoid the antialiasing.

The alternative is to use huge textures (to represent what could be a very very small texture if Roblox didn’t force antialiasing), which cause the antialiasing to be very small and difficult to notice. This wastes a ton of memory though.

1 Like

You could also use vertex colors, but you’d have a lot of needless geometry.

1 Like

Works fine for me.

1 Like

What is the texture size? How many polygons is that?

If thats only 6 polygons that’s crazy! I’ll need to research how to do that. You should also reply to the engine feature requests above if that’s what I think it is, those are also people wanting to know how to make models like that with small texture sizes and reasonable poly counts.

my bad
i legit thought you had a solution for the head having issues

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.