der_ton wrote: |
Nice job! |
der_ton wrote: |
From one single test I noticed there is something wrong with the model's orientation, but apart from that it worked. |
der_ton wrote: |
I took a look at the code, and some of that looks familiar, but that's probably because some stuff has to be done the same way. But if you took some inspiration from my exporter, credits would be nice |
Quote: |
You have a function that converts a left handed matrix to a right handed one. |
bozo wrote: |
i think, when you create bones via mirror them, than this mirrored bones have this left-handed matrixes and the code fix this some times ago i only made a quick test of this and it seems to do the work properly |
Quote: |
Take care when mixing rotation derived from these matrices and rotation used in rotation-related functions or from rotation properties. |
der_ton wrote: |
Berserker, I'm totally ok with all of that. ![]() |
der_ton wrote: |
The thing with the mirrored bones matrices resulting in lefthanded bones came up with a model that 7318 did once. If you scale a bone negatively, then the transform matrix becomes lefthanded.
That is also related to the fact that the "transform" property is not necessarily the same as the combined "pos * quat as matrix". |
der_ton wrote: |
I think your way of creating submeshes is to export multiple mesh objects from 3dmax. |
der_ton wrote: |
I'll think about a custom print function for floats. I don't know of a way to tell Maxscript to use better precision for the built-in print float. |
Code: |
cuts {
96 148 198 290 324 } camera { ( 1781.0610351563 293.2318115234 70.8310394287 ) ( 0.09791141 -0.0939290896 -0.714956522 ) 72.1649246216 .... } |
der_ton wrote: |
Actually, the only reason why that's in there is because the engine has to know when NOT to interpolate between two keyframes. |
Code: |
fn printfloat flt =
--maxscript doesn't provide a way to format float output that I know of. It seems that Doom3 does not understand the <x>e<y> notation of floats --if you plan to use this in your scripts, note that this function doesn't check against a large number passed in ( --if (abs flt)>10.0 then return flt -- this could be used to gain some speed. --else local numdigits = 10 ( str = "" if flt<0 then str += "-" flt2 = abs flt str += ((flt2 as integer) as string) flt2 -= (flt2 as integer) str +="." for i=1 to numdigits do ( flt2 *=10.0 str += ((flt2 as integer) as string) flt2 -= (flt2 as integer) ) return str ) ) |
der_ton wrote: |
Feel free to use if you think it is necessary. |
der_ton wrote: |
BTW, in my new version of the scripts, I added the function for reading the animationRange interval to preset the input values in the GUI, I've seen that your script does that and it's ofcourse a useful detail. ![]() |
Quote: |
.... but it can have several textures via multi/submaterials (but I might change that). |
Aphax wrote: |
I'm sorry if this is a really bad suggestion and you guys rather work on your own thing, but I figured having two geniusses working on the same tool would make it even better ![]() |
Code: |
getSaveFileName caption:"Save MD5Camera" types:"Doom III MD5Camera (*.md5camera)|*.md5camera" |
der_ton wrote: |
Nice job! |
der_ton wrote: |
From one single test I noticed there is something wrong with the model's orientation, but apart from that it worked. |
der_ton wrote: |
I took a look at the code, and some of that looks familiar, but that's probably because some stuff has to be done the same way. But if you took some inspiration from my exporter, credits would be nice |
Quote: |
You have a function that converts a left handed matrix to a right handed one. |
bozo wrote: |
i think, when you create bones via mirror them, than this mirrored bones have this left-handed matrixes and the code fix this some times ago i only made a quick test of this and it seems to do the work properly |
Quote: |
Take care when mixing rotation derived from these matrices and rotation used in rotation-related functions or from rotation properties. |
der_ton wrote: |
Berserker, I'm totally ok with all of that. ![]() |
der_ton wrote: |
The thing with the mirrored bones matrices resulting in lefthanded bones came up with a model that 7318 did once. If you scale a bone negatively, then the transform matrix becomes lefthanded.
That is also related to the fact that the "transform" property is not necessarily the same as the combined "pos * quat as matrix". |
der_ton wrote: |
I think your way of creating submeshes is to export multiple mesh objects from 3dmax. |
der_ton wrote: |
I'll think about a custom print function for floats. I don't know of a way to tell Maxscript to use better precision for the built-in print float. |
Code: |
cuts {
96 148 198 290 324 } camera { ( 1781.0610351563 293.2318115234 70.8310394287 ) ( 0.09791141 -0.0939290896 -0.714956522 ) 72.1649246216 .... } |
der_ton wrote: |
Actually, the only reason why that's in there is because the engine has to know when NOT to interpolate between two keyframes. |
Code: |
fn printfloat flt =
--maxscript doesn't provide a way to format float output that I know of. It seems that Doom3 does not understand the <x>e<y> notation of floats --if you plan to use this in your scripts, note that this function doesn't check against a large number passed in ( --if (abs flt)>10.0 then return flt -- this could be used to gain some speed. --else local numdigits = 10 ( str = "" if flt<0 then str += "-" flt2 = abs flt str += ((flt2 as integer) as string) flt2 -= (flt2 as integer) str +="." for i=1 to numdigits do ( flt2 *=10.0 str += ((flt2 as integer) as string) flt2 -= (flt2 as integer) ) return str ) ) |
der_ton wrote: |
Feel free to use if you think it is necessary. |
der_ton wrote: |
BTW, in my new version of the scripts, I added the function for reading the animationRange interval to preset the input values in the GUI, I've seen that your script does that and it's ofcourse a useful detail. ![]() |
Quote: |
.... but it can have several textures via multi/submaterials (but I might change that). |
Aphax wrote: |
I'm sorry if this is a really bad suggestion and you guys rather work on your own thing, but I figured having two geniusses working on the same tool would make it even better ![]() |
Code: |
getSaveFileName caption:"Save MD5Camera" types:"Doom III MD5Camera (*.md5camera)|*.md5camera" |
evilartist/pickle_yeah/Killinplayer wrote: |
Whenever I try to export, It shows an error message:
-- Unknown property: "name" in undefined |
BeRSeRKeR wrote: |
GMax has some limitations. One of them is that you can select only 10K characters at a time in the MAXScript Listener window. However, there are some tools to avoid this limitation. Of course, doing this you will be breaking the gmax EULA. |
evilartist wrote: |
Are you going to make other new exporters for gmax? .ASE? .LWO? OBJ.? Those would also be quite useful. |
BeRSeRKeR wrote: | ||
Exists an obj exporter for gmax. You can download it here. I haven't tried it though. Greets. |
obihb wrote: |
I don't know anything about this exporter but from that screen shot it seems to me that Windows is set up to use large fonts. This has an affect on spacing. You can see how some of the text goes off the window, into the side. This could be why the buttons are being shifted up. |
kapta wrote: |
that did the trick, switching to small fonts fixed the problem and now the add button works, hope this is fixed in the next release! |
BeRSeRKeR wrote: |
..PD: BTW, I'm sorry for not give more attention to the forum. I'm a bit bussy right now. I'm developing a 3D engine with a friend of mine. You can check some videos here. The last one is "The Date". |
Code: |
local nBones = skinOps.getVertexWeightCount skin vTri[i] |
Code: |
-- Error occurred in i loop; filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp25\MD5MeshExporter.ms; position: 9258
-- Frame: -- invert: [-75.8407,-144.023,-30.7395] -- nBones: undefined -- firstMatch: 390 -- i: 2 -- inTVert: [0.254781,0.56059] -- outVert: (sVertex oldIndex:undefined newIndex:undefined coord:undefined texCoord:undefined weightIndex:undefined weightCount:undefined) -- called in nFace loop; filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp25\MD5MeshExporter.ms; position: 10854 -- Frame: -- nFace: 716 -- matID: 1 -- vertices: #((sVertex oldIndex:undefined newIndex:1 coord:[-78.9299,-125.229,-41.8769] texCoord:[0.199796,0.535254] weightIndex:1 weightCount:1), (sVertex oldIndex:undefined newIndex:2 coord:[-79.081,-126.037,-42.409] texCoord:[0.201427,0.530609] weightIndex:2 weightCount:1), (sVertex oldIndex:undefined newIndex:3 coord:[-79.6067,-125.659,-41.7115] texCoord:[0.201427,0.535254] weightIndex:3 weightCount:1), (sVertex oldIndex:undefined newIndex:4 coord:[-79.0862,-125.304,-40.3571] texCoord:[0.201427,0.543699] weightIndex:4 weightCount:1), (sVertex oldIndex:undefined newIndex:5 coord:[-79.4012,-127.377,-42.0897] texCoord:[0.205238,0.529712] weightIndex:5 weightCount:1), (sVertex oldIndex:undefined newIndex:6 coord:[-80.0197,-126.927,-41.257] texCoord:[0.205238,0.535254] weightIndex:6 weightCount:1), (sVertex oldIndex:undefined newIndex:7 coord:[-79.5565,-126.559,-39.9059] texCoord:[0.205238,0.543699] weightIndex:7 weightCount:1), (sVertex oldIndex:undefined newIndex:8 coord:[-79.0372,-125.298,-40.3077] texCoord:[0.201427,0.543996] weightIndex:8 weightCount:1), (sVertex oldIndex:undefined newIndex:9 coord:[-79.3514,-126.536,-39.6987] texCoord:[0.205238,0.544944] weightIndex:9 weightCount:1), (sVertex oldIndex:undefined newIndex:10 coord:[-79.6293,-128.071,-40.8627] texCoord:[0.208196,0.535254] weightIndex:10 weightCount:1), (sVertex oldIndex:undefined newIndex:11 coord:[-79.4175,-126.857,-39.8041] texCoord:[0.205984,0.543699] weightIndex:11 weightCount:1), (sVertex oldIndex:undefined newIndex:12 coord:[-82.2777,-138.482,-35.6559] texCoord:[0.240339,0.543699] weightIndex:12 weightCount:1), (sVertex oldIndex:undefined newIndex:13 coord:[-82.5414,-139.726,-35.9402] texCoord:[0.243348,0.539565] weightIndex:13 weightCount:1), (sVertex oldIndex:undefined newIndex:14 coord:[-83.0501,-139.381,-35.3219] texCoord:[0.243348,0.543699] weightIndex:14 weightCount:1), (sVertex oldIndex:undefined newIndex:15 coord:[-83.0585,-138.905,-33.9974] texCoord:[0.243348,0.552145] weightIndex:15 weightCount:1), (sVertex oldIndex:undefined newIndex:16 coord:[-82.3039,-138.234,-34.2512] texCoord:[0.240987,0.552145] weightIndex:16 weightCount:1), (sVertex oldIndex:undefined newIndex:17 coord:[-82.86,-141.052,-35.5996] texCoord:[0.247159,0.538773] weightIndex:17 weightCount:1), (sVertex oldIndex:undefined newIndex:18 coord:[-83.5864,-140.614,-34.8699] texCoord:[0.247159,0.543699] weightIndex:18 weightCount:1), (sVertex oldIndex:undefined newIndex:19 coord:[-83.8117,-140.088,-33.5567] texCoord:[0.247159,0.552145] weightIndex:19 weightCount:1), (sVertex oldIndex:undefined newIndex:20 coord:[-83.3588,-139.708,-32.1986] texCoord:[0.247159,0.56059] weightIndex:20 weightCount:1), ...) -- weights: #((sWeight jointIndex:56 weight:1.0 coordIndex:1 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:2 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:3 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:4 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:5 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:6 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:7 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:8 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:9 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:10 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:11 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:12 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:13 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:14 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:15 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:16 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:17 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:18 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:19 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:20 coord:undefined), ...) -- vTri: [388,465,386] -- faces: #([1,2,3], [1,3,4], [3,2,5], [5,6,3], [6,7,3], [7,4,3], [8,4,7], [8,7,9], [6,5,10], [6,10,11], [6,11,7], [7,11,9], [12,13,14], [15,16,12], [12,14,15], [14,13,17], [17,18,14], [18,19,14], [19,15,14], [20,15,19], ...) -- outFace: [389,0,0] -- tTri: [388,465,386] -- nSubMesh: 1 -- called in node loop; filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp25\MD5MeshExporter.ms; position: 10933 -- Frame: -- mesh: TriMesh -- node: $META -- subMeshes: #((sSubMesh matID:1 Shader:"DINOMAT" vertices:#((sVertex oldIndex:undefined newIndex:1 coord:[-78.9299,-125.229,-41.8769] texCoord:[0.199796,0.535254] weightIndex:1 weightCount:1), (sVertex oldIndex:undefined newIndex:2 coord:[-79.081,-126.037,-42.409] texCoord:[0.201427,0.530609] weightIndex:2 weightCount:1), (sVertex oldIndex:undefined newIndex:3 coord:[-79.6067,-125.659,-41.7115] texCoord:[0.201427,0.535254] weightIndex:3 weightCount:1), (sVertex oldIndex:undefined newIndex:4 coord:[-79.0862,-125.304,-40.3571] texCoord:[0.201427,0.543699] weightIndex:4 weightCount:1), (sVertex oldIndex:undefined newIndex:5 coord:[-79.4012,-127.377,-42.0897] texCoord:[0.205238,0.529712] weightIndex:5 weightCount:1), (sVertex oldIndex:undefined newIndex:6 coord:[-80.0197,-126.927,-41.257] texCoord:[0.205238,0.535254] weightIndex:6 weightCount:1), (sVertex oldIndex:undefined newIndex:7 coord:[-79.5565,-126.559,-39.9059] texCoord:[0.205238,0.543699] weightIndex:7 weightCount:1), (sVertex oldIndex:undefined newIndex:8 coord:[-79.0372,-125.298,-40.3077] texCoord:[0.201427,0.543996] weightIndex:8 weightCount:1), (sVertex oldIndex:undefined newIndex:9 coord:[-79.3514,-126.536,-39.6987] texCoord:[0.205238,0.544944] weightIndex:9 weightCount:1), (sVertex oldIndex:undefined newIndex:10 coord:[-79.6293,-128.071,-40.8627] texCoord:[0.208196,0.535254] weightIndex:10 weightCount:1), (sVertex oldIndex:undefined newIndex:11 coord:[-79.4175,-126.857,-39.8041] texCoord:[0.205984,0.543699] weightIndex:11 weightCount:1), (sVertex oldIndex:undefined newIndex:12 coord:[-82.2777,-138.482,-35.6559] texCoord:[0.240339,0.543699] weightIndex:12 weightCount:1), (sVertex oldIndex:undefined newIndex:13 coord:[-82.5414,-139.726,-35.9402] texCoord:[0.243348,0.539565] weightIndex:13 weightCount:1), (sVertex oldIndex:undefined newIndex:14 coord:[-83.0501,-139.381,-35.3219] texCoord:[0.243348,0.543699] weightIndex:14 weightCount:1), (sVertex oldIndex:undefined newIndex:15 coord:[-83.0585,-138.905,-33.9974] texCoord:[0.243348,0.552145] weightIndex:15 weightCount:1), (sVertex oldIndex:undefined newIndex:16 coord:[-82.3039,-138.234,-34.2512] texCoord:[0.240987,0.552145] weightIndex:16 weightCount:1), (sVertex oldIndex:undefined newIndex:17 coord:[-82.86,-141.052,-35.5996] texCoord:[0.247159,0.538773] weightIndex:17 weightCount:1), (sVertex oldIndex:undefined newIndex:18 coord:[-83.5864,-140.614,-34.8699] texCoord:[0.247159,0.543699] weightIndex:18 weightCount:1), (sVertex oldIndex:undefined newIndex:19 coord:[-83.8117,-140.088,-33.5567] texCoord:[0.247159,0.552145] weightIndex:19 weightCount:1), (sVertex oldIndex:undefined newIndex:20 coord:[-83.3588,-139.708,-32.1986] texCoord:[0.247159,0.56059] weightIndex:20 weightCount:1), ...) faces:#([1,2,3], [1,3,4], [3,2,5], [5,6,3], [6,7,3], [7,4,3], [8,4,7], [8,7,9], [6,5,10], [6,10,11], [6,11,7], [7,11,9], [12,13,14], [15,16,12], [12,14,15], [14,13,17], [17,18,14], [18,19,14], [19,15,14], [20,15,19], ...) weights:#((sWeight jointIndex:56 weight:1.0 coordIndex:1 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:2 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:3 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:4 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:5 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:6 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:7 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:8 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:9 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:10 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:11 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:12 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:13 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:14 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:15 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:16 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:17 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:18 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:19 coord:undefined), (sWeight jointIndex:56 weight:1.0 coordIndex:20 coord:undefined), ...)), (sSubMesh matID:2 Shader:"Material #16" vertices:#() faces:#() weights:#()), (sSubMesh matID:3 Shader:"Material #52" vertices:#() faces:#() weights:#()), (sSubMesh matID:4 Shader:"Material #53" vertices:#() faces:#() weights:#())) -- msg: undefined -- Skin: Skin:Skin -- called in doExport(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp25\MD5MeshExporter.ms; position: 12326 -- Frame: -- nodeList: #($META) -- joints: #((sJoint name:"Bone10" parentName:undefined parentIndex:0 bindMat:(matrix3 [0.221091,0.54614,0.0829128] [-0.0654888,-0.062763,0.588045] [0.548502,-0.227633,0.0367895] [-75.8366,-232.381,-3.25691]) invBindMat:(matrix3 [0.624508,-0.184984,1.54933] [1.54266,-0.177284,-0.642985] [0.2342,1.66103,0.103918] [406.608,-49.8162,-31.5828])), (sJoint name:"Bone88" parentName:"Bone10" parentIndex:1 bindMat:(matrix3 [0.12647,0.217606,-0.539145] [0.192809,0.504833,0.248985] [0.548502,-0.227632,0.0367897] [-90.7721,-214.237,-9.29881]) invBindMat:(matrix3 [0.357236,0.54462,1.54933] [0.614663,1.42598,-0.642986] [-1.5229,0.703299,0.103918] [149.949,361.473,3.85146])), (sJoint name:"Bone87" parentName:"Bone88" parentIndex:2 bindMat:(matrix3 [-0.109294,-0.340241,-0.475727] [0.203039,0.431792,-0.355466] [0.548504,-0.227633,0.0367897] [-79.6138,-195.038,-56.8666]) invBindMat:(matrix3 [-0.308719,0.573516,1.54933] [-0.961064,1.21966,-0.642983] [-1.34376,-1.00407,0.103918] [-288.438,226.442,3.85143])), (sJoint name:"Bone35" parentName:"Bone87" parentIndex:3 bindMat:(matrix3 [-0.0941631,0.559463,-0.179331] [0.348701,0.19939,0.438947] [0.472828,-0.0356315,-0.35943] [-88.6142,-222.008,-94.563]) invBindMat:(matrix3 [-0.265976,0.984965,1.33557] [1.58029,0.563212,-0.100645] [-0.506549,1.23988,-1.01527] [279.368,329.567,4.29751e-005])), (sJoint name:"Bone77" parentName:"Bone35" parentIndex:4 bindMat:(matrix3 [-0.055696,0.581567,-0.112712] [-0.0107439,0.112199,0.584225] [0.592291,0.0567229,1.24675e-006] [-92.3389,-198.985,-101.862]) invBindMat:(matrix3 [-0.157321,-0.0303547,1.67302] [1.64272,0.316922,0.160222] [-0.318374,1.65025,-3.49884e-006] [279.92,228.357,186.366])), (sJoint name:"Bone84" parentName:"Bone77" parentIndex:5 bindMat:(matrix3 [0.144472,0.574089,-0.0597981] [-0.0115671,0.064511,0.591377] [0.577079,-0.14243,0.0268268] [-86.3829,-196.668,-102.406]) invBindMat:(matrix3 [0.408083,-0.0326801,1.63005] [1.6216,0.182221,-0.402315] [-0.168912,1.67045,0.07577] [336.871,204.078,69.445])), (sJoint name:"Bone85" parentName:"Bone84" parentIndex:6 bindMat:(matrix3 [0.144872,0.570107,-0.0895265] [-0.00430198,0.0933682,0.587612] [0.577078,-0.142426,0.026857] [-85.2074,-192.001,-102.889]) invBindMat:(matrix3 [0.409215,-0.0121551,1.63005] [1.61036,0.263736,-0.402304] [-0.252881,1.65981,0.0758576] [318.04,220.378,69.4541])), (sJoint name:"Bone86" parentName:"Bone85" parentIndex:7 bindMat:(matrix3 [0.144925,0.565699,-0.114046] [0.00176632,0.117152,0.583349] [0.577078,-0.142426,0.0268569] [-83.8697,-186.738,-103.719]) invBindMat:(matrix3 [0.409365,0.00498593,1.63005] [1.59791,0.330917,-0.402304] [-0.322141,1.64777,0.0758576] [299.31,233.117,69.4542])), (sJoint name:"Bone83" parentName:"Bone77" parentIndex:5 bindMat:(matrix3 [-0.264838,0.529526,-0.0590708] [-0.000504675,0.0657154,0.591358] [0.53281,0.263268,-0.0287988] [-97.3402,-197.797,-102.395]) invBindMat:(matrix3 [-0.748076,-0.00143255,1.505] [1.49572,0.185623,0.743641] [-0.166853,1.67039,-0.0813537] [205.948,207.617,285.257])), (sJoint name:"Bone82" parentName:"Bone83" parentIndex:9 bindMat:(matrix3 [-0.264477,0.52554,-0.088798] [-0.0138217,0.0923317,0.587629] [0.53281,0.263263,-0.0288324] [-99.4943,-193.493,-102.873]) invBindMat:(matrix3 [-0.747054,-0.039045,1.505] [1.48447,0.260809,0.743629] [-0.25082,1.65986,-0.0814439] [187.104,217.333,285.248])), (sJoint name:"Bone81" parentName:"Bone82" parentIndex:10 bindMat:(matrix3 [-0.263667,0.521215,-0.113319] [-0.024881,0.114251,0.583396] [0.53281,0.263263,-0.0288324] [-101.936,-188.641,-103.695]) invBindMat:(matrix3 [-0.744765,-0.0702835,1.505] [1.47225,0.322722,0.74363] [-0.320084,1.6479,-0.081444] [168.617,224.594,285.248])), (sJoint name:"Bone78" parentName:"Bone77" parentIndex:5 bindMat:(matrix3 [-0.0563897,0.58881,-0.0644069] [-0.00613909,0.0641126,0.591503] [0.592291,0.0567221,2.95327e-007] [-92.856,-193.585,-102.908]) invBindMat:(matrix3 [-0.159279,-0.0173442,1.67302] [1.66319,0.181099,0.160223] [-0.181925,1.6708,-2.51206e-006] [288.456,205.387,186.366])), (sJoint name:"Bone79" parentName:"Bone78" parentIndex:12 bindMat:(matrix3 [-0.056008,0.58483,-0.0941404] [-0.00897368,0.0937107,0.587504] [0.592291,0.0567216,4.16646e-007] [-93.3144,-188.798,-103.43]) invBindMat:(matrix3 [-0.158201,-0.0253509,1.67302] [1.65194,0.264704,0.160221] [-0.265912,1.65951,-2.25699e-006] [269.618,219.252,186.366])), (sJoint name:"Bone80" parentName:"Bone79" parentIndex:13 bindMat:(matrix3 [-0.0555834,0.580395,-0.118652] [-0.0113104,0.11811,0.583049] [0.592291,0.0567218,3.44771e-007] [-93.8315,-183.399,-104.302]) invBindMat:(matrix3 [-0.157001,-0.0319511,1.67302] [1.63941,0.333624,0.160221] [-0.335148,1.64692,-2.17283e-006] [250.978,229.965,186.366])), (sJoint name:"Bone25" parentName:"Bone10" parentIndex:1 bindMat:(matrix3 [0.12647,0.217606,-0.539145] [0.192809,0.504832,0.248985] [0.548502,-0.227632,0.0367897] [-50.0461,-231.138,-6.5672]) invBindMat:(matrix3 [0.357236,0.544621,1.54933] [0.614663,1.42598,-0.642986] [-1.5229,0.703299,0.103918] [149.949,361.474,-70.398])), (sJoint name:"Bone26" parentName:"Bone25" parentIndex:15 bindMat:(matrix3 [-0.109294,-0.340241,-0.475727] [0.203039,0.431792,-0.355466] [0.548504,-0.227633,0.0367897] [-38.8879,-211.939,-54.135]) invBindMat:(matrix3 [-0.308719,0.573516,1.54933] [-0.961065,1.21966,-0.642983] [-1.34376,-1.00407,0.103918] [-288.438,226.442,-70.3978])), (sJoint name:"Bone13" parentName:"Bone26" parentIndex:16 bindMat:(matrix3 [-0.0812697,-0.503064,-0.30716] [0.159666,0.279683,-0.500307] [0.567388,-0.150761,0.0967933] [-47.9201,-239.09,-91.4962]) invBindMat:(matrix3 [-0.22956,0.451001,1.60267] [-1.42098,0.790014,-0.425848] [-0.867622,-1.41321,0.273409] [-430.128,81.1935,-4.71753e-006])), (sJoint name:"Bone21" parentName:"Bone13" parentIndex:17 bindMat:(matrix3 [-0.177246,0.484527,-0.296382] [-0.101821,0.278343,0.515927] [0.558787,0.20441,0] [-51.309,-260.067,-104.304]) invBindMat:(matrix3 [-0.500656,-0.28761,1.57838] [1.36862,0.786227,0.577388] [-0.83718,1.45733,0] [242.924,341.721,231.144])), (sJoint name:"Bone22" parentName:"Bone21" parentIndex:18 bindMat:(matrix3 [-0.185,0.505727,-0.253061] [-0.086937,0.237658,0.538502] [0.558787,0.20441,0] [-52.9546,-255.568,-107.056]) invBindMat:(matrix3 [-0.522563,-0.245571,1.57838] [1.42851,0.671306,0.577385] [-0.71481,1.52109,-1.59018e-006] [260.884,321.403,231.144])), (sJoint name:"Bone23" parentName:"Bone22" parentIndex:19 bindMat:(matrix3 [-0.180398,0.493146,-0.279801] [-0.0961236,0.262771,0.525105] [0.558787,0.20441,0] [-54.4596,-251.454,-109.115]) invBindMat:(matrix3 [-0.509564,-0.27152,1.57838] [1.39297,0.742242,0.577386] [-0.790343,1.48325,-1.92392e-006] [236.279,333.697,231.144])), ...) -- filename: "D:\Munka\MD5\exporter\MD5Exporter\dino.md5mesh" -- fp: <File:D:\Munka\MD5\exporter\MD5Exporter\dino.md5mesh> -- msg: undefined -- called in btnExport.pressed(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp25\MD5Exporter.ms; position: 7124 -- Frame: -- End: undefined -- nodeList: #($META) -- meshFileName: "D:\Munka\MD5\exporter\MD5Exporter\dino.md5mesh" -- animFileName: undefined -- bUpdate: false -- md5Exp: (MD5MeshExporter ) -- bOk: false -- start: undefined -- nBaseFrame: undefined -- animRange: undefined >> MAXScript Rollout Handler Exception: -- Runtime error: Exceeded the vertex countSkin:Skin << |
Code: |
if ((findBoneByName boneList b.name) != 0) or (b == rootBone) do |
Code: |
-- Error occurred in sortBones(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp26\helper_funcs_skin.ms; position: 544
-- Frame: -- b: undefined -- called in init(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp26\helper_funcs_skin.ms; position: 2018 -- Frame: -- nodeList: #($META) -- called in doExport(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp26\MD5MeshExporter.ms; position: 4729 -- Frame: -- nodeList: #($META) -- joints: #() -- filename: "D:\Munka\MD5\exporter\MD5.MAX.Exporter.For.Skin.Modifier\dino.md5mesh" -- skinHelp: (skinHelper rootBone:undefined sortedBoneList:#() boneList:#($Bone10, $Bone01, $Bone02, $Bone03, $Bone04, $Bone05, $Bone06, $Bone07, $Bone08, $Bone09, $Bone70, $Bone48, $Bone49, $Bone50, $Bone51, $Bone52, $Bone53, $Bone54, $Bone55, $Bone56, ...) tab:0) -- fp: <File:D:\Munka\MD5\exporter\MD5.MAX.Exporter.For.Skin.Modifier\dino.md5mesh> -- msg: undefined -- called in btnExport.pressed(); filename: C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mzptmp26\MD5Exporter.ms; position: 6959 -- Frame: -- End: undefined -- nodeList: #($META) -- meshFileName: "D:\Munka\MD5\exporter\MD5.MAX.Exporter.For.Skin.Modifier\dino.md5mesh" -- animFileName: undefined -- bUpdate: false -- md5Exp: (MD5MeshExporter ) -- bOk: false -- start: undefined -- nBaseFrame: undefined -- animRange: undefined >> MAXScript Rollout Handler Exception: -- Unknown property: "name" in undefined << |
pkovacs wrote: |
Maybe I should move to the thread of der_ton's MD5 exporter, because with that, at least 'something' gets exported (after some modifications), but it's still far from correct. Only the eyes of the dino are exported, strange, huh?
|
Banzai wrote: | ||
Hi Guyz, I'm really a newbie about Modelling 4 Games and i use the gmax-MD5-Exporter today the first time. I've the same Error, but now I know how to solve ;o) You MUST have a UVW-Map (or another Mapping-Info and Material I think) join to your Mesh. Then the gmax-Exporter works fine! |