[REL] Renderware file converter - Tools - GTAForums Jump to content

[REL] Renderware file converter


The Hero

Recommended Posts

[link to older programs removed]

 

I've written lots of RW-related code over the years and programs that convert various file formats.

Here are some binaries: http://aap.papnet.eu/gta/utils/librw_bin/

and here is the source https://github.com/aap/librw https://github.com/aap/librwgta

 

I usually don't remember what I changed since the last versions, so just let it surprise you.

Also do note that I wrote these tools for my personal use, don't expect them to be perfect in every regard. They do what I needed them to.

 

convdff:

The version of the file written will be the same as the input by default (unless you set the version explicitly with the -v switch, see this for information on RW versions: http://www.gtamodding.com/wiki/RenderWare).

Some terminology:

- Instancing means converting the platform independent geometry data into a platform specific format that can be saved to a dff file (these dff files are called pre-instanced because instancing no longer happens at runtime). This is done in the PS2 and mobile games starting with VC and all xbox games. d3d8 and d3d9 pre-instanced geometry is not used by the games by default but the game should be able to read such dffs.

 

- Uninstancing is something the original RenderWare engine cannot do, but which librw can: it means converting the platform specific geometry back into a platform independent format again.

The -u and -i switches tell convdff to uninstance or instance a dff (note that not everything has been tested an implemented yet, expect bugs or problems).

 

Even non-instanced can be platform-specific (the -o switch sets the output platform, d3d8 being the default). Most noticeably ADC optimized geometry on the PS2 (to improve tristripping) and custom vertex formats on the xbox.

 

Example: to convert a ps2 file into the platform independent format and write it as version 3.3.0.2 use it as

 

convdff.exe -u -v 33002 input.dff output.dff
To pre-instance a file into xbox format:

 

convdff.exe -i -o xbox intput.dff output.dff
I will implement more features in the future but the basic conversions should be working. I don't guarantee all conversions will work, i can't test everything. Please report bugs or unexpected behaviour.

 

Notes:

- files with multiple clumps are not supported well, to split a multi-clump file, use the -m switch

- instancing and uninstancing of SA mobile dffs is not (completely?) implemented yet.

 

convtxd:

This thing converts, extracts and creates txds.

Check the usage for how to use it.

 

lcsconv, vcsconv:

These convert files from LCS and VCS respectively (dff, txd, mdl, chk, whatever, but no levels yet). VCS peds don't work yet because the hierarchy is f*cked and has to be reconstructed.

Edited by The Hero
Link to comment
Share on other sites

Igor Bogdanoff

Count this as not mentioned bug?

2yw8owp.jpg

 

rLDswx2.png1626894873381.gifyardies-in-pip-2022.png

Link to comment
Share on other sites

The glasses bug cannot be fixed in the DFF or TXD I think. This has to do with the alpha test and draw order.

Link to comment
Share on other sites

Holy damn!

We need an Android GTA 3 Peds to be importable in 3ds aswell. Hope you will do it too! :)

Link to comment
Share on other sites

You can convert mobile dffs already. Have you tried if peds work?

Link to comment
Share on other sites

I tried to convert mobile DFF, but no matter what I do it stays white and won't load its texture :(

How do I find out which texture it's looking for?

Edited by Blackbird88
Link to comment
Share on other sites

Very helpful tools :D

 

Here's a batch code for txdex. It creates folders for every txd and then it puts all the textures extracted from each txd in those folders:

for %%i in (*.txd*) do txdex %%i & if /i not "%%~nxi"=="%~nx0" md "%%~ni" 2>nul & move "*.tga*" "%%~ni" >nul
  • Like 4
Link to comment
Share on other sites

Count this as not mentioned bug?

2yw8owp.jpg

 

not a bug, vice city on the ps2 lacks backface culling I believe so that model would look fine under normal circumstances

 

also I'm glad to see that these tools have finally gotten a big release, I've been using them for the past year and they're just awesome! :^:

Edited by Mr. Jago
Link to comment
Share on other sites

I tried to convert mobile DFF, but no matter what I do it stays white and won't load its texture :(

How do I find out which texture it's looking for?

 

You can use rwanalyze, I think it has an option for checking textures.

Link to comment
Share on other sites

when i convert the hydra model, the window/glass is missing, i wonder why :/

 

EDIT: same goes for Rustler and Cropduster too

EDIT2: all three glass model are using the "vehicleenvmap128" reflection texture, maybe it's related?

Edited by Surya926
Link to comment
Share on other sites

That's weird...Is the geometry really missing? Have you checked in 3ds max or so?

Link to comment
Share on other sites

no, in 3ds max the geometry is show up but in game isn't

Link to comment
Share on other sites

I will take a look at it later.

Link to comment
Share on other sites

 

I tried to convert mobile DFF, but no matter what I do it stays white and won't load its texture :(

How do I find out which texture it's looking for?

You can use rwanalyze, I think it has an option for checking textures.

 

Yeah that shows the texture name, but not the name of the TXD file.

  • Like 1
Link to comment
Share on other sites

The DFF has no info which TXD should be used with it. What DFF are you talking about here?

Link to comment
Share on other sites

I guess, the dff either uses the txd associated with it in IDE file or generic txd file. You're gotta look for that "kmb_dumbbell_l" in PS2 IDE map files and see what txd is associated with it. That's how I remember, I may be wrong though.

  • Like 3
Link to comment
Share on other sites

- User interface

unix has no GUI

Link to comment
Share on other sites

New version:

- All DFF chunks can be read and written now (although some of them are not parsed and just copied 1:1 into the output file)

- better command line argument handling, the flags now come *before* the files like they should

- other fixes and clean ups

 

Todo:

- find out why the hydra's glass doesn't appear (and fix it)

- fix peds

- rewrite the whole thing, it's gotten kinda ugly

Edited by The Hero
Link to comment
Share on other sites

New version, added a feature:

dffconv got an -m switch that can be used to fix the specular and environment information according to the PS2 pipeline that's being used. This removes unwanted specular reflections (especially on wheels).

 

EDIT: Found out why the hydra's glass isn't showing. It's a problem with the alpha test again, this needs a fix in ps2refl. I will fix it and explain what happened in that other thread.

Edited by The Hero
  • Like 2
Link to comment
Share on other sites

If you manage to implement converting of mobile cutscene characters with no issues then you're really The Hero

 

ba dum tss

 

Edited by Blackbird88
Link to comment
Share on other sites

Hm, should be easy (I hope!). I will work on this tomorrow.

Edited by The Hero
  • Like 1
Link to comment
Share on other sites

can RWConv convert the buildings properly now?

Link to comment
Share on other sites

Could someone explain to me what the problem with peds is? Which file from which version did you convert? I don't want to find these problems myself.

Link to comment
Share on other sites

BMWSauberF1.08

bones aren't named correctly,for example LClavicle is named Dummy4,etc

 

though this can be easily fixed with rwanalyze by renaming correctly the frames

Edited by Aztecas_5
Link to comment
Share on other sites

I noticed there is still work to do on the OpenGL (used by the mobile games) and Xbox DFFs. Not sure when I'll get to this. I really hope the frame names can be fixed automatically, but I'm not quite sure. I want to be able to read the format first.

 

Oh, and I forgot I added support for multi clump DFFs a while ago. Aztecas_5, didn't you have problems with these?

Edited by The Hero
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • 0 User Currently Viewing
    0 members, 0 Anonymous, 0 Guests

×
  • Create New...

Important Information

By using GTAForums.com, you agree to our Terms of Use and Privacy Policy.