PDA

View Full Version : Vector textures?


Swizzle
03-21-2006, 01:42 AM
I have a question that perhaps somebody around here can answer.

I've been wondering why I've never heard of using vector textures in games. I realize that there are currently no vector programs that offer the amount of control in an easy way over details that something like Photoshop or just about any raster program does, and that currently it's just plain harder to work with vectors right now in most cases, but I'm not quite sure why vector files can't be used for game textures.

Is it because vectors tend to have fairly large file sizes and the vector coordinates and stuff would be too much for a game engine to handle on a large scale? Couldn't you compress them in much the same way that you compress a raster image? Is antialiasing a problem, and would it have to be done in real time if vector graphics were used for textures? It seems to me that something like a normal map, which is usually mostly gradients, would be much more desirable as a vector image than as a raster image because you wouldn't have as many problems with seams and edges, along with the gradients and stuff being generally smoother. Is this true?

Is it just that it would it simply be to difficult to implement and get working smoothly from a programming standpoint?

Squirmy
03-21-2006, 02:00 AM
I think geting the vector texture to be detailed enough would take to long, all those dam points. Dont get me wrong I have seen some detail vector art, and I guess it could be done if you had a file format that was supported.

Interesting Idea I think Ill have to do some more research

Swizzle
03-21-2006, 02:15 AM
I think geting the vector texture to be detailed enough would take to long, all those dam points. Dont get me wrong I have seen some detail vector art, and I guess it could be done if you had a file format that was supported.

Interesting Idea I think Ill have to do some more researchWell, you'd obviously have to get a good vector editor or it'd be completely worthless. Something that would allow you to really paint with vectors instead of messing with control points or something.

adam-crockett
03-21-2006, 04:02 AM
I've wondered the same thing swizzle, as I think it would be sweet for cartoony and anime style games, plus the textures would retain the resolution no matter how close up you got. Also, consider animated textures, like a flash texture! Just an animated spline for a talking mouth, the applications are endless.

I've asked around various programmers that I've worked with, and near as I can tell, video cards are designed to push pixels, not vectors. Apparently its simply a hardware issue.

AdamAtomic
03-21-2006, 05:22 AM
I had a nice long response typed up earlier, but then CGTalk did its nightly backup thing :( soooo I lost it.

Anyways, the gist of it is this:

Pixels: Take up lots of memory, but very fast to display in real-time (just doing array look-ups)
Vectors: Take up very little memory, but relatively slow to display in real-time (have to calculate vector values at that exact point for every pixel on the screen, etc etc)

This is why everything (your operating system, 2d games, 3d games, etc) use bitmaps instead of vectors.

On top of that, the hi-res benefits of vectors would be lost on most systems that have memory constraints that make regular bitmaps unnacceptable, because their display resolution is not high enough to show off the power of vectors. Plus, there are lots of ways to use custom shaders, polygons, alpha mapping, and texture filtering to simulate a lot of vector effects.

And, of course, vectors are somewhat less intuitive to work with as an artist.

Now, that said, there are some systems like the PSP that I would think could really benefit from some procedural texture mapping (which is really what a vector texture would be), because of their low, low texture memory and relatively powerful CPU and GPU. PSP is ripe for all manner of procedural effects, but so far not too many titles have taken advantage of that!

three
03-21-2006, 08:12 AM
This is why everything (your operating system, 2d games, 3d games, etc) use bitmaps instead of vectors.

Isn't Windows Vista going to use vector based icons? Did they change that?
The reason I'm asking is because if they're going to use vector graphics perhaps this is an introduction into procedural texture mapping.
Sorry, can't remember where I read this, but aren't they using a 3D based desktop also?

MK2
03-21-2006, 12:20 PM
This does not make sense to me... if i take a pixel image and convert it to a vector image i loose details. If i want the same amount of details my vector image gets way too big. Because you need to describe all these details.(think about an old, dirty stonewall with moss and such)

Procedural Textures are far more interessting because they only describe a texture, but they are also very slow when rendering. -> Genetica || DarkTree (or the procedurales from your 3D App)

three
03-21-2006, 01:23 PM
In regards to what I wrote above.
I said that I thought Vista was using a 3D enhanced desktop. In reality I guess it's just distorted "screenshots" of open programs. Called Flip 3D.
Still it's said to be vector based graphics:

Flip through your active applications
Experienced Windows users already know that the Alt+Tab function displays currently running applications, making individual selection simple. The function, known as Flip under Windows Presentation Foundation, now uses vector graphics, so you'll be able to see a miniature view of the active display, including any streaming video content parading by.


ZDNet UK also states
Zoom, zoom, zoom
Under Vista's new Windows Presentation Foundation, vector graphics can be rendered at any size without loss of image quality. Thus, as you slide through the directory listings, from details to icons, the folders expand or diminish in real time. Also, look for zoom to be added to the new Internet Explorer 7 in an upcoming build.

Link: http://reviews.zdnet.co.uk/software/os/0,39024180,39218124,00.htm

Now, if this is true, then wouldn't micro$oft be pretty sure they won't bonk people's computers up with vector graphics? And if they're sure about this, won't it be a step towards this kind of texturing in games?
Maybe I'm just thinking out loud, maybe this had any sort of relevance to the thread itself, but atleast I'm sure of it being what I was talking about one post up.

.m

AdamAtomic
03-21-2006, 04:56 PM
Now, if this is true, then wouldn't micro$oft be pretty sure they won't bonk people's computers up with vector graphics?

I wouldn't hedge your bets on that one :P

Seriously though, I hadn't heard those claims of vector graphics before. But then again, Vista will be a 64-bit system that requires a pretty potent CPU + GPU just to run; it might be enough horsepower to do something like that. Even then, it sounds like it will mainly be used for OSX-style special effects, and not for the actual applications/UI.

Swizzle
03-21-2006, 08:28 PM
So vector textures could theoretically be done, but it'd just put more of a strain on the CPU and GPU. I thought it was probably something like that.

Adam, you said that a vector texture would be good for procedurals. Is this because it'd be easy to generate solid blocks of color and stuff that would be harder to do with pixels?

What about using a mix of vectors and bitmaps for texturing? Would it be useful in the future to use vectors for things like normal and parallax maps because of how smooth and precise they can be, or would it just be too much hassle to get it working properly?

Marsfyre
03-22-2006, 12:02 AM
I would imagine that the expense of rendering based on a vector normal or paralax map would be more expensive than just using polygons to model the detail...

cholbrow
03-22-2006, 05:07 AM
Both vista and OSX apperently use Vector icons. <Link> (http://www.winsupersite.com/reviews/longhorn_4051_03_presentation.asp) OSX draws on the graphics card rather then cpu for its ui, i have heard that vista will be runing dirX full time, probably for the same reason.

I think it will sort of depend on tech advances as to wheather vectors will ever find there way to games. (might happen, cpu's and video cards are growing pretty fast, but ram limits texture size as far as i know)

I sometimes do t-shirts using vectors, man its a pain. If vectors do become more popular tools will improve.

I have heard of a couple programs that run vector icons, i think maybe the savings depend on what the images is.

Anyway who knows, maybe in 10 years we will all be using Voxels rather then vectors or pixels. (would make for sweet gory games:thumbsup:)

AdamAtomic
03-22-2006, 05:11 AM
To clarify, most of the "vector" technology that is used in Vista and OSX would seem to be this:

Like their Windows counterparts, Mac OS X icons are technically bitmaps, but they're created at a resolution of 128 x 128 pixels, and resized dynamically with vector transformations.

All they're doing is sizing down from a large image, using probably bilinear filtering or something similar. This has nothing to do with vectors in the Illustrator/Flash sense of the word.

EDIT - Actually, I take that back, that article also claims that Vista will have a full vector system for their icons. Seems like a waste of time and effort to me, but I guess that's why I'm not in charge of Windows :P

arrangemonk
03-22-2006, 06:39 PM
i thougt about vector textures too...
you can use illustrator for these very well, but for good performence you need that old "loading bar" to render vector textures to pixelbased graphics so it uses not many diskspace, you can scale the texture to whatever scale you want (LOD and quality settings) but u have to work very long to get the same effects on your pic as you have already on pixel based software.

and the most of all: noone exept of old demo freaks wants this loading bar anymore
(i think rendering vector textures in realtime is the wrong way, you can use highopolymodels with vertexcolors instead)

CGTalk Moderation
03-22-2006, 06:39 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.