Re: NFS 16
Posted: Thu Mar 31, 2016 4:36 am
[out]
Yet I tried Ultimate Unwrap3D Pro (x64) Demo with its specific SWBF 2015 plugin, and it will not load them, simply nothing happens, can you advise on what other software to use?Wobble wrote:Rename .mesh file to .meshSet. Any program that can import SWBF 2015 models can read these files.
Please could you give the plugin to import meshSet in Ultimate Unwrap3D Pro?Wobble wrote:Works for me.
Ok, cool.Wobble wrote:Works for me.
So you can give the plugin to import .meshSet?Wobble wrote:The filename of the chunk is listed right there in the importer dialog:mono24 wrote: Have I missed anything?
BA02572DE9658AF0A4531482B559928D.chunk
Search all your folders for it. There might be more than just one chunk directory.
I was aware of that the whole time, just needed a whole different python script to get all chunks, one time got a bit over 14.000 chunks, and second time got over 130.000 chunks then it loaded.Wobble wrote: The filename of the chunk is listed right there in the importer dialog:
BA02572DE9658AF0A4531482B559928D.chunk
Code: Select all
"ObjectFullPathName vehicles/player/car_bmw_m2_2016/car_bmw_m2_2016_Mesh"
"ObjectFullName car_bmw_m2_2016_Mesh"
"ObjectType 17"
"GUID_Count 6"
"First_Data_Block_Offset 1280"
"Mesh_Object_Count 17"
"FaceIndiceOffset 2008400"
"------------------------------"
"loop1"
"Submesh_1_VB_Size 52"
6
1571
"Submesh_1_Vert_Count 2669"
"Submesh_1_Face_Indice_Count 9274"
"var2 9274"
"Submesh_1_Material_Name M_Carpaint_Max"
"Position before verts 0L"
"Position before f-indice`s 2008400L"
"Position after f-indice`s 2026946L"
"------------------------------"
"loop2"
"Submesh_2_VB_Size 52"
6
1571
"Submesh_2_Vert_Count 2213"
"Submesh_2_Face_Indice_Count 4792"
"var2 14066"
"Submesh_2_Material_Name M_Chassis_Max"
"Position before verts 0L"
"Position before f-indice`s 2026946L"
"Position after f-indice`s 2036528L"
"------------------------------"
"loop3"
"Submesh_3_VB_Size 52"
6
1571
"Submesh_3_Vert_Count 1293"
"Submesh_3_Face_Indice_Count 3346"
"var2 17412"
"Submesh_3_Material_Name M_GlassOpaque_Mirror_Max"
"Position before verts 0L"
"Position before f-indice`s 2036528L"
"Position after f-indice`s 2043218L"
-- Error occurred in sub_m loop; filename: C:\Program Files\Autodesk\3ds Max 2012\Scripts\scriptbf4.ms; position: 12795; line: 391
-- Frame:
-- Vert_Tangents_array: #([3.48985e-005,0.00488281,3.15607e-005], [3.50177e-005,0.000106812,3.15905e-005], [3.50475e-005,0.000610352,3.15905e-005], [3.50475e-005,-0.00012207,3.15607e-005], [3.50475e-005,-0.000366211,3.15607e-005], [3.49283e-005,-3584,3.15309e-005], [3.50475e-005,-1.25,3.15309e-005], [3.50773e-005,-0.375,3.15309e-005], [3.49283e-005,-0.000183105,3.15309e-005], [3.50773e-005,-0.0234375,3.14713e-005], [3.50177e-005,0.000106812,3.15011e-005], [3.51071e-005,-0.000488281,3.14713e-005], [3.50177e-005,512,3.14415e-005], [3.05176e-005,256,3.12924e-005], [3.48985e-005,-768,3.13818e-005], [3.05176e-005,0.00292969,3.12924e-005], [3.45707e-005,-1.25,3.1352e-005], [3.05176e-005,0.03125,3.1352e-005], [3.05176e-005,512,3.10242e-005], [3.05176e-005,-6144,3.09944e-005], ...)
-- BoneIndexSameBool: true
-- layer: undefined
-- vertex_count: undefined
-- mesh1: undefined
-- bi_arr: undefined
-- bool_for_query_box: undefined
-- sub_m: 3
-- Vert_Normal_Array: #([0.673828,-2.56055,0], [0.642578,-2.57227,0], [0.641602,-2.54492,0], [0.608398,-2.5625,0], [0.641113,-2.53906,0], [0.60791,-2.55859,0], [0.610352,-2.5918,0], [0.597168,-2.59961,0], [0.584473,-2.58008,0], [0.583008,-2.57422,0], [0.591309,-2.60742,0], [0.587402,-2.61719,0], [0.565918,-2.59375,0], [0.563965,-2.58789,0], [0.580566,-2.625,0], [0.564453,-2.59766,0], [0.562012,-2.59375,0], [0.562012,-2.60938,0], [0.564453,-2.60938,0], [0.57959,-2.63086,0], ...)
-- vertIndex_array: undefined
-- parts_array: undefined
-- bnarr: undefined
-- Vert_Positions_array: #([11.1886,34.5501,-68.5123], [14.9766,34.4571,-67.6205], [15.0682,33.6608,-69.0996], [19.0684,33.5187,-67.8128], [15.0987,33.4129,-69.3051], [19.1102,33.2673,-68.0131], [18.8944,34.3404,-66.3362], [20.4632,34.2888,-65.6699], [21.9547,33.3762,-66.6137], [22.086,33.1175,-66.7755], [21.1435,34.3537,-65.2145], [21.6546,34.5096,-64.6172], [24.1451,33.228,-65.587], [24.3439,32.9754,-65.7361], [22.4586,34.5412,-64.0674], [24.3163,33.2953,-65.3503], [24.5497,33.0587,-65.4615], [24.5466,33.4683,-64.6414], [24.3111,33.6471,-64.6728], [22.5702,34.6444,-63.7993], ...)
-- VB_positions: #(769, 0, 1569, 12, 1570, 16, 1571, 20, 1572, 24, 5052, 28, 3074, 32, 3358, 36, 2256, 40, 8244, 48, ...)
-- vbi1: undefined
-- BoneCount_From_Order: 6
-- ba: 0
-- Vert_BiNormals_array: #([3.48985e-005,0.00488281,3.15607e-005], [3.50177e-005,0.000106812,3.15905e-005], [3.50475e-005,0.000610352,3.15905e-005], [3.50475e-005,-0.00012207,3.15607e-005], [3.50475e-005,-0.000366211,3.15607e-005], [3.49283e-005,-3584,3.15309e-005], [3.50475e-005,-1.25,3.15309e-005], [3.50773e-005,-0.375,3.15309e-005], [3.49283e-005,-0.000183105,3.15309e-005], [3.50773e-005,-0.0234375,3.14713e-005], [3.50177e-005,0.000106812,3.15011e-005], [3.51071e-005,-0.000488281,3.14713e-005], [3.50177e-005,512,3.14415e-005], [3.05176e-005,256,3.12924e-005], [3.48985e-005,-768,3.13818e-005], [3.05176e-005,0.00292969,3.12924e-005], [3.45707e-005,-1.25,3.1352e-005], [3.05176e-005,0.03125,3.1352e-005], [3.05176e-005,512,3.10242e-005], [3.05176e-005,-6144,3.09944e-005], ...)
-- face_array: #([2213,1,1], [2,3,4], [5,3,2], [4,3,5], [4,6,2], [7,4,8], [4,7,9], [6,4,4], [8,9,6], [9,10,9], [8,11,12], [9,11,13], [10,9,9], [12,13,10], [13,14,15], [13,12,16], [14,13,13], [15,16,14], [16,17,18], [17,16,18], ...)
-- vbi2: undefined
-- BoneOrderOffset: 1571
-- Submesh_Face_Indice_Count: 3346
-- vbi3: undefined
-- Vert_Diffuse_Array: #([0.101318,0.389648,0], [0.104248,0.389893,0], [0.104187,0.388184,0], [0.107361,0.388916,0], [0.104187,0.387939,0], [0.107361,0.388672,0], [0.107422,0.390869,0], [0.108704,0.391357,0], [0.10968,0.389893,0], [0.109802,0.389648,0], [0.109253,0.391602,0], [0.10968,0.392334,0], [0.111511,0.390625,0], [0.111633,0.390381,0], [0.110352,0.392822,0], [0.111633,0.390869,0], [0.111816,0.390869,0], [0.111877,0.391846,0], [0.111694,0.391846,0], [0.110474,0.393066,0], ...)
-- vbi4: undefined
-- bw_arr: undefined
-- Submesh_Mat_Name_Offset: 12797
-- var6: 1
-- skinMod: undefined
-- Error occurred during fileIn in #C:\Program Files\Autodesk\3ds Max 2012\Scripts\scriptbf4.ms; line number: 391
>> MAXScript FileIn Exception:
-- Runtime error: Vertex index in face out of range: [2213,1,1] <<
Textures are extracted now, hoping are the right ones, but cant see what they are, IrfanView, Photoshop, Noesis etc, cant preview them, and ctex_all.bat DDS_Converter wont fix them either.Wobble wrote:What textures? You haven't posted any of those. To get textures, I think this info is stored in ebx files. It's a bit of pain to get.
Search for something called Batch Itexture Converter. I think it handles iTextures. Converts them all to dds.
Error indeed, plus a whole lot of mess.kovalevich007 wrote:I modified BF4 script. Import only car parts.
When I import a car, there is an error. I do not know how to fix it.
Is it your script?kovalevich007 wrote:I modified BF4 script. Import only car parts.
When I import a car, there is an error. I do not know how to fix it.
I changed only these values:shakotay2 wrote: Is it your script?
(If 'no', read error messages carefully. )
"Runtime error: Vertex index in face out of range: [2213,1,1]"
Code: Select all
--First readouts from .mesh file
(
fseek mFile (80+Inc3) #seek_set
ObjectFullPathName_Position = readshort mFile #unsigned
fseek mFile ObjectFullPathName_Position #seek_set
print ("ObjectFullPathName " + (ObjectFullPathName = readstring mFile ))
fseek mFile (88+Inc3) #seek_set
ObjectFullName_Position = readshort mFile #unsigned
fseek mFile ObjectFullName_Position #seek_set
print ("ObjectFullName " + (ObjectFullName = readstring mFile))as string
fseek mFile 136 #seek_set
print ("ObjectType " + (ObjectType = readShort mFile #unsigned)as string)
fseek mFile 116 #seek_set
print ("GUID_Count " + (GUID_Count = readShort mFile #unsigned)as string)
fseek mFile 140 #seek_set
print ("First_Data_Block_Offset " + (First_Data_Block_Offset = readshort mFile #unsigned)as string)
fseek mFile 136 #seek_set
print ("Mesh_Object_Count " + (Mesh_Object_Count = readShort mFile #unsigned)as string)
fseek mFile 220 #seek_set
print ("FaceIndiceOffset "+ (FaceIndiceOffset = (readlong mFile))as string)
)
Code: Select all
for sub_m = 1 to mesh_object_count do
(
print "------------------------------"
print ("loop"+(Inc2)as string)
fseek mFile (First_Data_Block_Offset+Inc1+116) #seek_set
print (("Submesh_"+ (Inc2)as string) + "_VB_Size " + (VB_Size = readshort mFile #unsigned)as string)
--For each submesh in the file except the one that has VB size less than 20 ( usually means it`s useless)
if VB_Size > 20 then
(
VB_positions=#()
bone_Order_array=#()
fseek mFile (First_Data_Block_Offset+Inc1+61) #seek_set
print (BoneCount_From_Order = readbyte mFile #unsigned)
-- Read BoneOrderOffset And read Bone Order info into array
fseek mFile (First_Data_Block_Offset+Inc1+64) #seek_set
print (BoneOrderOffset = readshort mFile)
fseek mFile (BoneOrderOffset) #seek_set
for bn_ord = 1 to BoneCount_From_Order do
(
b = readshort mFile
append bone_Order_array b
)
fseek mFile (First_Data_Block_Offset+Inc1) #seek_set
fseek mFile 8 #seek_cur
Submesh_Mat_Name_Offset = readshort mFile
fseek mFile 26 #seek_cur
print (("Submesh_"+ (Inc2)as string) +"_Vert_Count "+(Submesh_Vert_Count = readlong mFile #unsigned)as string)
fseek mFile 12 #seek_cur
for zulu = 1 to 30 do
(
append VB_positions (readshort mFile)
)
fseek mFile (First_Data_Block_Offset+Inc1+220) #seek_set
print (("Submesh_"+ (Inc2)as string) + "_Face_Indice_Count " +(Submesh_Face_Indice_Count = readlong mFile #unsigned-var2)as string)
if Inc2 >=1 do (fseek mFile (First_Data_Block_Offset+Inc1+220) #seek_set
print ("var2 "+(var2= readlong mFile #unsigned)as string))
fseek mFile Submesh_Mat_Name_Offset #seek_set
print (("Submesh_" + (Inc2)as string) + "_Material_Name " +(Submesh_Material_Name = readstring mFile )as string)
Inc1 += 192
Inc2 += 1
Var1 = Submesh_Face_Indice_Count
if vert_start_pos ==0 then (fseek C_File vert_start_pos #seek_set) else fseek C_File last_vert_pos #seek_set
print ("Position before verts "+((ftell C_File)as string))