Welcome, Guest. Please Login 3dfx Archive
 
  HomeHelpSearchLogin  
 
Pages: 1 2 
Send Topic Print
Banshee multitexturing problem (Read 1196 times)
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Banshee multitexturing problem
16.05.03 at 18:12:20
 
Hi...
As everybody knows, the Banshees have only 1 TMU, and then, the multitexturing is not supported for these cards. Embarrassed
But reading some 3Dfx documentation, I found that it is theorically possible  Cheesy, using two-pass drawings...
Well, my problem is that I never can't find an glide3x really implemented with this feature, and I want to know if somebody have info/files/etc. about this.
Thanks.
Back to top
 

...
WWW  
IP Logged
 
FalconFly
YaBB Administrator
*****
Offline


3dfx Archivist

Posts: 2445
5335N 00745E
Gender: male
Re: Banshee multitexturing problem
Reply #1 - 16.05.03 at 21:40:03
 
Hi Smiley

Well, the only attempt to tackle this Problem was done during the 3D Analyzer development last year.

The focus was actually on 4 Layer Multitexturing (Multipass for Voodoo3/4/5), but it might still work for a Banshee as well.

Unfortunately, we didn't test it on a Banshee back then, but you might check it out :

www.tommti-systems.de

Download 3D Analyzer and see if it works. Note though, that 4 Single Pass Texture Layers were accepted, yet only 2 being rendered. And I have no Idea if all that is still valid, since I haven't been involved since almost 1 year now...
Back to top
 
WWW  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #2 - 16.05.03 at 21:51:27
 
Thx, but as far as I know, 3D-Analizer works over D3D, not over Glide... Embarrassed
Back to top
 

...
WWW  
IP Logged
 
FalconFly
YaBB Administrator
*****
Offline


3dfx Archivist

Posts: 2445
5335N 00745E
Gender: male
Re: Banshee multitexturing problem
Reply #3 - 16.05.03 at 21:54:46
 
Oops, yes, that's correct  Roll Eyes

It would require additional work then, but you'd have to contact Thomas for that.
He always seemed to focus on Direct3D (which seemed to be his best knowledge area)...

But technically, is should be possible to do it for OpenGL or Glide as well.

The GxpOGL (OpenGL Interceptor) .dll of Colourless ( http://www.users.on.net/triforce/glidexp/ ) might be a possibility as well, but so far is has been developed only for a few, specific OpenGL Workarounds...

Since he's working now with Koolsmoky on a unified, new Glide (possibly DirectX/OpenGL core as well), those 2 are likely very busy and hard to reach...
But it might be worth a shot as well Smiley
Back to top
« Last Edit: 16.05.03 at 21:58:39 by FalconFly »  
WWW  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #4 - 16.05.03 at 22:12:53
 
You're totally right, this feature is already implemented in OpenGl since 761 version, but it's still not implemeted in Glide (I test Ksmoocky and Colourless Glides).  Embarrassed

Really, I don't know what to do... Undecided

Sorry if I'm persistent and thanks again... Smiley
Back to top
 

...
WWW  
IP Logged
 
DenisF
Senior Member
****
Offline


So fluffy it hurts

Posts: 409
Israel
Gender: male
Re: Banshee multitexturing problem
Reply #5 - 16.05.03 at 22:38:38
 
*Offtopic*
Did anybody ever notice those super cool names that 3dfx used for their cards? (Voodoo/Rush/Banshee/Avanger/Rampage etc')
Who did ever come up with the idea of using such names on the cards?
Back to top
 

[
Powered By:
]
[
Abit NF7-S Rev2.0
] [
AMD Athlon-XP Mobile 2600+@200x12 1.7v
]&&[
GeiL Golden Dragon PC3200 512mB Dual Channel Kit
] [
ATi Radeon 9700 PRO 128mB
]
&&...
138674373 denisfak  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #6 - 17.05.03 at 17:49:58
 
DenisF: you're right... every from the dark side...

Patience: well, I just put in contact with different programmers around the world, but nothing yet. Undecided
One of them is really capable to do something with this problem (is a great D3D, OpenGL coder, and he is working in a great really functional glide3x wrapper), but without more info it will be a little difficult...
The problem is, no dlls founded, no info founded... nothing...
Can somebody give a little hand...

Thx.
Back to top
 

...
WWW  
IP Logged
 
FalconFly
YaBB Administrator
*****
Offline


3dfx Archivist

Posts: 2445
5335N 00745E
Gender: male
Re: Banshee multitexturing problem
Reply #7 - 17.05.03 at 18:34:01
 
Hm, what exactly are you looking for ?

As far as I know, no dedicated Core Files were ever compiled to tackle this Problem (?)

I believe the majority of Problems arise right at the start, then Games/Applications do a DX or OpenGL Capability check, and find "Multitexturing=Not capable"...

The present Drivers already 'should' be able to use multiple Texture Layers, and draw them in multiple passes.

(running UT in Glide, for example, allowed me with the Banshee to select "Detail Textures", which normally run in a single Multitexturing Pass I would guess. So the only Problem remaining, would be that the Driver correctly reports no Multitexturing caps, although the Driver 'could' do it using multiple passes. That alone I think fails some modern Games' minimum requirements.)

I guess that would require a Driver hack (make it report Multitexturing caps in DX and OGL), or a virtual HAL to intercept specific calls (like 3D Analyzer does).
Back to top
 
WWW  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #8 - 18.05.03 at 22:18:52
 
Maybe you're right, but ti implement hack solutions can't really solve the problem. In fact, the apps works and fien, but without multitexturing effects (then, somtemies some transparencies looks wrong, some animated effects looks like an static image, sometimes the textures looks w/o detail, etc.) :\
Looks a these shots... (maybe can explain better what I can say when I speak about 3dfx docs.)

glide3pgm.pdf shots

...
...
...
...
...
...
Back to top
 

...
WWW  
IP Logged
 
FalconFly
YaBB Administrator
*****
Offline


3dfx Archivist

Posts: 2445
5335N 00745E
Gender: male
Re: Banshee multitexturing problem
Reply #9 - 19.05.03 at 00:24:52
 
Hm, the document explains why some Multitexturing Applications still work fine on a Banshe, despite the Single TMU.

So now I see your point :

Seems like the Banshee does slow, multiple passes, where a TexCombine could do the job at almost double the Speed, and minimal loss in visual quality...
(I hope this was what you wanted to point out)

Since this is Glide specific Koolsmoky or Colourless definitely are the best Person to talk to. If anyone knows how to get this implemented, they are !
Back to top
« Last Edit: 19.05.03 at 00:25:46 by FalconFly »  
WWW  
IP Logged
 
Andrew Boiu
Senior Member
****
Offline


LDE-BDreams

Posts: 267
LDE-BDreams
Gender: male
Re: Banshee multitexturing problem
Reply #10 - 19.05.03 at 13:59:17
 
In fact there is no true multitexturing problem. All the glide games that I tested, except for NFS3 which has a strang work-around for Banshee which reduces graphics quality, otherwise the original is crash-sure.
Multitexturing problem arises seriously only in DirectX 8, 8.1 and OpenGL 1.2+ environments, where there is assured that if the board supports MultiTexturing (which sometimes the driver succeded into lie, perfect Dx7) it should support Bump Mapping. And here the problems tend to go black. All of the modern games, without a hardware disabled dll (3D Analyzer) tend to experience severe crashing chances when believing they can bump map, but they can't allocate a surface for such an operation.
Mostly you are likely to encounter this issue in more and more games, just because everything tend to be done in heavy workload for video cards. Gta3 is a example of problem arising from no true multitexturing in multipass activated: all cars are white, except for taxi's which have a yellow stripe visible (it's the second texture).
However, even in multi-pass texturing, the board is still very fast (compared to the overall workload she has to perform), and is still able of showing a good quality.
So, the main big problem with Banshee multitexturing is that programs don't stop doing bump-map's and shadows, and this causes for more stress (best case), or crash (worst case). Programs don't tend to try to see if there are bump maps or other things available, they just check for multi-texture.
Even the bump-map could be done in Dx8 games (MaxPayne), if there would be a way to fully force the effects to wait do be drawn in a multipass texturing on the TMU.
Solution to all these problems:
1 force a way to show all the efects (might be good just too take pictures, not for playing)
2 force a very big lie, which sincerely I think it's the best approach to most of the eye-candy which are barely expandable (would someone die if there would be no Pixel Shading, or Vertex Shading? I believe not).


The second solution is what I am looking for. But beside 3D Analyze (which is still the best I could find until now), there must be a better option. However, as newer DX9 Apps will be released, I hope they will keep the good work. What is trully important is that the newest CPU's (Athlon mainly) can take a huge workload, so keeping a Banshee in the computer seems a very good idea.
Back to top
 
WWW  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #11 - 19.05.03 at 17:39:26
 
Well, what can I say?...
about Dx and OpenGL you're totally right (hack solutions are a good way to pass the Banshee limitations but, in fact, these are not real solutions...)
Now, I'm focused to solve (find alternative/possible solutions) to the glide3x problem...
There's to many apps, that doesn't look correct in the Banshees for this problem, but are perfectly playables...
But there's other apps (emus/games/etc) where the problem generates too many errors ... Undecided
The Dx and OpenGL problems seems to be very complex to be fixed and the glide3x problem maybe not...
In other words, I'm trying to make the things step by step... Wink
Back to top
 

...
WWW  
IP Logged
 
Andrew Boiu
Senior Member
****
Offline


LDE-BDreams

Posts: 267
LDE-BDreams
Gender: male
Re: Banshee multitexturing problem
Reply #12 - 20.05.03 at 14:26:50
 
Exactly what games are you talking about?
Remember, one of the big problem with how it looks in games is mostly related to the maximum texture size of 256x256. And this leads to washed-up textures and some of them looking better than others.
For example Quake3. This game is using a large amount of texture memory, which leads to some textures on the wall to look extremely well, in contrast with some of the floor tiles or the places where animation is already done (hole in floor where a blue light appears to shift from left to right).
I conducted a major set of experiments with the problem on texture memory usage, and speed. The biggest test was with NFS5 running in glide (for an unknown odd reason all of the voodoo cards, except for Rush and Voodoo1 are using normally the d3d. And their crappy explanation like it looks better on d3d for voodoo cards, good joke), and there the texture memory usage was begining to show up.
I changed the texture memory allocation from 4Mb to 12 Mb. At 4Mb, good speed and no visual problems. As doing test after test and hitting the 12Mb, problems start to show up. Even if speed was not lower with more than 15% compared to 4Mb texture memory, some polygons wouldn't have a texture on them, and most noticeable, all the effects like alpha-blending where looking horrible.
So 11Mb was the maximum quality that can be achieved on the Banshee (Voodoo3 falls in the same cathegory with the texture memory limits, for those with 16Mb). Also, of interest is that I tested more versions of glide, and discovered that a specific version was showing the best quality possible, and all seemed very clear and crisp.
The test showed up that for a game in 2000, even in glide, 16Mb texture memory is a problem. And all the boards, including the Vooodoo4 and Voodoo5 are limited to the problem with displaying on screen only things that are on the local video memory.
So, I would like you and others to understand that most of the problems with games after 1999 is texture memory. And no voodoo card can do AGP texturing. The solution to most of the problems with voodoo's would be to design a sort of swapping driver that can be totally transparent to programs, and fool them that they have 32Mb of texture whereas it's 16Mb Video Ram and 16Mb system Ram, and allow for maximum speed for textures to be transferred. I know this is not impossible, I heard of a special mini Opengl builded for Quake1GL that could make the game to play at more than 18 frames/second on a Voodoo graphics (voodoo1) with just 2Mb of VideoRam. And this is amazing.
Also, another problem would be to implement on the little driver that would interface to both Directx and OpenGl, a method on how to fast compress textures on System Ram when they are loaded, and then let the video board carry on with calculations and show them as they are, compressed. Even more I would go to the chance that the driver should be able to track all the textures the video card is receiving and store them in a file on disk. Then a program should be able to compress the textures in there if necessary, or mostly important to let them all come into the system memory and be rightly available for the video card to pick them up, avoiding the problems related to where they should be, and how they are accessed. The program should be able to transform each texture stored in the file on disk, to standard formats like 256x256 or less or more, as it is possible. The video card when getting rid of these calculation (which takes the most time) would be able to work very close to how it worked in it's good years.

Problems arises when the Banshee has to do major efects like bump-maps and light-maps. Even then, the most unpleasant problem remains the multiple cycle that the TMU must do, so it's slowing down.

Andrei.
Back to top
 
WWW  
IP Logged
 
Raziel64
Junior Member
**
Offline


Glide64 Betatester

Posts: 61
Argentina
Gender: male
Re: Banshee multitexturing problem
Reply #13 - 20.05.03 at 18:41:43
 
OK, I see your point...
Well, maybe you don't know but I'm betatesr of a project called Glide64 (a glide3x plugin for N64 emulators), and with it I have these kind of problems... (it uses the glide3x interface to the maximum)...
I know Dx and OpenGL limitations (Banshee is an old card), but, for now, I'm only trying to find a solution for this specific glide3x mutitexturing problem.
It can't affect Dx (other thing is opengl: 3dfxogl.dll uses glide3x).
It no depends of the size of the video RAM, or any other parameter, only of the glide3x.dll programming.

P.S.:GLQuake exits and is a good piece of soft, even for Banshees.
Back to top
« Last Edit: 20.05.03 at 18:44:46 by Raziel64 »  

...
WWW  
IP Logged
 
Andrew Boiu
Senior Member
****
Offline


LDE-BDreams

Posts: 267
LDE-BDreams
Gender: male
Re: Banshee multitexturing problem
Reply #14 - 22.05.03 at 09:16:25
 
Well, to tell you the truth, I was a little bit dissapointed when I tried the new Koolsmoky Glide. In almost all the aspects, except for the texturing and efects speed, this new glide was dissapointing. It shows clearly that it has been builded for the 32Mb video boards, so speed is not more than usual.
But yes, I know that every time you design a Glide, you are facing a lot of problems. And this is mostly related to how each and every aspect combines to give you the awesome quality that the 3dfx is capable of.
What I really wonder is how the 3DNow! is improving the speed and the visual quality. Why did I say that? Because I maked a little test (unwanted) by using a video capturing device (using software compression by an Ideo video compressor), and a recompression task (transforming an Indeo 5.0 into a Divx movie with Mp3 audio compression), I realised that when the capture ended, I losed only 8 frames in 5 minutes, at 25fps! And this while the recompression has done with normal speed for the task.
At this moment I realised that using both 3DNow! and the CPU processing power, awsome things can be done with 3DNow!. And what is even more impressive is that working on the 3DNow! unit can be done greatly independent from the rest of the CPU. So, by well thinking how to use in parralel the CPU and the 3Dnow! unit, I believe that incredible results in terms of performance can be achieved. I hope you succeed in achieving a good result. And I don't quite agree with you. Banshee is still a capable card. What is her only problem is multitexturing. I have tried some Voodoo3 drivers but I could only use the glide and OpenGL part of them. The files 3dfxv3.dll, 3dfxv3.vxd, and 3dfxv3.drv couldn't work together (I believe these are the names of the files, but I'm not sure), so I couldn't use a newer D3d support. All glides, including the one for V5 worked perfectly. The only problem: speed.
However, even if the Banshee and v3 are not capabel of 512x512 textures, I tested the Creative MiniGl in Quake3. And beside the performance hit, which I believe it's acceptable, the image quality was incredibly good. This way I haved a rough view of what a V4-V5 would do on my computer. So, again I would put a question: is there any chance of you or others to develop glide+opengl interface that could handle large textures for v3 and Banshee? Even if only for testing image quality, it still have lot of sense for me to use it.
As soon as you will release the first new glide dll, I would be very interested to test it... Good luck, and keep up the good work!

Andrei.
Back to top
 
WWW  
IP Logged
 
Pages: 1 2 
Send Topic Print