[FF7PC-98/Steam] FFNx - Next generation modding platform for FF7/FF8

  • Thread starter Thread starter TrueOdin
  • Start date Start date
Status
Not open for further replies.
I can see there being advantages and disadvantages to both really. If using lossless formats such as PNG (or flac for music) cause slowdowns or other issues then lossy formats are usually 'good enough' (especially if they are vastly more performant.) Most people when actually playing a game arent going to notice some slight degredation.... But i have to admit the archivist in me prefers lossless formats.
 
I believe Jusete is still doing all original rendering in PNG and handing that off to Shampignon for cutting.  Pretty sure S will continue releasing PNG format files (max compatibility), and allowing us to convert to DDS if we wish.
 
Any thoughts on doing an initial internal conversion? That way people can use whichever they want and get benefits both ways.
 
but if pngs could use cache files like aali's dll it should work.
As I understand it, that cache was where many (most?) of the really nasty memory leaks lived.
 
Thats not what i meany. More like what aalis cache does. If it sees a png it converts it to dds and saves in a cache. Would be slow the first loads but after that would be fast
 
I can see there being advantages and disadvantages to both really. If using lossless formats such as PNG (or flac for music) cause slowdowns or other issues then lossy formats are usually 'good enough' (especially if they are vastly more performant.) Most people when actually playing a game arent going to notice some slight degredation.... But i have to admit the archivist in me prefers lossless formats.
Let's be clear about that, i'm a quality addict, archiving my cds as flac, ripping my UHDBR as a simple mkv repack (no transcoding)... but outside my home server, i'm using loosy virtualy lossless formats to gain from 30% to 200% space or compatibility with some hardware, lossless is pointless if you can't use it smoothly (i've started studying lossy and lossless numeric formats 25 years ago, before the mpeg1 became a real standard so i've seen many formats and their limits - mpeg2 rgb full range for medical archive at time witch was unusable real time where yuy2 was great...)

DDS BC7 is 100% visualy lossless (not to compare with older dds codec), i've done countless tests before convert my mods to dds.
Even why my 4k projector (>2m base) i cant tell witch one is png and witch one is dds.

It's like wav vs mpc@320kbps (musepack), you'll never be able to spot any audible difference even with a very good hifi amp.
Or uncomp avi vs 4k h265 hight bitrate, you can't tell witch one in compressed even with a good projector.

Png is good for archiving sources files (so you can edit/mod the source loselessly, even if you edit/record 1000 times) , for live game engine it's pointless.


Thats not what i meany. More like what aalis cache does. If it sees a png it converts it to dds and saves in a cache. Would be slow the first loads but after that would be fast
No need for a cache as dds is loaded first, only need to convert dds in the same folder as png.
But as dds bc7 is realy powerfull, it's also realy slow to convert specialy on older GC (i own a 1060gtx and convert a full fields car take around 30s)
>>not usable for a realtime conversion
 
Last edited:
Well that is good to know. I didnt expect a 30s conversion. That really puts the on the fly conversion idea to rest.
 
Does this supports linear/bilinear filtering for textures? I realise I might be in the minority but I just can't stand the pixels
 
yes the bilinear option is usable (only need to activate it in the cfg file, like with aali)
but you'll need it only with vanilla game, with hd external texture you won't need it
 
Allright, this is let everybody knows that together with Satsuki we did some tests on top of some new implementation and we made PNG loading times even faster.

FFNx now it will support all PNG types ( against original Aali DLL which supported only RGB/RGBA PNG formats ) like: Grayscale, Grayscale w/Alpha, RGB, RGBA and Paletted. All of them should load fine.

Time to load has improved A LOT but ( just to be honest ) is a little bit slower than Aali DLL just because I don't cache anything and I load it fresh. Anyway, on modern PCs this small % of slowdown is not even noticeable. For a daily gameplays it should work more or less like DDS, a bit slower. DDS is still a way to go as it provides the fastest experience related to texture modding.

Some memory optimizations and usage has been made, which means even less memory used to handle a texture in memory. This means a bit more space for your mods, again :)

Finally, the DLL code is now built with the maximum optimization available through the compiler, which means faster execution on top of your CPU.

All of this available on latest canary. Feel free to test!
 
I see you've also added extensions such as jpg and so on...  I take it this is just cosmetic?  pnglib doesnt support these formats does it?
It's not cosmetic. Those are real supported extensions. I still need to document that on the README but feel free to try them.
 
I commend you on the bug fixes and joypad support in case that isn't clear.  All i asked for when i came to you 2 years ago was that kind of thing.  Despite the fact im never going to work with you from this point on nor acknowledge your existence again after this post, i want you to know i believe in full credit and people will know exactly what additions in reunion come from you.  I'll also continue to supply bug reports as that aids my project as well.
There's no need as I'll never support Reunion. Simple as that.
 
Hi,

True Odin, I attempt to rune FFnx on Linux by the Wine app. I am based here on the CD Version.

So I can run the Aali Driver as well with some few bugs(transparency) about textures in battles with the dialogs inside battle.
Then I try to run your Mod based on it but I simply can make it work. I have rune Aali mod on Windows XP compatible install in Wine and for your one I try with Windows 7 compatibility but...Not work. So I asking you what are then necessary component for make this Mod work on Windows 7? I am talking about VCrun 200x 20xx? Also .NET necessary for it? Can it run with only DirectX9c installed?

I have tried OpenGL and DirectX option but don't work here. But I precise my graphic card is old but work on Aali drivers, Geforce Go 7400 128MB. (OpenGL 2.1 compatible)

Thanks for reply
 
Last edited:
Hi,

True Odin, I attempt to rune FFnx on Linux by the Wine app. I am based here on the CD Version.

So I can run the Aali Driver as well with some few bugs(transparency) about textures in battles with the dialogs inside battle.
Then I try to run your Mod based on it but I simply can make it work. I have rune Aali mod on Windows XP compatible install in Wine and for your one I try with Windows 7 compatibility but...Not work. So I asking you what are then necessary component for make this Mod work on Windows 7? I am talking about VCrun 200x 20xx? Also .NET necessary for it? Can it run with only DirectX9c installed?

I have tried OpenGL and DirectX option but don't work here. But I precise my graphic card is old but work on Aali drivers, Geforce Go 7400 128MB. (OpenGL 2.1 compatible)

Thanks for reply
Hi Kitsune,

Deeply sorry for the delay but I didn't got a notification about this, not sure why. Either way, I knew this has pretty much good compatibility on Wine for people using AMD/Intel GPUs. Although I see your GPU is pretty much old, so I fear your drivers are old too. This unfortunately may lead to issues in your environment.

Although, what you can do is try to run it using DirectX 9 or DirectX 11 renderer, in the config. Your Wine environment should be fine to use Windows 10, and you need the Universal CRT as the code is built on top of that.

Sithlord48 is one of the users using FFNx on Wine and has been successful with it. Maybe you can try to approach him :) Also, worth a shot to try the latest canary to make sure the issue is just not only on the latest stable.

Let me know how it goes!

Cheers,
TO
 
I'm playing FF7 via wine for a very long time and have not had a problem with FFNx using openGL or Vulkan  (yeah its a bit slow) your card might need to be updated to one that supported a newer copy of openGL . im not sure what version our openGL is targeting.

you do not need any extra packages installed and i would recommend making a wine prefix just for ff7. I have not tried to run using Dx9 or 11 since wine is just going to translate them to openGL calls anyway.

For you next card i would suggest trying to avoid nVidia for linux AMD has much better drivers then nVidia does for linux, The architecture for AMDGPU should be emulated by every vendor that wants to have a proprietary driver for Linux.

@trueOdin seams bgfx supports both OGL 2.1 or OGL 3.1+ so we might need to add an option that forces the loading of the OGL 2.1 backend?
 
Last edited:
Thanks for your reply I will test it however in Windows 10 compatibility mode but I think effectively my card is too old for this mod...On Wine certainly.

I have installed Debian 10 between the time trought, in this version I can't use proprietary drivers from Nvidia on it. It's a trap.

The drivers I must use with Wine for now are the Open sources drivers named "Nouveau" for Nvidia GPU. There are some troubles about DirectX games with Wine and these drivers. Only OpenGL apps run here for now on Wine with these  "Nouveau" open sources drivers. I can run in OpenGL mode ePSXe and also Half Life (first) as example...The introduction movie of the Half Life game run and his game engine in opengl too work. Half Life in DirectX mode crash also on Wine with these drivers like FFVII from Steam.

The FF7 Opengl FFNx mod here don't run for now here correctly on Wine (mixed up screen at intro movie, freeze and crash). I thinked it was maybe due to ffmpeg codecs...I don't really know how the movies are decoded here in this pack. I have attempt to download ffmpeg library (dll) for Windows to decode it well but that not change the trouble, and I must evitate to use "a DirectX decoders"...

So I have take these informations as example, maybe that can help you for a better compatibility update (it's in french):

AVI movie Half Life (GOTY CD ed):
Res:640x480
Démultiplexeur: avi
Format: Cvid
Vid Cod:ffcvid
Aud Cod:pcm

AVI movie Final Fantasy VII Steam:
Res:1280x896
Démultiplexeur:lavfpref
Format vidéo:VP80
Vid cod:ffvp8
Aud cod:ffvorbis

I have tried to use finally Media Player Classic by Wine app for reading the Movie of Final Fantasy VII. I have an error about DirectX9 the first time I launch a movie and after nothing about the error and the movie work. I think this app use DDraw rendering but not sure...

Like you said It seem AMD are better for Linux about drivers (There are really open...) But I use a laptop, and changing the graphic card will be certainly not possible on it. Natively this card only support OpenGL2.1 and DirectX9c (in real windows environment). I don't think Vulkan is tolerate by my card (she is too old) but maybe there are something that can passthrought like an interpreter in Wine (I am not sure of it). Wine have a regedit option to force of use of an "OpenGL version Level" I can set it to 2.1 for use 2.1 or 3.1, ...but don't know really if my card can support a upper version of GL ---> natively it's 2.1 but with "Mesa",...and other "Gallium3D" used by "Nouveau" drivers don't really know how it work...and what can I do.

I think there are an Intel GPU chipset 945Gm inside this laptop, but Linux seem not recognize it as a GPU (My trouble for it) I will try again with Win10 compatibility and CRT...If I find how put it on Wine.
 
Last edited:
If your card does not support the right OpenGL version changing the compatibility mode is not going to help you at all.
 
@trueOdin seams bgfx supports both OGL 2.1 or OGL 3.1+ so we might need to add an option that forces the loading of the OGL 2.1 backend?
Good catch! I wasn't aware of it. Got any example link? I'll be happy to add it to the list of renderers!
 
Good catch! I wasn't aware of it. Got any example link? I'll be happy to add it to the list of renderers!
So what is the actuel necessary OpenGL version for the FFNx pack to work actually?

I use this option for force OpenGL 2.1 version that's the maximum version my card can doing natively normaly but maybe there is a wrapper inside Wine that can downgrad the OpenGL version or in Mesa, I don't know about it. Also there is already something like DirectX wrapper to openGL I think in Wine. But the open-sources 'Nouveau' driver are not good for D3D softwares throught Wine here...I think I cannot use this one for it must go to Nvidia proprietary drivers...But what is the OpenGL version FFNx needed in brief?

I was be able to play with the Aali original driver and not FFNx for now but when I played with Aali drivers I have some text box trouble in  battle of the game and in same times the characters became transparents...I thinked FFNx was based on Aali drivers...
 
Status
Not open for further replies.
Back
Top