Welcome, Unregistered.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Reply
Old 09-Aug-2008, 06:49   #1
Simon82
Member
 
Join Date: Jul 2006
Location: Italy - Genoa
Posts: 236
Default GL Quake and S3 Virge technology

Some time ago I've tried a gl driver coded by S3 people that would let gamers to run an incredible and complex 3D game like Quake was, on a incredible and slow decelerator chip like the S3 Virge. It's really incredible to see a game using it's internal acceleration with bilinear filtering on a board that in the other 99% of the cases you enable any kind of acceleration it would get artifacts, texture errors, hang... ecc.

Frame rate was from 5 to 10fps but technically I was impressed. No way to compare to other accelerator but surely it would be interesting to know why only so many games was supporting a chip that on the paper had lot of interesting features for that age.
Bye
Simon82 is offline   Reply With Quote
Old 09-Aug-2008, 06:54   #2
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

i dont remember the virge having other features that the better 3d cards didnt have
Davros is offline   Reply With Quote
Old 10-Aug-2008, 06:54   #3
Blazkowicz
Senior Member
 
Join Date: Dec 2004
Location: Toulouse
Posts: 4,141
Default

I didn't know that was possible!
but my S3 virge 2MB came with a CD containing demos of descent 2 and terminal velocity. playable, good quality 640x480 bilinear filtered! under DOS I think. that looked excellent at the time.

I would have loved getting full versions. and later with a virge DX 4MB (the older one had vid ram issues), the demos didn't work . stupid isn't it?
of course I never had anything other worth running on Virge. Some directX games would run, but with the slow fps and lack of alpha blending giving ugly plain blocks around vegetation and stuff it was better to play in software mode at 320x200.
Blazkowicz is offline   Reply With Quote
Old 10-Aug-2008, 08:12   #4
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

i think the mystique had the same problem
suprisingly though the mystique version of tombraider looked damm good
Davros is offline   Reply With Quote
Old 10-Aug-2008, 20:40   #5
swaaye
Entirely Suboptimal
 
Join Date: Mar 2003
Location: WI, USA
Posts: 6,845
Default

Mystique didn't do transparency, mip mapping or bilinear texture filtering. It used that ugly stipple alpha for transparency. When you used its 3D acceleration, you mainly just got a speed boost. It was actually sorta nice to use it alongside a Voodoo. Voodoo was so blurry that the pixelation of Mystique was kinda nice at times! It could do higher resolutions than Voodoo too; not locked to 640x480.

The cheap 2D/3D card to have was definitely a Verite V2xxx board. Before RIVA 128 came out and got good drivers anyway.
swaaye is online now   Reply With Quote
Old 11-Aug-2008, 06:48   #6
Simon82
Member
 
Join Date: Jul 2006
Location: Italy - Genoa
Posts: 236
Default

Quote:
Originally Posted by swaaye View Post
Mystique didn't do transparency, mip mapping or bilinear texture filtering. It used that ugly stipple alpha for transparency. When you used its 3D acceleration, you mainly just got a speed boost. It was actually sorta nice to use it alongside a Voodoo. Voodoo was so blurry that the pixelation of Mystique was kinda nice at times! It could do higher resolutions than Voodoo too; not locked to 640x480.

The cheap 2D/3D card to have was definitely a Verite V2xxx board. Before RIVA 128 came out and got good drivers anyway.
I remember the Riva128 having some sort of image quality issue on all games, even Quake was fast but underlighted. It surely was a great chip but probably had some sort of tricky way to get more speed.
Simon82 is offline   Reply With Quote
Old 11-Aug-2008, 15:06   #7
Putas
Member
 
Join Date: Nov 2004
Posts: 153
Default

I would like to know more details of the Virge. All I got so far is:
Virge 3D was relatively cheap but feature packed. But use of each of the important features (bilinear filtering, Z-buffering, perspective correction, even texturing) added a cycle needed to process it. Later DX and GX got free perspective correction and faster filtering.
Putas is offline   Reply With Quote
Old 11-Aug-2008, 17:17   #8
Simon F
Tea maker
 
Join Date: Feb 2002
Location: In the Island of Sodor, where the steam trains lie
Posts: 4,380
Default

Quote:
Originally Posted by Putas View Post
I would like to know more details of the Virge. All I got so far is:
Virge 3D was relatively cheap but feature packed. But use of each of the important features (bilinear filtering, Z-buffering, perspective correction, even texturing) added a cycle needed to process it. Later DX and GX got free perspective correction and faster filtering.
At the time of developing PCX1 & 2, I skimmed through the Virge programming guide and it seemed to me that everything had to be poked in through a register interface. I remember thinking that it wasn't going to fly.
__________________
"Your work is both good and original. Unfortunately the part that is good is not original and the part that is original is not good." -(attributed to) Samuel Johnson

"I invented the term Object-Oriented, and I can tell you I did not have C++ in mind." Alan Kay
Simon F is offline   Reply With Quote
Old 11-Aug-2008, 18:59   #9
the maddman
Member
 
Join Date: Jun 2003
Location: Central California
Posts: 254
Default

I remember S3's OpenGL wrapper for GLQuake! That's what I used to get Quake to run on my Warp5. It managed better than the Virge cards did, around 20 fps, but the lighting was all wrong.
the maddman is offline   Reply With Quote
Old 11-Aug-2008, 20:31   #10
swaaye
Entirely Suboptimal
 
Join Date: Mar 2003
Location: WI, USA
Posts: 6,845
Default

Quote:
Originally Posted by Simon82 View Post
I remember the Riva128 having some sort of image quality issue on all games, even Quake was fast but underlighted. It surely was a great chip but probably had some sort of tricky way to get more speed.
Well, by far the biggest issue with RIVA 128 was that it launched without support for per-pixel mip mapping. It used the per-poly variety instead. This meant that you could see textures change detail on each polygon as you moved in a game. It also had problems with its forced mip map generation. And, people complained about how grainy its filtering was.

You had a few choices back then on filtering quality.

-Voodoo was very aggressive and blurriest. Obviously it was the gold standard though and fast as hell at the time.
-Mystique didn't filter at all and didn't mip map so you had swimmy aliasing in the background. Think of it as a hardware accelerated software renderer.
-Virge apparently could do almost everything rather well but really slow. According to the spec sheet, at least. Drivers usually didn't work in D3D, OpenGL didn't exist.
-Verite V2k had good filtering quality for the time. It did per-poly mip mapping though.
-RIVA 128 had somewhat "noisy" filtering.

I've never actually used anything from PowerVR though so can't speak on that.

I set up a machine with a Riva 128 a while back, to take a screenshot for Wikipedia. Quake 2 with latest drivers. This is the highest res it can run the game at and it was decently quick at it. You can see the grainy filtering in the steps. Not all that annoying IMO.

Last edited by swaaye; 11-Aug-2008 at 20:45.
swaaye is online now   Reply With Quote
Old 11-Aug-2008, 22:30   #11
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

i could run quake2 at 1024x768 an a riva 128zx it sort of looked grainy though for lack of a better word

ps: the powervr had really nice iq ultimate race pro looked great (a lot of games had specs like : requires a voodoo1 card and a pentium 133mhz, or a powervr card and a pentium 166mhz cos the powervr relied on the cpu more)
the permedia 2 looked nice too, one of the few cards to have a full opengl icd
Davros is offline   Reply With Quote
Old 12-Aug-2008, 09:12   #12
Simon82
Member
 
Join Date: Jul 2006
Location: Italy - Genoa
Posts: 236
Default

Quote:
Originally Posted by swaaye View Post
Well, by far the biggest issue with RIVA 128 was that it launched without support for per-pixel mip mapping. It used the per-poly variety instead. This meant that you could see textures change detail on each polygon as you moved in a game. It also had problems with its forced mip map generation. And, people complained about how grainy its filtering was.

You had a few choices back then on filtering quality.

-Voodoo was very aggressive and blurriest. Obviously it was the gold standard though and fast as hell at the time.
-Mystique didn't filter at all and didn't mip map so you had swimmy aliasing in the background. Think of it as a hardware accelerated software renderer.
-Virge apparently could do almost everything rather well but really slow. According to the spec sheet, at least. Drivers usually didn't work in D3D, OpenGL didn't exist.
-Verite V2k had good filtering quality for the time. It did per-poly mip mapping though.
-RIVA 128 had somewhat "noisy" filtering.

I've never actually used anything from PowerVR though so can't speak on that.

I set up a machine with a Riva 128 a while back, to take a screenshot for Wikipedia. Quake 2 with latest drivers. This is the highest res it can run the game at and it was decently quick at it. You can see the grainy filtering in the steps. Not all that annoying IMO.
Thank you for the analysis. I can confirm all the things you told because I've tried some times ago every card you mentioned on a retrogamer pc. Surely the PCX1/2 and the Riva128 was two alternative chip that was capable to be aggressive compared the the Voodoo that was any way too much powerful and visually capable of wonderful effect even if the resolution and the blurring problem was there. But in that time 3dfx could thank the low inch of the monitors and the 96's expectations.
Simon82 is offline   Reply With Quote
Old 18-Aug-2008, 23:47   #13
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

GLQuake for Virge? I don't really remember playing with it on that. Are you sure you're not remembering the Metal mini-GL?

GLQuake wasn't really complex. It only used a couple of dozen OpenGL entry points - which is why so many people got by with using thin mini-GLs for ages.

The Virge's major omission was blending - it only had alpha blend - so it wasn't too hot with lightmaps. There were some tricks you could do, but you'd have been stuck with black-and-white maps. Other than that - as said, Virge had very good quality, but it was a bit of a dog on the performance side. Bilinear filtering and Z buffering were particularly expensive. Tomb Raider ran pretty well on it - would have been even better if we'd hooked into Core's Z-sort renderer rather than adapting the irretrievably Z-buffered port they'd already done, but that would have been a lot more work...

Actually come to think of it I do vaguely remember doing some playing about with something that did mono lightmaps on Quake...
Dio is offline   Reply With Quote
Old 21-Aug-2008, 00:55   #14
swaaye
Entirely Suboptimal
 
Join Date: Mar 2003
Location: WI, USA
Posts: 6,845
Default

Quote:
Originally Posted by Dio View Post
GLQuake for Virge? I don't really remember playing with it on that. Are you sure you're not remembering the Metal mini-GL?
Yeah it's out there:
http://files.filefront.com/s3quakezi.../fileinfo.html
Quote:
GLQuake Drivers for S3 ViRGE DX/GX/GX2 4M video cards
Version 2.1

This driver is Copyright 1997/98 S3 Incorporated.

This driver uses DirectX 5.0. You must have DirectX 5.0 installed
and working correctly on your system before this driver will function.

Under no circumstances should you replace any other OPENGL32.DLL
on your system with this DLL. This is NOT a full OPENGL implementation,
it is designed to work solely with GLQuake. It should be installed
ONLY in the same directory as GLQuake.

For other information and problem-solving, please check all the README
files that came with GLQuake.

RELEASE NOTES:

This driver should work with all versions of GLQuake. It has been
tested with 0.93, 0.95 and 0.97. It does not yet support dynamic
lighting without gl_flashblend. It also performs better and is more
visually attractive with each updated version.

To improve performance you can add to your autoexec.cfg file:
gl_fullbright "1" - eliminates lighting
gl_picmip "1" - blurs textures

PERFORMANCE TIPS:

This driver is designed for use on the ViRGE DX/GX/GX2 chipsets with
4M of VRAM. Cards based on the ViRGE and ViRGE/VX chipsets will probably
not perform acceptably, as will most 2M cards. If using a 2M card, you
should not use any resolution higher than 320x240 and 400x300.

To make GLQuake select lower resolutions use:
'GLQuake -width -height '
e.g. for 400x300
GLQuake -width 400 -height 300

You should also ensure you have the latest Windows 95 display drivers
from S3's website or your card manufacturer's website, and keep checking
the site regularly for future updated drivers.

Enabling CommandDMA in the Direct3D driver is important to provide a
performance improvement.

Upgrade to GLQuake 0.97 (or any higher version if made available) if
using 0.93 or 0.95.


This driver is unsupported, but may be updated in future.
I've played Tomb Raider and Terminal Velocity ViRGE ports. It ran those really quite well. Not blazing fast, but definitely playable. It has filtering quality superior to Voodoo1/2 IMO. Much less blurry.
swaaye is online now   Reply With Quote
Old 21-Aug-2008, 14:56   #15
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

Good grief. That sounds enormously familiar. I think I might have written that readme.

<edit> Indeed - doesn't look like any code survives, but I found it in the timesheets. November 1997 - January 1998, plenty of time down to 'GLQuake'. So it was me after all!

Last edited by Dio; 21-Aug-2008 at 15:08.
Dio is offline   Reply With Quote
Old 21-Aug-2008, 18:24   #16
OpenGL guy
Senior Member
 
Join Date: Feb 2002
Posts: 2,291
Send a message via ICQ to OpenGL guy
Default

Quote:
Originally Posted by Dio View Post
Good grief. That sounds enormously familiar. I think I might have written that readme.

<edit> Indeed - doesn't look like any code survives, but I found it in the timesheets. November 1997 - January 1998, plenty of time down to 'GLQuake'. So it was me after all!
A sign of old age creeping in, Dio?
__________________
I speak only for myself.
OpenGL guy is offline   Reply With Quote
Old 21-Aug-2008, 18:59   #17
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

Where's me flat cap and zimmer frame?
Dio is offline   Reply With Quote
Old 21-Aug-2008, 20:44   #18
swaaye
Entirely Suboptimal
 
Join Date: Mar 2003
Location: WI, USA
Posts: 6,845
Default

Quote:
Originally Posted by Dio View Post
Good grief. That sounds enormously familiar. I think I might have written that readme.

<edit> Indeed - doesn't look like any code survives, but I found it in the timesheets. November 1997 - January 1998, plenty of time down to 'GLQuake'. So it was me after all!
lol man
swaaye is online now   Reply With Quote
Old 28-Aug-2008, 22:10   #19
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

The code does still survive as well. Found it on a very antique backup .
Dio is offline   Reply With Quote
Old 28-Aug-2008, 22:19   #20
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

Dio's next project, Virge drivers for vista
Davros is offline   Reply With Quote
Old 01-Sep-2008, 20:41   #21
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

I'd rather have serious dental work.
Dio is offline   Reply With Quote
Old 01-Sep-2008, 21:09   #22
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

So would most of the u.k population given the shortage of dentists

ps: whats a brit doing writing drivers for s3 they were a u.s company wernt they ?
Davros is offline   Reply With Quote
Old 02-Sep-2008, 14:56   #23
Dio
Senior Member
 
Join Date: Jul 2002
Location: UK
Posts: 1,758
Default

We did the S3 BRender driver for them via Argonaut, and they liked us. We started contracting with them for ports and UK devrel work, and eventually they brought us on board full time.

We jumped ship not long after the VIA buyout when it became clear that they weren't going to be heavily involved in high-end 3D. The main bad sign was that they were so short of good hardware people we were taken from devrel to help out... at one point I was pretty much designing the pixel shader for the first of the post-VIA chips!
Dio is offline   Reply With Quote
Old 02-Sep-2008, 16:45   #24
Davros
Darlek ******
 
Join Date: Jun 2004
Posts: 9,497
Default

Quote:
Originally Posted by Dio View Post
We did the S3 BRender driver for them via Argonaut,
He mentioned the name of the gods, argonaught aka particle systems
/Davros bows

were you involved in i-war ?

once upon a time microsoft were looking at b-render it could of become directx

Last edited by Davros; 02-Sep-2008 at 17:01.
Davros is offline   Reply With Quote
Old 02-Sep-2008, 21:02   #25
andypski
Member
 
Join Date: May 2002
Location: Santa Clara
Posts: 584
Default

Quote:
Originally Posted by Davros View Post
He mentioned the name of the gods, argonaught aka particle systems
/Davros bows

were you involved in i-war ?

once upon a time microsoft were looking at b-render it could of become directx
Particle Systems was Glyn Williams outfit (the guy who did Warhead on the ST/Amiga). I think that they became Argonaut Sheffield after they were acquired, but that was after they released I-War.

The work that Dio and I did with Argonaut was before that.
andypski is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 02:24.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.