Texture size limit: 1024? And if i...

Ok, so the texture size limit is 1024 right?

And if:

I subdivide a plane (a quad one) once, UV map it with to a 2048X2048 texture and then separate the plane subdivisions into four other planes… What Blender is suppose to do? Render the whole texture as a 1024X1024 texture for each plane or what? Render the texture “quadrant” as a 1024X1024 texture? :spin:

Thank yo everyone!

if the whole texture is 2048 x 2048, and textures an entire plane that is subdivided evenly (re UV) into 16 squares, then each square will get 1/4 x 1/4, or 512 x 512 pixels.

By adjusting the UVs, of course, you can make any face get as many or as few pixels as you want, just so the total is less than 2kx2k.

Sorry i don’t understand… The maximum value for BGE to render is 1024X1024 pixels per quad is it right? Or the texture limit stills 512?

Well, I tried texturing a quad with 4096x4096 texture and it worked… I think maximum texture size is limited by graphics card capabilities.

OpenGL (which BGE uses) does not clip the texture according to the quads/triangles (neither does DX). So more quads/tris wont help in breaking the texture size limitation. The limit is video cards specific so OpenGL has nothing to do with that…

Actually, with textures at these resolutions you are talking about, the limitation is the display resolution of the monitor/tv. TV full screen is 720x480, so that’s the maximum resolution that could be shown. If you are playing a game in 800x600 resolution, and a low wall or whatever only ever occupies 1/2 of the screen, then it only ever needs to have an 800x300 resolution texture, so a 1kx1k could texture both sides of the wall (actually you would use the same texture for both sides), so you could texture a whole building with it.

Ok two questions:

  1. What is the maximum texture value for UV maps? I heard that Blender GE can handle 1024X1024 pixels textures. If i did a 2048X2048 texture and applied it to a plane, BGE will show just 1024 pixels.

  2. Suposing the maximum value is 1024. I did a texture 2048X2048 and applied it to a plane (a quad one). GE will handle 1024X1024 then.
    If i subdivide the textured quad and separate it in four pieces each one of these pieces will have an area of 1024 pixels BUT the texture remains the same (2048). UV was not redone! the new quads are located in four different quadrants of the same old (2048) texture but are seppareted meshes. Then, what is supposed to happen? How GE will handle this setup?

Thank you!

I think BGE will show just however many pixels fit in the window based on the viewed size of the object in the window.

Ok, the texture as loaded into memory independant of any UV mapping has a size limit of 1024 or whatever square pixels. If you want a 2048x2048 image, you have to manually make it four 1024 square images and apply them to four quads (can be the same mesh!).

This is same as I’ve seen it done in games – the exit screen for the UT2004 demo (which is still in the commercial files somewhere) is billboarded into 1024 or 512 square images. Some of the game textures probably are too.

Actually, with textures at these resolutions you are talking about, the limitation is the display resolution of the monitor/tv. TV full screen is 720x480, so that’s the maximum resolution that could be shown. If you are playing a game in 800x600 resolution, and a low wall or whatever only ever occupies 1/2 of the screen, then it only ever needs to have an 800x300 resolution texture, so a 1kx1k could texture both sides of the wall (actually you would use the same texture for both sides), so you could texture a whole building with it.

IDK about game design in general, but I know that UT approach to things has been to have a large amount of 1024 square images and scale them to fit the surfaces as needed. OTOH, they also overlay those with detail bumpmap-ish things that you can only see from a few feet away; and in that game it’s possible to get just about any piece of archatecture to fill your screen :slight_smile:

Seriously there are some BIG misunderstandings here…

Texture size limit is certainly NOT based on the screen size. IT IS TOTALLY BASED ON THE TEXTURE SIZE LIMIT IN YOUR VIDEO CARD.

When a texture is stored in OpenGL it is stored as a whole. It does not matter at all on how many quads it is or how large it is on a quad. The texture is an independent entity in OpenGL regardless of the UVs or the mesh. So no matter what you do, if your video card doesnt support 2048x2048 textures, you can not get it to render a one unless you make several smaller images of the texture which together make the bigger one.

“To crop” the mesh (considering it is a quad) in to four other quads AFTER doing the UV mapping work is not the same thing that to crop the own texture? Each one of this quads will fill just 1/4 of the texture isn’t it? :S

Thank you very much for your effort.

OpenGL has a limit of 4096x4096.
If even 1 pixel of your 2048x2048 texture is showing, it will still be the same as processing the 2048x2048 texture.
The only time it pays to have multiple objects on the same UV texture, is when those objects are all in the same scene.Then it will only save you the chop when the GE loads and unloads new textures.

If your textures are not square the GE will blit your texture over a black bitmap buffer that is square to your biggest dimension. (if you have a 64x128 texture, it will make a 128x128 buffer, then blit your texture over the top half.)

Why are you doing this? The way you are mapping it to a plane makes me assume that you are doing it for a terrain mesh. If this is the case, you may want to just make a material with a bunch of small seamless terrain textures, and one large mix map texture to define what texture goes where.You will be able to retain a higher resolution on your seamless textures so things look better.

Please excuse my jumping in here. I have been playing with the Blender GE for the past couple of months.We are switching over to Crystalspace right now. If things dont work out in Crystalspace we may be forced to buy a license for Half Life 2 with hammer.

Ok everyone… The correct Concept/Name i was looking for here is called “GL Texture Clamp”.

Resource:
http://blenderartists.org/forum/showthread.php?t=134276

It’s much easier to figure out in Blender 2.47. Just take a look inside “Sistem and open GL” menu. :wink:

:eyebrowlift:

Thank you very much everyone for your answers.