Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Deus EX: Mankind Divided .archive

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
Vindis
advanced
Posts: 44
Joined: Fri Apr 08, 2011 9:31 pm
Has thanked: 16 times
Been thanked: 41 times

Re: Deus EX: Mankind Divided .archive

Post by Vindis »

With your help, my obj converter starts getting into shape :wink:

Image
kalrua
advanced
Posts: 44
Joined: Thu Nov 22, 2007 10:29 pm
Has thanked: 4 times
Been thanked: 2 times

Re: Deus EX: Mankind Divided .archive

Post by kalrua »

[quote="volfin"]I suspect either the Trenchoat is in another file (since you can change trenchcoats from settings), or because it's flexible cloth, is generated on the GPU.
[/quote]

You are right
Jensen's Trenchoat:[quote]17230170369043947 003D36BFA8442DEB [assembly:/characters/resources/main_characters/jensen/jensen_trench.apx].pc_apex[/quote]

Jensen's hairs:[quote]59216673450565904 00D2614031CD2110 [assembly:/characters/resources/main_characters/jensen/jensen.hair].pc_hair[/quote]
User avatar
aspadm
advanced
Posts: 52
Joined: Wed Nov 25, 2015 8:43 pm
Has thanked: 10 times
Been thanked: 34 times

Re: Deus EX: Mankind Divided .archive

Post by aspadm »

volfin wrote:as far as I know, there's no need to update the texture tool. it works with all valid textures. If that's not true, I need more information.

As for the number stuff, I have no idea what all that is.
"New" format (.bin/.tex) have a 24 bytes header; first 4 bytes - ascii TXET (54 58 45 54), so you can simple add checking and trimming bytes - all other data is unchanged

UPD: here full example dataset of tex files: there are 11 subformats (2 bytes with offset 42 or short Format in volfin script). Link: https://yadi.sk/d/9zcdSJR53M6KKi

UPD 2: looks like DEMD .dat importer can't read UV coordinates from .linkedprim files; and there are some files, that obviously 3d models (collisions, COLA signature), but can't be opened + examples of .apx (clothes) and .hair files. Link: https://yadi.sk/d/n11L2IQk3M6K5e

UPD 3: small teaser for non-console peoples :) (I must do some enchantments before upload program)
Image
Last edited by aspadm on Thu Aug 17, 2017 12:06 pm, edited 1 time in total.
rithkhmer
ultra-n00b
Posts: 3
Joined: Mon Aug 07, 2017 11:20 pm
Been thanked: 1 time

Re: Deus EX: Mankind Divided .archive

Post by rithkhmer »

thank you so much for your sharing this nice article,
I really like to reading your blog !

ดูหนังออนไลน์
JimmyJ
beginner
Posts: 32
Joined: Wed Dec 21, 2011 1:54 am
Has thanked: 12 times
Been thanked: 4 times

Re: Deus EX: Mankind Divided .archive

Post by JimmyJ »

I dont know why, but blender's importer is not working... I used Sir kane tool, and quickbms for extract, but blender still give me messege: "doesent seem to be a model"
S0UZ
advanced
Posts: 40
Joined: Tue Apr 05, 2011 11:46 am
Has thanked: 7 times
Been thanked: 1 time

Re: Deus EX: Mankind Divided .archive

Post by S0UZ »

aspadm wrote:
volfin wrote:as far as I know, there's no need to update the texture tool. it works with all valid textures. If that's not true, I need more information.

As for the number stuff, I have no idea what all that is.
"New" format (.bin/.tex) have a 24 bytes header; first 4 bytes - ascii TXET (54 58 45 54), so you can simple add checking and trimming bytes - all other data is unchanged

UPD: here full example dataset of tex files: there are 11 subformats (2 bytes with offset 42 or short Format in volfin script). Link: https://yadi.sk/d/9zcdSJR53M6KKi

UPD 2: looks like DEMD .dat importer can't read UV coordinates from .linkedprim files; and there are some files, that obviously 3d models (collisions, COLA signature), but can't be opened + examples of .apx (clothes) and .hair files. Link: https://yadi.sk/d/n11L2IQk3M6K5e

UPD 3: small teaser for non-console peoples :) (I must do some enchantments before upload program)
Image
Hi may i have this tool???
User avatar
aspadm
advanced
Posts: 52
Joined: Wed Nov 25, 2015 8:43 pm
Has thanked: 10 times
Been thanked: 34 times

Re: Deus EX: Mankind Divided .archive

Post by aspadm »

Hey guys! I did it!
This is the DEMD database - GUI tool for extracting, view and exporting game database.
Big thanks Volfin, Sir Kane for their tools :) And thanks for all peoples from this topic

New version below

If you find a bug or need sources, please, PM-me.

P.S. I rewrited tex2dds/vap_converter from scratch, but four formats from 11 supports uncorrectly.
P.P.S. This tool contains portable Blender 3d, Volfin's model converter, Sir Kane's archives extractor, TXET2DDS tools (textures) and other components
P.P.P.S. You can convert audio files (without listening in app)
Last edited by aspadm on Sun Sep 17, 2017 11:52 am, edited 1 time in total.
S0UZ
advanced
Posts: 40
Joined: Tue Apr 05, 2011 11:46 am
Has thanked: 7 times
Been thanked: 1 time

Re: Deus EX: Mankind Divided .archive

Post by S0UZ »

aspadm wrote:Hey guys! I did it!
This is the DEMD database - GUI tool for extracting, view and exporting game database.
Big thanks Volfin, Sir Kane for their tools :) And thanks for all peoples from this topic

Here the link - https://yadi.sk/d/di_bL7573MW5hg

If you find a bug or need sources, please, PM-me.

P.S. I rewrited tex2dds/vap_converter from scratch, but four formats from 11 supports uncorrectly.
P.P.S. This tool contains portable Blender 3d, Volfin's model converter, Sir Kane's archives extractor, TXET2DDS tools (textures) and other components
P.P.P.S. You can convert audio files (without listening in app)
Thanks very much! Love it!!!!
User avatar
aspadm
advanced
Posts: 52
Joined: Wed Nov 25, 2015 8:43 pm
Has thanked: 10 times
Been thanked: 34 times

Re: Deus EX: Mankind Divided .archive

Post by aspadm »

And there are new version of DEMD database: https://yadi.sk/d/qUxdTmJa3MxHEs
I strongly reccomend to delete old program folder and unzip this new one - some libs were changed.

What's new?
1. Fix problems with OpenGL shader
2. Add .apx file support (only clothes) - including UV coords
3. Other fixes

If you have some issues or you need sources - contact me.

P.S. Clothes can be exported to STL/OBJ and APB format (Nvidia APEX 1.3.x)
User avatar
HeliosAI
mega-veteran
mega-veteran
Posts: 166
Joined: Wed Nov 17, 2010 2:57 pm
Has thanked: 151 times
Been thanked: 62 times

Re: Deus EX: Mankind Divided .archive

Post by HeliosAI »

Thanks so much for the tool! It works amazing :)
Is there any chance to support the hair curves too?
User avatar
aspadm
advanced
Posts: 52
Joined: Wed Nov 25, 2015 8:43 pm
Has thanked: 10 times
Been thanked: 34 times

Re: Deus EX: Mankind Divided .archive

Post by aspadm »

o0Crofty0o wrote:Thanks so much for the tool! It works amazing :)
Is there any chance to support the hair curves too?
Yeah, I'm trying to disassemble the format of hair files. But it can take a long time, as I am very busy now.
If somebody know anything about structure of this files, please, tell me. My thought that is nvidia hairworks, but I still don't read specifications.
User avatar
HeliosAI
mega-veteran
mega-veteran
Posts: 166
Joined: Wed Nov 17, 2010 2:57 pm
Has thanked: 151 times
Been thanked: 62 times

Re: Deus EX: Mankind Divided .archive

Post by HeliosAI »

aspadm wrote:
o0Crofty0o wrote:Thanks so much for the tool! It works amazing :)
Is there any chance to support the hair curves too?
Yeah, I'm trying to disassemble the format of hair files. But it can take a long time, as I am very busy now.
If somebody know anything about structure of this files, please, tell me. My thought that is nvidia hairworks, but I still don't read specifications.
Take your time, it's just nice to know someone has interest doing it at all. :)

Deus Ex uses PureHair from AMD, it is also known as TressFX 3.0. There's a dev presentation on its useage in Deus Ex but not much info on the file structure: http://cdn.wccftech.com/wp-content/uplo ... FX-3-0.pdf

The Tomb Raider reboot from 2013 used TressFX version 1 and the format was a lot simpler. I don't know if it is of any help for comparison to the newer version but here is the TressFX file for TR: https://yadi.sk/d/Yu0dBevj3MzdwQ
There's also this presentation on it: https://de.slideshare.net/WolfgangEngel ... ider-final but the specifications changed (16 vertices lenght for all strands doesn't apply to newer versions anymore i think)
A friend of mine managed to get bezier curves imported into Blender from that file. It's possible to generate meshes from those:
Image

Additionally AMD released this: https://github.com/GPUOpen-Effects/TressFX but it is version 4 already and possibly different to Deus Ex aswell.
TRDaz
mega-veteran
mega-veteran
Posts: 215
Joined: Sat Sep 24, 2011 7:06 pm
Has thanked: 78 times
Been thanked: 32 times

Re: Deus EX: Mankind Divided .archive

Post by TRDaz »

The way those curves were imported was by manually copying and pasting the vertices point locations into a script like below (this script has around 1500 of these, and here I'm only showing two, there is a lot of strands/curves to import and I'm sure Deus Ex will have more). This might be able to give you an idea on how the curves work.

Code: Select all

import bpy  
from mathutils import Vector 
  
w = 1 # weight  
listOfVectors = [Vector((-6.635117,1.653948,-3.323807)),Vector((-6.626816,2.027992,-3.724991)),Vector((-6.613327,2.308923,-4.204987)),Vector((-6.594235,2.576662,-4.681885)),
        Vector((-6.558660,2.786073,-5.189697)),Vector((-6.508052,2.973230,-5.703522)),Vector((-6.424452,3.114432,-6.228149)),Vector((-6.320928,3.202100,-6.760651)),
        Vector((-6.203422,3.178222,-7.299698)),Vector((-6.103159,3.000197,-7.811737)),Vector((-6.021204,2.710953,-8.272842)),Vector((-5.938305,2.379366,-8.702637)),
        Vector((-5.836701,2.048806,-9.129242)),Vector((-5.742608,1.708384,-9.550400)),Vector((-5.702582,1.324819,-9.941681)),Vector((-5.683345,0.926187,-10.320999))]
  
def MakePolyLine(objname, curvename, cList):  
    curvedata = bpy.data.curves.new(name=curvename, type='CURVE')  
    curvedata.dimensions = '3D'  
  
    objectdata = bpy.data.objects.new(objname, curvedata)  
    objectdata.location = (0,0,0) #object origin  
    bpy.context.scene.objects.link(objectdata)  
  
    polyline = curvedata.splines.new('NURBS')  
    polyline.points.add(len(cList)-1)  
    for num in range(len(cList)):  
        x, y, z = cList[num]  
        polyline.points[num].co = (x, y, z, w)  
  
    polyline.order_u = len(polyline.points)-1
    polyline.use_endpoint_u = True
    
  
MakePolyLine("NameOfMyCurveObject", "NameOfMyCurve", listOfVectors)

w = 1 # weight  
listOfVectors = [Vector((-6.033971,2.917804,-4.779190)),Vector((-6.371659,3.087809,-4.774216)),Vector((-6.026512,3.690067,-5.414322)),Vector((-5.878336,3.830332,-5.717117)),
        Vector((-5.661849,4.022390,-6.160217)),Vector((-5.475732,4.103107,-6.612518)),Vector((-5.301621,4.134255,-7.082443)),Vector((-5.154976,4.085114,-7.561050)),
        Vector((-5.069383,3.928407,-8.029999)),Vector((-5.054573,3.703187,-8.477707)),Vector((-5.080958,3.469792,-8.920242)),Vector((-5.107432,3.226686,-9.357407)),
        Vector((-5.114311,2.957879,-9.780441)),Vector((-5.103921,2.670656,-10.190857)),Vector((-5.081414,2.371468,-10.592010)),Vector((-5.053456,2.066906,-10.989090))]
  
def MakePolyLine(objname, curvename, cList):  
    curvedata = bpy.data.curves.new(name=curvename, type='CURVE')  
    curvedata.dimensions = '3D'  
  
    objectdata = bpy.data.objects.new(objname, curvedata)  
    objectdata.location = (0,0,0) #object origin  
    bpy.context.scene.objects.link(objectdata)  
  
    polyline = curvedata.splines.new('NURBS')  
    polyline.points.add(len(cList)-1)  
    for num in range(len(cList)):  
        x, y, z = cList[num]  
        polyline.points[num].co = (x, y, z, w)  
  
    polyline.order_u = len(polyline.points)-1
    polyline.use_endpoint_u = True
    
  
MakePolyLine("NameOfMyCurveObject", "NameOfMyCurve", listOfVectors)
User avatar
aspadm
advanced
Posts: 52
Joined: Wed Nov 25, 2015 8:43 pm
Has thanked: 10 times
Been thanked: 34 times

Re: Deus EX: Mankind Divided .archive

Post by aspadm »

Hmm, this looks very useful ;) Big thanks
Looks like python script has a doubled piece of code - might it be an error? Few days later, I'll try to do something with it.
Anyway, I have plans to make Adam's cosplay, so I'll try hard to write hair converter :)

UPD: in sources of TressFX-3.1.1 I found description of .sdkmesh file format. And examples of this files very similar to .hair files from DEMD
Last edited by aspadm on Mon Sep 18, 2017 11:01 pm, edited 1 time in total.
TRDaz
mega-veteran
mega-veteran
Posts: 215
Joined: Sat Sep 24, 2011 7:06 pm
Has thanked: 78 times
Been thanked: 32 times

Re: Deus EX: Mankind Divided .archive

Post by TRDaz »

Yeah the code is copied and pasted multiple times, with the point locations added in differently each time, I believe it was the only way to make the script work since I haven't worked with scripts like that before.
Post Reply