Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3DFX Glide support? #412

Closed
DerekTurtleRoe opened this issue Jan 14, 2016 · 12 comments
Closed

3DFX Glide support? #412

DerekTurtleRoe opened this issue Jan 14, 2016 · 12 comments

Comments

@DerekTurtleRoe
Copy link

So, I know this sounds really stupid. But hear me out first.

So apitrace is really awesome. I use it mainly for testing emulators and games.

But, I would like to do the same with 3DFX Glide, and obviously I can't do that.

SO, I was thinking you guys should consider adding support. My reasoning for this is that many (mostly older) PC games used 3DFX Glide for rendering. Not only that, but many emulators (mainly PS1 and N64 emulators) still support the use of the 3DFX Glide renderer. Now, some people might say you could use a wrapper and then run apitrace that way, but I find that to be a bit buggy at times. Not only that, but that doesn't help me when I am trying to use apitrace to debug a game or emulator that uses 3DFX Glide, especially when the 3DFX Glide part might be what is causing it (which is somewhat common, by the way).

3DFX Glide is open-source (http://glide.sourceforge.net/), so I see nothing holding anybody back from adding it in. You don't have to make this a priority or anything, and I know it wouldn't be added unless DirectX and OpenGL are working well. And since you guys have DirectX, OpenGL, and DirectDraw support already, I figured you guys would consider 3DFX Glide a fun and interesting challenge.

I am anticipating on getting some new computer parts soon, so I may start working on this by myself.

But I kind of wanted to gauge interest as well, to see if any PC gaming enthusiasts or anything would be super interested. Since I am working on PS1 and N64 emulation, Glide also is very relevant.

Anyway, tell me what you guys think. Are you up for a fun and interesting challenge like this?

@mtschoen
Copy link

Dude this put an enormous smile on my face. I still have my (nonfunctional) Voodoo5 5500.

I'm not sure it would actually be a hugely difficult project, but probably would remain a hack, since I'm not sure how many other people could use it.

@DerekTurtleRoe
Copy link
Author

@mtschoen Even if it was a hack, I'd use the heck out of it! I have so many emulators and games I am testing right now that would benefit from this! I am hoping everybody finds this an interesting proposition, at least.

@jrfonseca
Copy link
Member

I'm not familiar with Glide API. Looking at glide.h, it looks like simplified OpenGL 1/2, so writing a apitrace/specs/glideapi.py spec for it, and support tracing it, it's relatively straightforward (less than a week, even for a apitrace newbie).

Retracing should also be relatively simple. Dumping state will require more hand-written code.

That said, I don't have time or direct interest in supporting Glide -- handling better some bits of OpenGL and Direct3D APIs provides me more fun and challenge than I cope --, and those APIs are relevant to most relevant to my work.

If someone is willing to do the work, I can provide some pointers and accept it.

But I confess I still don't fully understand the driver for this: I understand someone emulating glide API on top of something else so they can run old Glide games might be interested. But are there people actually writing against Glide API on this day? Is there still enough people with 3DFX cards there that use new software?

@mtschoen
Copy link

@jrfonseca I think I can be confident in saying "hell no!" to your last point. 3DFX folded 14 years ago. I don't think that you can use their hardware today, even if you wanted to, unless you're also using an older motherboard, OS, etc.

Don't get me wrong, I'm all for this project, since I have plenty of fond memories of those days, but I agree, it's not really useful to the majority of people these days.

@vgturtle127, I'm still trying to work on my own hack, and could use the experience, so if I can, I'm happy to help. Granted, I think I fall into the "apitrace newbie" category, so keep that in mind! :)

@DerekTurtleRoe
Copy link
Author

@jrfonseca Actually, yes there are people still writing against the Glide API. Most notably Glide64, but also Lewpy's Glide plugins for various emulators. But also many games on GOG and stuff use Glide wrappers as well. There are some open-source games that use Glide as well, but again most of them include a wrapper.

@mtschoen As long as you have the driver for the card installed, you can use Glide all you want. 😄 Even on modern operating systems and with modern hardware. You just need drivers. That is the problem. 😉

Where is your fork located?

@mtschoen
Copy link

Haha to be honest I haven't actually put up a fork on GH. It's mostly been me privately hacking around. I'll get there soon. Basically my goal is to dump out model/texture data from a trace with the interest of re-creating the trace scene in Unity or Maya or something to mess around with it.

@DerekTurtleRoe
Copy link
Author

@mtschoen Oh, alright. If you do, ping me so I can help out.

I think I will fork and start hacking. 😄

@mtschoen
Copy link

Godspeed, good sir :)

@jrfonseca
Copy link
Member

There's been no activity, and TBH I don't want to encourage more people to jump on this, as I want to trim whatever fat I can from apitrace, so closing this.

@DerekTurtleRoe
Copy link
Author

@jrfonseca
Sorry, been very busy lately. Darn life keeps getting in the way of my fun. 😄

@dpethes
Copy link

dpethes commented Feb 18, 2018

I started a capture wrapper and replay tool for glide2x: https://github.com/dpethes/glidetrace , if it is of any interest. I expect that it won't be used much and therefore it's probably better off like a separate project, not cluttering apitrace.

@jrfonseca - thanks a lot for your work.

@DerekTurtleRoe
Copy link
Author

@dpethes That's really cool, I will take a look at it. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants