why no vector graphics ?

Youkai

Demon
OP
Member
Joined
Jul 1, 2004
Messages
2,552
Trophies
1
Age
36
Location
Germany , NRW
XP
2,445
Country
Germany
Hey there, seeing some of the new Pokémon game vids and looking at other games it seems that most if not all game developers don't use vector graphics which I don't understand why.

I only heard about vector graphics like 6 years ago when I was doing CAD stuff and if I am not mistaken in theory those should never no matter how much you zoom in or out, produce rough edges so if they would use this for a game it should look awesome even for many years to come.

Is there any valid why this is not done everywhere already ?
 

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,824
Trophies
3
Location
Gaming Grotto
XP
29,821
Country
Poland
Lots of old games use vector graphics - think Battlezone. There’s even an entire system, the Vectrex, which is *only* capable of displaying vectors. The reason why it’s not done anymore is because the requirements for displaying complex vector graphics accurately, and in a manner comparable to what you can get with normal techniques, would be very high, and you may as well use polygons at that point. Those too can be equally detailed regardless of zoom level if you’re using shading as opposed to textures. Usually when you come across something like this and ask yourself why it’s not done more broadly, the answer is that it’s not as good. :)
 

MrCokeacola

The Xbox Guy
Member
Joined
Feb 26, 2018
Messages
939
Trophies
0
XP
2,057
Country
Canada
Pretty sure video games lost the technology to use vectors after the Vectrex. Kinda like how we lost the technology to go to the moon.
 

Kwyjor

Well-Known Member
Member
Joined
May 23, 2018
Messages
4,323
Trophies
1
XP
4,452
Country
Canada
if I am not mistaken in theory those should never no matter how much you zoom in or out, produce rough edges so if they would use this for a game it should look awesome even for many years to come.
The question is a little unclear. A polygon is ultimately just a bunch of vectors that can be zoomed in and out, is it not? The display is limited to pixels because that is literally how the display is constructed. This is how you can get things like Mario Kart DS in 4K HD, for instance.

There is the matter of textures on the polygon. I'm not entirely sure why you wouldn't define a texture using vectors, except that it's not a particularly intuitive way of making a texture.
 

_v3

Well-Known Member
Member
Joined
Oct 12, 2013
Messages
708
Trophies
1
Age
30
XP
2,732
Country
Croatia
The models technically are still vectors, AKA just a bunch of connected points, the problem comes when you start texturing these, you just can't add a ton of detail with vectors. Technically you can, but it would take a lot more work, and past a certain point more computational power rather than just using a regular rasterised image slapped over a model.
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
23,256
Trophies
4
Location
Space
XP
13,814
Country
Norway
Hey there, seeing some of the new Pokémon game vids and looking at other games it seems that most if not all game developers don't use vector graphics which I don't understand why.

I only heard about vector graphics like 6 years ago when I was doing CAD stuff and if I am not mistaken in theory those should never no matter how much you zoom in or out, produce rough edges so if they would use this for a game it should look awesome even for many years to come.

Is there any valid why this is not done everywhere already ?
Vector graphics for 3D textures are a bit tricky. They'd have to be pregenerated, the hardware doesn't know how to accept vector format textures AFAIK. And you can only go so high resolution, since there is limited VRAM.
You could bruteforce it by drawing a polygon for each little part of the texture, which would be similar to how vector graphics work in 2D, but it would be extremely slow. Hardware already has enough trouble rendering the crazy amount of polygons these days, adding more to that would not be a good idea. Also, you can't for example draw a perfect circle in 3D, because everything's made up of polygons, which there can only be a finite number of, and you'd need a lot of polygons to make a convincing circle. It's not as simple as with 2D, where the number of pixels on the screen is finite, and you just need to match the level of detail your screen can display. Because in 3D, that changes when you look at something up close, or far away. You can use LOD to vary the detail level on textures depending on how close you are to them, but you are still going to run into hard VRAM limits pretty quickly if you try to go crazy high with the texture resolution.
 
Last edited by The Real Jdbye,
  • Like
Reactions: Veho

Veho

The man who cried "Ni".
Former Staff
Joined
Apr 4, 2006
Messages
11,373
Trophies
3
Age
42
Location
Zagreb
XP
40,826
Country
Croatia
3D graphics are basically vector graphics, because polygons are defined the same way as lines and surfaces in a vector graphics drawing: you have key points, and a mathematical definition of the curve (spline) between them (although in 3D graphics the curve is only ever a straight line). Like people said, you can render those 3D models at insane resolutions if you want and you would never have jaggy edges and pixels and visible aliasing.

However, the graphics engine doesn't render everything for every frame. (This is simplified): when actually calculating a 3D scene, the 3D mesh is fixed at a certain size that translates to a certain number of pixels; each frame is then rendered off of that initial model. Zooming in doesn't recalculate the mesh size or position or the number of internal pixels the model is using, so when you get too close, you see the cracks. (simplified.)

With a vector graphics image, you can scroll easily, but every time you zoom in/out the entire image is recalculated to the new resolution, and this is slow and resource intensive. A full 3D model described that way would take forever to recalculate after each zoom, so the game engine - doesn't. It keeps the model at one size, and the moving, turning, scrolling etc. is relatively simple.

Another thing to consider are textures. Vector graphics use descriptive procedural colors and textures, meaning a texture or fill is described as "gradient/raster/grid, starting point being at coordinates X,Y and in this color, following a parabolic spline, ending at X2,Y2 in that color", and the engine then renders it at whatever size and resolution you want, and it's always smooth. Standard 3D models have textures of a fixed size, and when you zoom in too much you see the grit. You could have textures in a larger resolution, but games are already too large, or you could have textures described procedural,y, which doesn't look as good as a painted and crafted bitmap texture, and would still get rendered beforehand and then pasted onto the 3D mesh, because, again, rendering them for each frame in real time would be impossible.

If you want to see what it's like to use vector graphics and procedural textures in a game, there's the .kkrieger tech demo:

https://en.wikipedia.org/wiki/.kkrieger

All assets in the game are stored as functions used to generate them, instead of finished assets, but again, it's not generated in real time or frame by frame, the game spends a whole lot of time generating asset data that is then handled like a standard 3D model and textures in-game.
 
  • Like
Reactions: Youkai

Youkai

Demon
OP
Member
Joined
Jul 1, 2004
Messages
2,552
Trophies
1
Age
36
Location
Germany , NRW
XP
2,445
Country
Germany
Hmm okay I think I partially get it, so the problem is computing and also those grids ...

my point ist mostly that lots of (even not all) games have visible edges where there shouldn't be any, then again can't those 3d grids not be vectorized maybe adding a thin line around everything like its done with cellshading

(i remember that kkrieger demo, that was so cool for me when I was like 16? seeing this demo having such a nice graphic with its few kbs compared to some big AAA titles with X GB of textures and such)

But yeah similar as some of your posts on wiki they also say "raster is more effective and efficient" still vector would looks so much better ^^V

https://en.wikipedia.org/wiki/Vector_graphics

220px-VectorBitmapExample.svg.png
 

Veho

The man who cried "Ni".
Former Staff
Joined
Apr 4, 2006
Messages
11,373
Trophies
3
Age
42
Location
Zagreb
XP
40,826
Country
Croatia
my point ist mostly that lots of (even not all) games have visible edges where there shouldn't be any, then again can't those 3d grids not be vectorized maybe adding a thin line around everything like its done with cellshading
That's where anti-aliasing comes in, or at least should come in, if the games are done properly and the hardware can handle it.
 

masagrator

The patches guy
Developer
Joined
Oct 14, 2018
Messages
6,265
Trophies
3
XP
12,026
Country
Poland
my point ist mostly that lots of (even not all) games have visible edges where there shouldn't be any
This is because models are preprocessed to use less polygons (aka lowpoly) to the point where their complexity is lowest as possible and doesn't go below their estetic requirements. Antialising is where comes futureproofing for some period of time to not get those models outdated too fast.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    ButterScott101 @ ButterScott101: +1