From: Daniel Dunderdale
But my question is why use 1024 instead of a easy number to use like 1000 or 2000?
Most things in computing are binary, so most items used in computing are measurable in powers of two. For example, a lot of people don't realize this, but a kilobyte is not actually 1000 bytes; it's 1024 bytes. And a megabyte is 1024 kilobytes, not 1000 kilobytes, and not 1 million bytes.
Textures follow this same rule. It's all about powers of two.
1000 or 2000 might seem like "easy numbers" to you as a typical human who's been raised on powers of ten. But think about it in terms of application, and it's not hard to see why numbers like that would actually make things more complicated, not less.
Say you start with a nice round number like 500. Now say you want to cut it half. No problem, right? You get 250. Well, let's say that's still too big, so you cut it one more time, and you get 125. That still works. But where do you go from there? If you were try to cut it in half one more time, you'd get 62.5. That doesn't work. There's no such thing as half a pixel.
Now let's do the same thing, except starting with 512 this time instead of 500. Cut it in half, and you get 256. Go again, and now it's 128. One more time, and it's 64. Then 32, then 16, then 8, then 2, and finally, 1. You see, from this perspective, powers of two are the "easy" numbers, and powers of ten are the "difficult" ones.
If we'd all been taught powers of two in grade school instead of powers of ten, this would all seem really obvious right away. But we happen to have 10 fingers, so powers of 10 long ago became the math we commonly use in our every day lives. Powers of two, therefore, can seem a little strange when we first encounter them.
But consider that we do use non-power-of-ten numbers all the time as well, and we don't even think about it. We've got no problem thinking in base-60 when it comes to measuring time in seconds and minutes. And then somehow we go to 24 for hours, which makes absolutely no sense, but we do it. Also, here in the US, we sure do like our 12 inches per foot, our three feet per yard, and our 5280 feet per mile, none of which is practical or logical, but we think nothing of it.
When we Americans are presented with systems that actually do make perfect sense, like the metric system (Royale with cheese!), we tend to hate it. We're a crazy, crazy people.
Anyway, texturing in powers of two is not just an SL thing, so you know. It's common practice across the industry. In fact, it was a strict requirement for decades, across nearly all platforms. Modern implementations of OpenGL and other graphics programming languages have softened that requirement somewhat in recent years, but there's still a lot of hardware out there that does require powers of two. If I remember correctly, LL did experiment with allowing non-power-of-two sizes for while, but quickly abandoned the experiment when graphics cards started crashing as a result.
From: Daniel Dunderdale
If i layout a grid pattern or anything where i want my guides or grid evenly spaced ,specific size, it`s much easier for me to divide it up from say a 1000 or 2000
It's actually no harder to make a grid for a power of two than for any other size. The reason you find it easy with sizes like 1000 or 2000 is simply because you were raised to think in powers of ten, so you're instinctively setting up your grid in powers of ten as well. Start thinking in powers of two instead, and you'll have a much easier time.
I keep my grid preferences in Photoshop set to put a gridline every 128 pixels, with 4 subdivisions in between. This makes it really easy to divide just about any power-of-two sized canvas into halves or quarters or eighths, very quickly.
If I want to divide into tenths, it's not going to work, obviously. But why would I want to do that, any more than I'd want to divide into thirds or sevenths or any other arbitrary number? Halving is a lot more useful than tenthing or thirding or seventhing.
The logic fails a little is in SL's somewhat sloppy implementation of repeats and offsets in the editor, which is unfortunate. There they've got us dividing by tens, which is just plain silly. I guess they wanted to make it easy for the layman to understand at first glance. But in doing so, they made the thing infinitely harder to actually use than it should have been.
The texture alignment pattern I published on this forum is divided in powers of ten, just to match what's going on in the editor. If I were able to do it any way I wanted, I would have put 16 numbered squares on it instead of 10. But that would have made the patten difficult to use in conjunction with the editor, so it wasn't a viable option.
When I made that pattern, I did start with a 1000x1000 pixel canvas. I then upsized it to 1024x1024 before upload. The division is not pixel-perfect, which you can tell if you inspect the image closely. But it's as close as it possibly can be.
By the way, the editor isn't the only place LL goofed, in my opinion. Check out the number of quads that make up any "round" object in SL. Cylinders, tubes, spheres, etc., all have 24 sides. This can make for somewhat awkward application of textures. How do you divide a power of two by 24? You can't.
Had they gone with 32 sides instead of 24, a lot of things would be easier today, including LOD calculations. But I suppose they wanted to keep the max poly count as low as they could. 32 was probably too high for their liking, and 16 wouldn't have made for very convincing rounds, so they met in the middle with 24.
And don't even get me started on whatever bonehead came up with the profile pic sizes.