Custom graphics driver for FF7/FF8 [v.1-.7.6]

  • Thread starter Thread starter halkun
  • Start date Start date
Status
Not open for further replies.
It's all or nothing.

Unfortunately, they (the FF7PC team) could not stick to using their own file API, so to make it override things I would have to reimplement the whole thing with all of their 3 or so different file access methods.
Still doable, but it would take a lot more time.
 
Most likely *that* was overridden from the three or so file access methods from the original game :P
 
Last edited:
Well, here's the thing, they have an excellent "high-level" API that calls all the other APIs that they could have used all around and this wouldn't have been a problem. But of course, some guy just *had* to use the LGP functions directly. :roll:
 
installed 0.7.1 and got:

INITIALIZING MIDI...
selecting device 0:Microsoft GS Wavetable Synth, mid=1, pid=27,
midi data type: GENERAL MIDI
using midi data file: C:\Program Files\Square Soft, Inc.\Final Fantasy VII\Data\midi\midi.lgp
midiOutGetVolume returned: ffffffff
MIDI INITIALIZED
ERROR: unhandled exception
 
Aali, do i need to extract ALL the LGP files to work in direct mode correct?
battle, magic, cr_us, disc_us,moviecam, char, f_level, ect
Right? not just the usually battle, char, f_level?
 
Aali nice job! Just wondering... will that direct mode for lpg files be implemented in ff8 driver as well? I mean, for the .fi .fs .fl files ?
Would be awesome!
 
"Fixed the cross-fade-to-same-song stopping problem with FF7Music" The exiting vehicles on the world map music cuttout is fixed! i still get those script events (ex. paying at an inn,chocobo dancing to get the choco\mog materia***Save file Game #2)missing with the new driver. Its odd cause with 0.6.10b it works great.Is that fixable or something to just deal with lol?
 
Last edited:
Hi people,

I'm not in the mood to read through 45 pages of replies so I'll jsut ask here: Is there any chance at getting the source for these drivers, or at least some documentation on the interface?
I'm just interested in playing with it, specifically I'd like to try making a Direct3d10/11 version of the driver.
 
Well, Aali would be the best... if not the only person who can answer you that.  :-)
 
Aali would be the only person who has the source.

Just curious, with such an old game, would you get any benefit from using dx10/11?
 
Basically just the same benefits you get from having an OpenGL driver, except I kinda hate ogl myself. Also just like you can replace the models in the game itself, it should be possible to add "extras" by analyzing calls, crc'ing data, etc. Just a bit like how some emulators let you replace textures on the fly.

In any case, it's not about the benefits. More like I like to "prove" myself I can do something, when I believe I might be able to.
 
I thought Aali's driver was using dx9... am I wrong in this info?  :?
Yep.  It's OpenGL
Basically just the same benefits you get from having an OpenGL driver, except I kinda hate ogl myself. Also just like you can replace the models in the game itself, it should be possible to add "extras" by analyzing calls, crc'ing data, etc. Just a bit like how some emulators let you replace textures on the fly.

In any case, it's not about the benefits. More like I like to "prove" myself I can do something, when I believe I might be able to.
Hmmm, well after you create a decent driver (When/If Aali gives you the info) It would definitely be nice to have another person around here who is good with programming and all that other technical mumbo jumbo :P
 
I know is off-topic... maybe not that much but... Which is better? OGL or DX?
That question has started many holy wars between developers. The main difference is that DirectX is a Microsoft product and thus linked to their OS, whereas OpenGL is a cross platform standard established by an open group. OpenGL is exclusively an API for hardware accelerated graphics, whereas DirectX also has DirectSound and a few other things besides video.
My general impression is that OpenGL is more low level, but I haven't tried to code any DirectX, so I can't speak confidently there.

As to which is "better," it varies from card to card. Some OpenGL implementations are faster than DirectX, and vice versa. There's no definitive answer there.
 
Hm... that's one of those questions that could start a 1000-page flamewar, so I will try to write a reply without getting either side "insulted"... :p

This is just a very rough list of what I think are the 4 major points of each API:

Opengl:
 - Crossplatform
 - C-based functional API
 - Up to 3.0, still keeps compatibility with almost every feature of the original OpenGL (3.1 drops some).
 - Extension support allows to create new features without needing a new API version.

Direct3D:
 - Windows-Only
 - COM-based Object-oriented API
 - Each new version of D3D has its own interfaces, meaning that while it loses the source code compatibility, you dont' have any "clutter" from deprecated stuff
 - The feature set is fixed on each version of Direct3D. (In d3d9 there was a capabilities list, but since Direct3D10, Microsoft dropped that design and in D3D11, replaced it with "feature levels", so a level "11_0" device requires all features of d3d11, where a "9_0" device only requires direct3d 9.0 features)

As you might see, each one has its own advantages and disadvantages.

Personally, I think OpenGL is rather "messy", but I also think COM adds a bit too much code clutter which could be avoided.
I prefer Direct3D mostly because it seems a lot more organized. And it's clearly documented what you can do, and how to do it,
where openGL is more "free-form", and the optimal code path depends a lot on hardware, drivers, and operating system.
 
Aali would be the only person who has the source.

Just curious, with such an old game, would you get any benefit from using dx10/11?
Besides not having work right on XP? I don't think so.
 
Status
Not open for further replies.
Back
Top