Skip to main content
gamedev.net
🔒 Locked

1024x1024 texture?

Started by _nomad_ 27 replies 4.6k views
Original Post
_nomad_
_nomad_
hi, with the graphic cards available today...is it already ok to use 1024x1024 sized texture? i know before it was recommended not to use huge sized textures...but now, an old gf2mx could handle this even...and that''s an old card... what do you guys think?
superpig
superpig
The problem, AFAIK, is video memory. An ARGB 1024x1024 texture is about 4 meg, and you''ve got to keep it all in video memory at the same time. So much of it will depend on what else you''ll be using at the same time.

It''d also be quite slow to send to the video card (just because you''d be sending so much of it), so you''d want to minimize the times that you move it in or out.
Richard "Superpig" Fine - saving pigs from untimely fates - Microsoft DirectX MVP 2006/2007/2008/2009
"Shaders are not meant to do everything. Of course you can try to use it for everything, but it's like playing football using cabbage." - MickeyMouse
mikiex
mikiex
You could even use 2048....
infact for performace it can be better
to use a large texture page
MaulingMonkey
MaulingMonkey
quote:
Original post by mikiex
You could even use 2048....

On some cards. On others (like mine) you can''t. So don''t assume it''s available unless you''re working with, and are willing to limit the people who play it, to high end cards.
quote:
infact for performace it can be better
to use a large texture page

I''m interested if you have a link to a study or essay about this?
Tachikoma
Tachikoma
Depending on the API, you can actually query the maxium texture size. If the max texture size is smaller than your texture resolution, you can resize it on the fly.
Etnu
Etnu
most nvidia & ati cards support 4096x4096.

Those are the same dimensions given on Unreal 3''s tech page for estimated texture sizes on ''average'' hardware c. 2006. (and, indeed, these will be the texture sizes used for their character''s normal maps / skins, apparently)

Keep in mind that a 1024x1024 bitmap takes up at least 1024x1024x4 bytes of memory, though (possibly more, that''s just for raw data sizes and assuming each pixel is 4 bytes wide).

My video card only has 128MB of RAM. That''s probably average (though plenty of people are still running 64). Even if you use 1/2 of the memory just for texture, that''s only 16 textures to keep loaded into svideo memory.

When 512MB video cards start to appear, and 256 becomes the norm, I think you''ll be fine...but right now it just doesn''t seem like you can do that consitently (unless you''re ok with paging to system memory).

Kind of off topic here, but...

Has anyone else noticed that most new computers ship with 512MB of system memory and 128MB of video memory? That''s a 1:2 ratio. When I purchased my first computer (with my own money, not the ones that I had that were gifts / owned by my parents), I had a Voodoo 3 that ran with 16 MB of ram and the computer came with 64MB of ram (this was considered to be absolutely top of the line). That''s a 1:4 ratio.

If that trend continues, I think the ratio of video -> system memory will keep shifting in favor of video memory...which might make things really interesting for developers.
---------------------------Hello, and Welcome to some arbitrary temporal location in the space-time continuum.
superdeveloper
superdeveloper
Consider using texture compression... A 1024x1024 will soon seem pretty small, I assure you.

Take a look at the Texture tool that comes with DX9. I think it has a compression feature, so your DDS objects will be much smaller.
Randy187
Randy187
Store you''re texture''s at (for example) 2048x2048 and if a user has not enough vram resize it to 1024x1024 or even smaller.

Etnu: 512 MB systen RAM : 128 MB video RAM = 1:4 ratio
PaulCesar
PaulCesar
Lol, thats what i thought AP
nagromo
nagromo
It''s called integrated graphics, and many people don''t really like it.
_the_phantom_
_the_phantom_
the problem is however, compare the speed of motherboard ram and gpu ram, my computer as a 333mhz fsb, the new gfx cards have a bus speed of about 1.1ghz, CPUs wont like the higher speeds and GPUs cant work at the lower speed without saying ''byebye'' fillrate :o
Etnu
Etnu
Yes it is a 1:4 ratio, and I''m retarded.

Go about your business.
---------------------------Hello, and Welcome to some arbitrary temporal location in the space-time continuum.
Fidelio66
Fidelio66
quote:
Original post by _nomad_
hi,

with the graphic cards available today...is it already ok to use 1024x1024 sized texture? i know before it was recommended not to use huge sized textures...but now, an old gf2mx could handle this even...and that''s an old card...

what do you guys think?


The Voodoo cards had a 256x256 limit, but the TNT 1 card from 1998 I believe upped that to 2048x2048, since then all ATI/nVidia cards have had at least that size. But a few crap cards/chipsets since then (the kyro cards and intel integrated chipsets) sometimes have 1024x1024 as upper limit.
It all depends on what kind of game you are making, a kickass shooter that needs a high-end card, or a board game that everyone should be able to play on cheap pc''s.
SoDdit
SoDdit
Most gfx cards support hardware compressed textures using the DDS format. this''ll allow you to compress the textures down to a nice level.
i is 1337
janos
janos
DXT1 (single bit alpha) is 4 bits per pixel, that''s 512KB for a 1024x1024 image
plus it reduces texmem bandwidth. A definite win.
Act of War - EugenSystems/Atari
Ingenu
Ingenu
They support S3TC (S3 Texture Compression), which has been licenced to MS and called DXTC.
DDS is a file format that does handle textures for DirectX, it''s upside down if you use OpenGL...

-* So many things to do, so little time to spend. *-
-* So many things to do, so little time to spend. *-
Arcibald Wearlot
Arcibald Wearlot
hmm.. wait.. aren''t the textures decompressed anyway when stored in system/video memory? you are saying that the hardware works directly with compressed textures?
Namethatnobodyelsetook
Namethatnobodyelsetook
quote:
Original post by Arcibald Wearlot
hmm.. wait.. aren''t the textures decompressed anyway when stored in system/video memory? you are saying that the hardware works directly with compressed textures?

On old cards that can''t support DXT, D3DXCreateTexture functions automatically uncompress the images. (Also, if you don''t save with mipmaps, D3DX uncompresses, creates mips, and compresses all the levels, which is slow).

On any modern card the textures will remain compressed in video ram. If you can live with the loss of detail, DXT is great, as it save both video memory, GPU bandwidth, two very precious resources. There are times when it makes things look ugly though. You need to be aware of what each DXT format does to your pixels.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.