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

EA NHL Renderware Animation skin (X360)

Post questions about game models here, or help out others!
Post Reply
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

EA NHL Renderware Animation skin (X360)

Post by Beedy »

Hi,
I have been trying to figure out how to read bones in Noesis but I can't understand the logic. The file is skeleton bind pose animation skin which consists of pose translation values in 3x4 matrix. I found source for spore RWAnimationSkin which seems same but different endianness but is there anyone here who can help further?
https://github.com/emd4600/SporeModder- ... nSkin.java

offsets:
0x140 = boneCount?
0x150 = translation values in float
skeleton_bindpose_player.rx2.zip
Rx2 3d model files have bind bone indices and bind bone weights values for each vertex block but Noesis can't assign it if the model doesn't contain any skeleton.
You do not have the required permissions to view the files attached to this post.
grandshot
n00b
Posts: 13
Joined: Sat Mar 16, 2019 2:43 pm
Has thanked: 6 times
Been thanked: 4 times

Re: EA NHL Renderware Animation skin (X360)

Post by grandshot »

You can try this:
1. Decomposite bind pose matrices to position, scale, rotation.
2. Create model, make bones by hierarchy ids from model file and transforms of bones getted on step one.
3. Attach model to scel and applying weights.
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

Re: EA NHL Renderware Animation skin (X360)

Post by Beedy »

grandshot wrote: Wed Sep 07, 2022 9:41 pm You can try this:
1. Decomposite bind pose matrices to position, scale, rotation.
2. Create model, make bones by hierarchy ids from model file and transforms of bones getted on step one.
3. Attach model to scel and applying weights.
Thank you!
Do you have any Noesis examples for this?
Here is simple model+animation skin file and Noesis script to load the model.

Edit: BW and BI enums changed. BW = UBYTE4N and BI = UBYTE4
female_0_4.zip
You do not have the required permissions to view the files attached to this post.
Last edited by Beedy on Thu Sep 08, 2022 11:00 am, edited 1 time in total.
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4284
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1147 times
Been thanked: 2242 times

Re: EA NHL Renderware Animation skin (X360)

Post by shakotay2 »

@Beedy:
rx2t: #modified test file female_0_4 not real rx2 file
What did you modify?
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

Re: EA NHL Renderware Animation skin (X360)

Post by Beedy »

shakotay2 wrote: Thu Sep 08, 2022 10:59 am @Beedy:
rx2t: #modified test file female_0_4 not real rx2 file
What did you modify?
I removed some header data before but nothing for the data buffers. I thought the data is easier to read this way.
I edited datatypes in the script before:
Indices are UBYTE4
Weights are UBYTE4n (D3DDECLTYPE_UBYTE4N = 8, // Each of 4 bytes is normalized by dividing to 255.0)
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4284
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1147 times
Been thanked: 2242 times

Re: EA NHL Renderware Animation skin (X360)

Post by shakotay2 »

So then all we know about the skeleton is in the data before offset 0x670 in that female_0_4.rx2t?

That would mean there's 82 assumed bones (or 99?). With 16 bytes each containing transform data, I guess (3 big endian floats + DWORD 0).
But no bone names, no hierarchy. Strange.

Last year JimmyJ wrote here
JimmyJ wrote: Tue Jun 08, 2021 6:11 am
"but all characters have a same model, but ingame it was other geometry,"

Maybe there's only one basic skeleton for all, or something like this.
So you'll need to find that skeleton file (whit names and hierarchy).
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

Re: EA NHL Renderware Animation skin (X360)

Post by Beedy »

Here's the original one:
female_0_4.zip
There are only render ware filetypes listed in 0x50 to 0x150
Vertex descriptor in 0x150 to 0x1A0
Vertex data header 0x1A0 to 0x1D4
Face data header 0x1A0 to 0x200
Animation skin 0x200 ->
File list table 0x8dC to 0x9A0

I have explored all the file paths but none of skeleton files hasn't been found in the game.
You do not have the required permissions to view the files attached to this post.
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

Re: EA NHL Renderware Animation skin (X360)

Post by Beedy »

I found that crowd_fxo (female 0_4 is in crowd) files from fxo shaders folder which may be contains some interesting data:
shaders.zip
You do not have the required permissions to view the files attached to this post.
Beedy
advanced
Posts: 47
Joined: Mon Dec 05, 2016 11:12 am
Has thanked: 8 times
Been thanked: 14 times

Re: EA NHL Renderware Animation skin (X360)

Post by Beedy »

There are also cba animation files in the game:
Could the bones be there:
https://imgur.com/T6OvuHk
https://app.box.com/s/6lh3ebqysnoo3qqdxd9k27tle6bwhc1w
User avatar
shakotay2
MEGAVETERAN
MEGAVETERAN
Posts: 4284
Joined: Fri Apr 20, 2012 9:24 am
Location: Nexus, searching for Jim Kirk
Has thanked: 1147 times
Been thanked: 2242 times

Re: EA NHL Renderware Animation skin (X360)

Post by shakotay2 »

At least bone names! And a maybe hierarchy table. The rest is hard to track. I'd suggest giving it a structure searching for 05620E03 (or "GD.DATAl", less findings):
.
crowd_cba_3.png

Code: Select all

address 0xcb928:
57961  8151 26840  6476 38244 39486  5200 33375 rotation/translation?
47292   985 11953 40514 44372 42318 62232 60143 ???

address 0xcb9a4:
13303  7107 24379 13126 39384  4786 19317 37673 rotation/translation?
47292   985 11953 40514 44372 42318 62232 60143 ??? 

address 0xcba24:
53986 13536 40206 22851 43642 19751 63222 53108 rotation/translation?
47292   985 11953 40514 44372 42318 62232 60143 ???
You do not have the required permissions to view the files attached to this post.
Tuts: a) Bigchillghost, viewtopic.php?f=29&t=17889
b) Extracting simple models: http://forum.xentax.com/viewtopic.php?f=29&t=10894
"Quoting the whole thing. Would u ever stop this nonsense?"
grandshot
n00b
Posts: 13
Joined: Sat Mar 16, 2019 2:43 pm
Has thanked: 6 times
Been thanked: 4 times

Re: EA NHL Renderware Animation skin (X360)

Post by grandshot »

The crowd.cba file definitely is chunk package with some meta data. I started to write the template for 010 editor for easy parsing.
graf_renderware4_cba.zip
Easy, right :mrgreen:
Structure of GD.DATAl chunks is nasty. Sort out of that would be not easy.
You do not have the required permissions to view the files attached to this post.
Post Reply