Guida struttura file .prm
Inviato: dom 28 lug 2013, 10:38
Guida della struttura dei file .prm
Bene ho voluto scrivere questa piccola guida per tutti quelli che vogliono sapere come sono strutturati o come si
può strutturare un file .prm, adesso prendiamo come esempio il file Body.prm (è una piramide), se noi apriamo il
file troveremo tanti byte, che per ora sono senza senso, ma incominciamo a dare un senso a tutti i byte.
Apriamo il file in questione:
08000F00000000000200000001000000
FFFFFF00FFFFFF00FFFFFF00FFFFFF00
E5A6DF3E940EBFBF000EE0B8940EBFBF
001AE0B8582187BF0000000000000000
000000000500030004000000FFFFFF00
FFFFFF00FFFFFF00FFFFFF005F7EF6BF
D253603F5F7EF6BF00E91E3B2691BEBF
D253603F000000000000000000000000
0100000006000000FFFFFF00FFFFFF00
FFFFFF00FFFFFF00001AE0B8582187BF
000EE0B8940EBFBFEEC2DFBE940EBFBF
00000000000000000000000007000300
05000000FFFFFF00FFFFFF00FFFFFF00
FFFFFF00CE3517C0D253603F5F7EF6BF
00E91E3B5F7EF6BFD253603F00000000
00000000000000000600000008000000
FFFFFF00FFFFFF00FFFFFF00FFFFFF00
EEC2DFBE940EBFBF000EE0B8940EBFBF
000AE0B8CEFBF6BF0000000000000000
000000000B0009000A000000FFFFFF00
FFFFFF00FFFFFF00FFFFFF00E07B863E
C586033FE07B863E2871753F3086203D
2871753F000000000000000000000000
0800000002000000FFFFFF00FFFFFF00
FFFFFF00FFFFFF00000AE0B8CEFBF6BF
000EE0B8940EBFBFE5A6DF3E940EBFBF
0000000000000000000000000E000C00
0D000000FFFFFF00FFFFFF00FFFFFF00
FFFFFF00F4E6F83EC5B7753FE07B863E
AE4C033FE07B863EC5B7753F00000000
00000000F00A2F3B68F94FBB00B664BD
0FF5D0C49706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B42F00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B4263BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE4AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B424AD02E41
68F94FBBC8B664BDB52FD1BE9706B044
37499B42D0072F3B68F94FBB0CAA2FC1
2FF8D0C49706B044F355D03EF00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B424AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03EF00A2F3BD6CBAEC100B664BD
0FF5D0C42934513EFF499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03E63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4263
notiamo subito una cosa familiare il file incomincia con 2 byte 0800 seguiti da altri due byte 0F00, bene la prima
serie di byte non è altro che il numeo di poligoni o facce, mentre la seconda è il numero di vertici quindi calcolatrice alla mano 0800=8 poligoni e 0F00 = 15 vertici, troviamo 4 byte a zero ( questi byte tralasciamoli, o meglio sarebbe porli sempre a zero) subito dopo troviamo 0200;0000;0100 cosa vorranno dire? Sono il numero dei
vertici che compongono il poligono 0 (V2,V0,V1) bene adesso troviamo 12 byte FF:FF:FF:00 per 3 volte cosa sarà?
Niente altro che il colore B=FF=255:G=FF=255:R=FF=255 Alfa=0 questi 4 byte sono ripetuti 3 volte, per i tre vertici (V2,V0,V1) che compongono il pioligono 0 subito dopo troviamo altri 4 byte identici ai precedenti FF:FF:FF:0
(Re-Volt non li usa anche se li ponete tutti e 4 a zero non succede niente è il colore del poligono).
Adesso arriva il bello ora troviamo 24 byte che non sono altro che le cordinate UV della mappatura del poligono 0 composto dai 3 vertici V2,V0,V1 quindi troviamo V2 cordinata U=E5A6DF3E=0.43682018 essendo un valore di tipo float con virgola, poi troviamo V2 V=940EBFBF=-1.4926324 e così via sia per V0.U,V0.V,V1.U,V1.V adesso troviamo 8 byte a zero è poi si ricomincia per per i rimanenti 7 poligoni.
Adesso ci troviamo in questo punto del file con altri byte che vorranno dire??
F00A2F3B68F94FBB00B664BD
0FF5D0C49706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B42F00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B4263BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE4AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B424AD02E41
68F94FBBC8B664BDB52FD1BE9706B044
37499B42D0072F3B68F94FBB0CAA2FC1
2FF8D0C49706B044F355D03EF00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B424AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03EF00A2F3BD6CBAEC100B664BD
0FF5D0C42934513EFF499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03E63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4263
Bene sveliamo l'arcadipo F00A2F3B,68F94FBB,00B664BD questi 12 byte a gruppi di 4 non sono altro che le cordinate X,Y,Z dei vertici chiaramente in sequenza dal vertice 0 al vertice 15, seguiti da altri 12 byte dalle cordinate
per i riflessi delle macchine
Bene ho voluto scrivere questa piccola guida per tutti quelli che vogliono sapere come sono strutturati o come si
può strutturare un file .prm, adesso prendiamo come esempio il file Body.prm (è una piramide), se noi apriamo il
file troveremo tanti byte, che per ora sono senza senso, ma incominciamo a dare un senso a tutti i byte.
Apriamo il file in questione:
08000F00000000000200000001000000
FFFFFF00FFFFFF00FFFFFF00FFFFFF00
E5A6DF3E940EBFBF000EE0B8940EBFBF
001AE0B8582187BF0000000000000000
000000000500030004000000FFFFFF00
FFFFFF00FFFFFF00FFFFFF005F7EF6BF
D253603F5F7EF6BF00E91E3B2691BEBF
D253603F000000000000000000000000
0100000006000000FFFFFF00FFFFFF00
FFFFFF00FFFFFF00001AE0B8582187BF
000EE0B8940EBFBFEEC2DFBE940EBFBF
00000000000000000000000007000300
05000000FFFFFF00FFFFFF00FFFFFF00
FFFFFF00CE3517C0D253603F5F7EF6BF
00E91E3B5F7EF6BFD253603F00000000
00000000000000000600000008000000
FFFFFF00FFFFFF00FFFFFF00FFFFFF00
EEC2DFBE940EBFBF000EE0B8940EBFBF
000AE0B8CEFBF6BF0000000000000000
000000000B0009000A000000FFFFFF00
FFFFFF00FFFFFF00FFFFFF00E07B863E
C586033FE07B863E2871753F3086203D
2871753F000000000000000000000000
0800000002000000FFFFFF00FFFFFF00
FFFFFF00FFFFFF00000AE0B8CEFBF6BF
000EE0B8940EBFBFE5A6DF3E940EBFBF
0000000000000000000000000E000C00
0D000000FFFFFF00FFFFFF00FFFFFF00
FFFFFF00F4E6F83EC5B7753FE07B863E
AE4C033FE07B863EC5B7753F00000000
00000000F00A2F3B68F94FBB00B664BD
0FF5D0C49706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B42F00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B4263BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE4AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B424AD02E41
68F94FBBC8B664BDB52FD1BE9706B044
37499B42D0072F3B68F94FBB0CAA2FC1
2FF8D0C49706B044F355D03EF00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B424AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03EF00A2F3BD6CBAEC100B664BD
0FF5D0C42934513EFF499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03E63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4263
notiamo subito una cosa familiare il file incomincia con 2 byte 0800 seguiti da altri due byte 0F00, bene la prima
serie di byte non è altro che il numeo di poligoni o facce, mentre la seconda è il numero di vertici quindi calcolatrice alla mano 0800=8 poligoni e 0F00 = 15 vertici, troviamo 4 byte a zero ( questi byte tralasciamoli, o meglio sarebbe porli sempre a zero) subito dopo troviamo 0200;0000;0100 cosa vorranno dire? Sono il numero dei
vertici che compongono il poligono 0 (V2,V0,V1) bene adesso troviamo 12 byte FF:FF:FF:00 per 3 volte cosa sarà?
Niente altro che il colore B=FF=255:G=FF=255:R=FF=255 Alfa=0 questi 4 byte sono ripetuti 3 volte, per i tre vertici (V2,V0,V1) che compongono il pioligono 0 subito dopo troviamo altri 4 byte identici ai precedenti FF:FF:FF:0
(Re-Volt non li usa anche se li ponete tutti e 4 a zero non succede niente è il colore del poligono).
Adesso arriva il bello ora troviamo 24 byte che non sono altro che le cordinate UV della mappatura del poligono 0 composto dai 3 vertici V2,V0,V1 quindi troviamo V2 cordinata U=E5A6DF3E=0.43682018 essendo un valore di tipo float con virgola, poi troviamo V2 V=940EBFBF=-1.4926324 e così via sia per V0.U,V0.V,V1.U,V1.V adesso troviamo 8 byte a zero è poi si ricomincia per per i rimanenti 7 poligoni.
Adesso ci troviamo in questo punto del file con altri byte che vorranno dire??
F00A2F3B68F94FBB00B664BD
0FF5D0C49706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B42F00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B4263BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4250142F3B
68F94FBBA1E02D41AFEBD0C49706B044
5E1FD2BE4AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B424AD02E41
68F94FBBC8B664BDB52FD1BE9706B044
37499B42D0072F3B68F94FBB0CAA2FC1
2FF8D0C49706B044F355D03EF00A2F3B
D6CBAEC100B664BD0FF5D0C42934513E
FF499B424AD02E4168F94FBBC8B664BD
B52FD1BE9706B04437499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03EF00A2F3BD6CBAEC100B664BD
0FF5D0C42934513EFF499B42D0072F3B
68F94FBB0CAA2FC12FF8D0C49706B044
F355D03E63BA2EC168F94FBB00B664BD
9C45D13E9706B044FF499B4263
Bene sveliamo l'arcadipo F00A2F3B,68F94FBB,00B664BD questi 12 byte a gruppi di 4 non sono altro che le cordinate X,Y,Z dei vertici chiaramente in sequenza dal vertice 0 al vertice 15, seguiti da altri 12 byte dalle cordinate
per i riflessi delle macchine