Unreal Engine 3

Discuss anything ZDoom-related that doesn't fall into one of the other categories.
User avatar
Risen
Posts: 5263
Joined: Thu Jan 08, 2004 1:02 pm
Location: N44°30' W073°05'

Post by Risen »

I wonder what 64-bit color supposed to mean. Most people can't tell the difference between single units in a standard 24-bit system. I can see adding some more properties for alpha or reflectivity perhaps. I wonder how they've split it up.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49230
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Risen wrote:I wonder what 64-bit color supposed to mean. Most people can't tell the difference between single units in a standard 24-bit system. I can see adding some more properties for alpha or reflectivity perhaps. I wonder how they've split it up.


You can see if the errors of multiple drawing passes add up. It's just for precision, even if it can't really be seen.
User avatar
Lexus Alyus
Posts: 4220
Joined: Tue Jul 15, 2003 5:07 pm
Location: Nottingham, UK
Contact:

Post by Lexus Alyus »

I thought HL2 was official and up for a release soon? What's this talk about HL2?

:twisted:
User avatar
Giest118
Posts: 2914
Joined: Fri Dec 05, 2003 11:02 pm

Post by Giest118 »

HL2 was due *earlier* this year, but some jackass stole the source code. So now it's up for September.
User avatar
HotWax
Posts: 10002
Joined: Fri Jul 18, 2003 6:18 pm
Location: Idaho Falls, ID

Post by HotWax »

Uhhh, last I heard the September release date was premature and they retracted it.

Hence, vaporware. :D
GameArena
Posts: 182
Joined: Wed Jul 16, 2003 4:35 pm
Location: Outside of a bubble... Looking at all the humans inside.

Post by GameArena »

giest118 wrote:HL2 was due *earlier* this year, but some jackass stole the source code. So now it's up for September.
That was just a sloppy excuse, the stolen code was only a minimal amount and posed no real threat to the development of HL2 and wasn't nearly enough to create any cheating software or "hacks". I'd rather a developer just tell me progress is slow, then my release date expectations wouldn't be nearly as high.
User avatar
Risen
Posts: 5263
Joined: Thu Jan 08, 2004 1:02 pm
Location: N44°30' W073°05'

Post by Risen »

Graf Zahl wrote:You can see if the errors of multiple drawing passes add up. It's just for precision, even if it can't really be seen.
Interesting. I wouldn't think it would be worth double the memory. Only the highest quality printed images use a 64-bit color space (16bpc * 4, CMYK). The design shop I work at almost never uses more than 32bpp. Of course, a monitor is an RGB device, so you're still looking at 3 channels. You'd have another 16 bits to store other information. I wonder is it alpha, or just empty data to make the calculations go faster?
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49230
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Risen wrote:
Graf Zahl wrote:You can see if the errors of multiple drawing passes add up. It's just for precision, even if it can't really be seen.
Interesting. I wouldn't think it would be worth double the memory.

You should ask John Carmack the same question. I once read an interesting interview with him where he explained the error build up very well. For games that have one or two rendering pass for a polygon it certainly doesn't matter but think about the following scenario:

You have to draw 10 passes for a polygon that contains 256 different grayscale values. Now you are drawing some effects on it (let's just say with 50% translucency for simplicity.

First pass: The 256 shades are reduced to 128
Second pass: reduced to 64
Third pass: reduced to 32
and so on.

And even though the result is very subtle you can see banding appear in the affected area. What's worse, if you now want to brighten it up again all the lost color information cannot be regained because it has been lost.

Your reasoning is flawed anyway. Remember a few years ago when some people thought that true color rendering is a waste of space and 16 bit are enough? It was one of the mistakes that put 3dfx out of business.

Memory is getting cheaper so the impact doesn't really matter. Today's graphics cards have 256 MB of memory. Only a few years back 16 MB was considered excessive.

As for the remaining 16 bits: They can be used as an alpha channel (as is done with the remaining 8 bits in 32 bit mode). a stencil or something completely new which doesn't exist yet.
User avatar
Chilvence
Posts: 1647
Joined: Mon Aug 11, 2003 6:36 pm
Contact:

Post by Chilvence »

Can it not just use 64 bit colour only in the framebuffer, and save memory on all the other textures? 2048x2048x64 is .... alot. Memory may get cheaper, but loading times also get longer for those of us that stick with a hard drive until the platters spin loose and slice their way across the room...
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49230
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Chilvence wrote:Can it not just use 64 bit colour only in the framebuffer, and save memory on all the other textures? 2048x2048x64 is .... alot. Memory may get cheaper, but loading times also get longer for those of us that stick with a hard drive until the platters spin loose and slice their way across the room...
Of course. Why do you think compressed texture formats exist?
User avatar
Risen
Posts: 5263
Joined: Thu Jan 08, 2004 1:02 pm
Location: N44°30' W073°05'

Post by Risen »

Graf Zahl wrote:Your reasoning is flawed anyway. Remember a few years ago when some people thought that true color rendering is a waste of space and 16 bit are enough? It was one of the mistakes that put 3dfx out of business.
So with your example, I suppose that this means doing the final calculation is easier if you do:
(((color value * .5) *.5) *.5) * 4
than if you do:
color value * (.5 * .5 * .5 * 4)

Therefore making
(((65536 * .5) *.5) *.5) * 4
more efficient than:
256 * (.5 * .5 * .5 * 4)

Even though the resulting colors may be visually impossible to differentiate, I can accept the flexiblity of the calculation technique as a reason to go to 64-bit color. I was just wondering, since we are now reaching the limits of discernable color variation.

Going from 16-bit to 32-bit color does add a significant range of viewable intermediates, but going from 32-bit to 64-bit does not. The human eye simply cannot differentiate between that many shades. We recently passed around web color samples in the office where there was a difference of +/-1 green unit. I consider myself to have good eyesight, and I had a very difficult time discerning the two. None of my co-workers were able to do it at all. In other words, I am not speaking to a human-imposed limitation here, as in your 3Dfx example.

I also have no problems with moving to 64-bit, I was just wondering why and how they plan to use the extra memory and how it affects the performance.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49230
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Risen wrote:
Graf Zahl wrote:Your reasoning is flawed anyway. Remember a few years ago when some people thought that true color rendering is a waste of space and 16 bit are enough? It was one of the mistakes that put 3dfx out of business.
So with your example, I suppose that this means doing the final calculation is easier if you do:
(((color value * .5) *.5) *.5) * 4
than if you do:
color value * (.5 * .5 * .5 * 4)

Therefore making
(((65536 * .5) *.5) *.5) * 4
more efficient than:
256 * (.5 * .5 * .5 * 4)
You have to use the first formula for multiple pass rendering if you want to alter the image drawn in the previous passes and it is completely unavoidable that some precision is lost. With 16 bit color values the precision is lost in a range that is no longer distinguishable by the human eye as opposed to 8 bit values.

If I knew where to find the Carmack article I'd point you to it. It was quite interesting what he had to say about the matter and it made a lot of sense.

64 bit won't be the end though I'm quite certain the final step will be true floating point with 0.0 being black and 1.0 being full brightness.

BTW, on a properly calibrated display you can clearly discern 256 shades of gray - especially during color fades and other similar effects! 8 bit color resolution is clearly not enough for a realistic display. It's not about discerning something like 0x00ff00 (green) from (0x00fe00) minimally darker green - that is pointless. This is required for rendering effects that constantly alter the color of a surface. For that 256 distinct values is rather limited and for many color shades with odd mixture ratios this can appear quite ugly because during some effects the color always changes slightly because the exact representation cannot be reproduced with 24 bits. Just imagine fading out an image that contains a color gradient from white to red. Even you will see the precision artifacts then!
User avatar
Nanami
Posts: 1066
Joined: Tue Jul 15, 2003 5:13 pm
Location: That little island pritch created.
Contact:

Post by Nanami »

cutmanmike wrote:http://www.unrealtechnology.com/screens/p_bezerker.jpg

Th-th-th-THAT'S computer generated? Creepy stuff! :shock:
Are you kidding? Have you seen some of the detail in Doom yet??

Image <=-Just LOOK at that!
User avatar
Risen
Posts: 5263
Joined: Thu Jan 08, 2004 1:02 pm
Location: N44°30' W073°05'

Post by Risen »

Are the new cards and monitors capable of 48-bit color rendering? Even while working 48 or 64-bit in Photoshop, you still get a 24-bit output to the screen because you're limited by the video card and the monitor. The only way to utilize the extra information was for precision calculations, and the only way it could be output was on a press or other imagesetter. If there's no way to present the enhanced color to the user on screen, you won't see most of the benefit.

There are some very nice photographic printers that expose normal photographic paper using colored lasers. They make very nice prints, to say the least. I'm sure you could tell if you sent that a 24 or 48-bit file. My monitor, well, I'm not so sure.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49230
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Post by Graf Zahl »

Risen wrote:Are the new cards and monitors capable of 48-bit color rendering?

My guess is that a video card that supports a 48/64 bit mode can output a signal with full precision. This can be a problem with digital displays but on an analog monitor it should be visible. But it all depends how good it is.
Post Reply

Return to “General”