Well, Hello Dolly! It's so nice to have you back where you b

Post your own tutorials, guides and demos.

Post » Wed Mar 03, 2010 11:04 am

Inaccurate information. Thread to be deleted.
B
3
S
2
G
3
Posts: 628
Reputation: 2,531

Post » Wed Mar 03, 2010 11:17 am

Not sure I agree with the basic premise of this article.

[quote="Lost my Keys":2a6xb22f]your game will run much slower and behave far more erratically.[/quote:2a6xb22f]
[citation needed] - what do you mean by "erratically"? Isn't the issue you followed up with purely to do with Tiled Background?

Power-of-two images are pretty much a necessity for tiled backgrounds, because that's the only way you can get perfect seam-free display, and it's faster too. Outside of Tiled Background, the only issue with using a non-power-of-two texture is it uses slightly more VRAM (ie. rounds up to a power of two size as you say). For sprites and other objects, Construct never stretches the textures, just places transparent gutters around the edges, so there's no difference in visual quality whatsoever, the performance will probably be identical if the same number of pixels are drawn, and there should be nothing "erratic" about it. The conclusion should be "be aware you might be using more VRAM for non-power-of-two textures - and remember Tiled Background is a special case", but your conclusion of "always use power of two textures" is over the top. Also, I think GPUs from the past five years or so can all safely handle 1024x1024 textures, since 512x512 is still pretty limiting. Remember Construct often creates window-sized textures for effects and such, so even for a 640x480 game, a window sized texture is rounded up to 1024x1024.

Edit: don't mean to totally trash your article though :P it's a fairly important engine point that's worth knowing.
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,498

Post » Wed Mar 03, 2010 12:36 pm

[quote="Ashley":lse1fg65]Not sure I agree with the basic premise of this article.

[quote="Lost my Keys":lse1fg65]your game will run much slower and behave far more erratically.[/quote:lse1fg65]
[citation needed] - what do you mean by "erratically"? Isn't the issue you followed up with purely to do with Tiled Background?

Power-of-two images are pretty much a necessity for tiled backgrounds, because that's the only way you can get perfect seam-free display, and it's faster too. Outside of Tiled Background, the only issue with using a non-power-of-two texture is it uses slightly more VRAM (ie. rounds up to a power of two size as you say). For sprites and other objects, Construct never stretches the textures, just places transparent gutters around the edges, so there's no difference in visual quality whatsoever, the performance will probably be identical if the same number of pixels are drawn, and there should be nothing "erratic" about it. The conclusion should be "be aware you might be using more VRAM for non-power-of-two textures - and remember Tiled Background is a special case", but your conclusion of "always use power of two textures" is over the top. Also, I think GPUs from the past five years or so can all safely handle 1024x1024 textures, since 512x512 is still pretty limiting. Remember Construct often creates window-sized textures for effects and such, so even for a 640x480 game, a window sized texture is rounded up to 1024x1024.

Edit: don't mean to totally trash your article though :P it's a fairly important engine point that's worth knowing.[/quote:lse1fg65]

:P

Construct stretches textures over 1024 but below 2048 when you load them in (unless you fixed that, but it was the case a couple of versions back when I last noticed it).

It's simply bad practice not to use pow2. Pow2 images are very clean and easy to organize. Your own animation frame splitter requires each frame to be the same size. It's easier explaining that with pow2 than going into details with it. (Yes, I know, they just have to be the same size, and don't have to be pow2, but that's besides the point).

The erratic comment is directed at using none pow2 in general. Might be ok with construct but it sure isn't with other apps out there, and once people get into a bad habit, it's pretty difficult to break.

It's far less of a headache to think in power of two for everything.

Also don't forget, you're a programmer, I'm an artist. We know these things. But Joe off the street who comes along cause construct looks like an easy way to make games is going to get confused really quickly as to why pow2 is required in some cases but not always, and why his many resolution animation sequence isn't behaving correctly. Or why he can't have dozens of 1024x1024 animations wizzing around the screen, or why the game he made for his gran doesn't even work on her computer. It'll be less hassle for Joe if he learns the basics, sticks to pow2 UNTIL he's learned enough to know when and how certain rules can be broken, which he'll learn at his own pace in his own time. But until then he'll be doing things right and have fewer problems to start with.

A perfect example of not bringing these things up, are the many users who create all horrors of art related assets, that would have been avoided entirely if they'd -thought- they had to stick with pow2. For example "Why should I use tiling?" Try explaining until they understand why tiling is better, when they can use any old image instead and don't see the point to it because "well it works for me". Or the guy on that site, who claimed his event laden parallax scrolling effect worked better and faster than layers and that construct was laggy and slow. You gotta remember, construct, by its very nature of simplicity is not aimed at professionals. So even the most basic things will be confusing and difficult to grasp. So if a new user comes along and thinks they have to do everything in pow2. At least he'll be doing it right.

I just think it's a good idea that new users with no previous knowledge (and there's been a few, and there will be more to come, I'd put money on that), learn these old basics early on, and how to optimize their games by doing so, rather than realizing too early that there are no real limitations and simply slapping any old stuff together without any thought, then complaining on other forums how "construct is broken and crap" just because it didn't work out for them for whatever reason.

You could compare it to a game of Sim City. Two players, one who cheats from the start and can use any buildings he likes, with no cost. The other, who plays through normally from the beginning, and slowly builds up knowledge of how things work together. Bet the latter has a more successful city after a week than the guy placing lots of huge fancy buildings all over his city from the start.

And yes I'm aware comparing construct to Sim City is probably the weirdest comparison ever, lol.


But anyway, no real point keeping this up then. You might as well delete this one, and the VRAM one.
B
3
S
2
G
3
Posts: 628
Reputation: 2,531

Post » Wed Mar 03, 2010 1:21 pm

Aw, I didn't mean to make you delete it. Sorry if I came off harsh. You're right I'm seeing this mainly from a technical standpoint (I'm keen to make sure all the technical stuff is accurate), but I'm still not convinced it's wise to tell everyone to always use power-of-two textures. If you do, wouldn't people come back with questions like:
1) Why can I resize an image to a non power of two size then?
2) None of my art is power of two size. Can I not use it in Construct then? (or, do I have to laboriously resize every single image?)
Yes, for tiled background the advice is pretty much sound: always use a power-of-two texture if you can. For everything else though, a better lesson is just to know VRAM is separate to memory and usually much more limited - so large textures and long animations don't come for free.
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,498

Post » Wed Mar 03, 2010 1:23 pm

Don't delete posts! Even partial information is better than no information at all. More people will follow in your wake; if you destroy bridges behind you, they will be forced to overcome the obstacles themselves.
B
62
S
21
G
12
Posts: 1,910
Reputation: 13,155

Post » Wed Mar 03, 2010 2:44 pm

[quote="Mipey":178uusfb]Don't delete posts! Even partial information is better than no information at all. More people will follow in your wake; if you destroy bridges behind you, they will be forced to overcome the obstacles themselves.[/quote:178uusfb]
Nice analogy.
I must remember that one. :D

Krush
B
2
S
2
G
3
Posts: 406
Reputation: 2,062

Post » Wed Mar 03, 2010 7:06 pm

Lost my Keys, this thread isn't going anywhere.

You are now charged with the task of rewriting your post and putting it back where it was with the changes that were suggested. This will be the best and most informative thread on tiles, textures and VRAM if I have to drag your ass through Hell to make it so. Now ON YOUR FEET and START WRITING, soldier!

Well, uh... actually you can write sitting down if you want...
Moderator
B
5
S
2
G
6
Posts: 4,348
Reputation: 10,971


Return to Your tutorials & example files

Who is online

Users browsing this forum: No registered users and 0 guests