|
 |
« Reply #6720 on: November 12, 2011, 01:45:22 PM » |
|
... when is the TopN bone ever animated?
Oh wait. Never. That's right.
Stop clicking 1 when rigging. Stick to 0.9 or something.
|
|
|
Logged
|
Muslims are literally murderers
|
|
|
|
|
 |
« Reply #6721 on: November 12, 2011, 02:29:24 PM » |
|
.9 huh? Kay
Also I guess the trans N was the only critical one, but meh, who knows XP
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6722 on: November 12, 2011, 02:39:35 PM » |
|
There was an issue with the material layer flags building in reverse, so I fixed it. I haven't uploaded the update yet, because I'm currently looking into the texture flashing problems people have had and some other unk values.
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6723 on: November 12, 2011, 04:18:22 PM » |
|
@ BJ: I got some progress! Not much though, I've only rigged the Top N and Trans N in max so far =-= BUT the bones work properly, even if I scale/rotate them. It's not much of an improvement, but considering what I went through getting to this point...  What I need to know now is why Max won't let me give X Rot N and Y Rot N Absolute control over ALL vertexes of each polygon. If I give 100% on one the other goes back down to 0% Naru. DON'T RIG the XRotN, YRotN, HipN, TransN, EyeYellowM, .etc.... They already control all of the bones under them in the bone heiarchy. Each vertice can only be rigged to ONE bone. If you set control to 1 on the ENTIRE model for one bone, there won't be any bone besides that one that controls the model. Set the ShoulderJ to the whole arm. Then the ArmJ to the elbow. Then HandN to the hand. When you look back, the ShoulderJ will only control vertices up to the vertices the ArmJ controls. But if you rotate ShoulderJ, you'll rotate the vertices controlled by ShoulderJ along with ArmJ and the vertices it controls (And so on). You get it?
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6724 on: November 12, 2011, 04:27:13 PM » |
|
Okay I think I get it now *shrug* Now to just put what I understand from this into progress if any at all =_=; That could take a while *sigh*
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6725 on: November 12, 2011, 04:44:29 PM » |
|
Ok, I wasn't going to report this here, but now I think It's worth mention. When I import a Brawlbox dae It has no textures even If they are in the same directory as the dae. Well looking at a polygon in shows that It's trying to get the textures from a directory that doesn't exists. And when I use the detach by id script I get this error: /* Detach by Material ID Version: 2 by Jefferson Lim Terabye Inc./ Shirogumi Inc.
[features] Detach Polygons based on its Material ID - works on a selection of objects - Options to name detached objects - material propagation - this will assign a corresponding material by id to the detached object
[usage] 1. select any number of objects 2. set the desired paramteters 3. optional: if you know the maximun number of ids the object has set the Max IDs to help speed up detachment. 4. press detach
[Internal Operations] Procedure: - object(s) is/are copied - then collapsed to an editable poly - faces are finally detached by material ID
Naming: - "Numbered" - will creae numbered names - e.g. 0,1,2,3 - preferable to use with the Prefix option checked - "Bitmap Name" - if not diffuse bitmap found, it will use the material name - if no material applied, it will use the object's name - "Material Name" - if no material applied, it will use the object's name - "Object Name" - will create a unique name based on the object's name */
try(destroyDialog detachByID)catch() rollout detachByID "Detach by ID" width:140 height:250 ( local name_type = 1 local the_polyobj local ran_color = true local the_name local the_mat_arr = #() local id_list = #()
label lbl_maxids "Max IDs:" pos:[10,190] width:55 height:15 GroupBox grp_naming "Naming: " pos:[5,0] width:130 height:125 GroupBox grp_prefix "" pos:[5,75] width:130 height:50 GroupBox grp_ops "Options:" pos:[5,125] width:130 height:90 radiobuttons rb_naming "" pos:[10,15] width:107 height:64 enabled:true labels:#("Object Name", "Material Name", "Bitmap Name", "Numbered") default:1 columns:1 checkbox chk_prefix "Use Prefix" pos:[10,85] width:70 height:15 checked:false edittext edt_prefix "" pos:[5,100] width:125 checkbox chk_prop "Propagate Materials" pos:[10,140] width:120 height:15 checked:true checkbox btn_del "Delete Original" pos:[10,155] width:120 height:15 checked:true checkbox chk_rancolor "Random Wire Colors" pos:[10,170] width:120 height:15 checked:true spinner spn_maxids "" pos:[70,190] width:60 height:16 range:[0,99,99] type:#integer scale:0.05 button detach_bot "DETACH" pos:[5,220] width:130 height:25 fn getMaterialIDs obj = ( id_arr = #() for i in 1 to spn_maxids.value do ( obj.selectByMaterial i the_faces = getFaceSelection obj if (the_faces as array).count != 0 do ( append id_arr i ) ) id_arr ) fn getMatTextureName mat = ( local the_map_name = the_polyobj.name try ( bmp = mat.diffusemap if classof bmp == Bitmaptexture then ( the_mapfile = mat.diffuseMap.bitmap.filename the_map_name = getFileNameFile the_mapfile ) else ( the_map_name = mat.name ) ) catch() the_map_name ) on rb_naming changed val do ( name_type = val the_name = edt_prefix.text ) on edt_prefix entered txt do ( the_name = txt ) on chk_rancolor changed val do ( ran_color = val )
on detach_bot pressed do ( undo "Detach by ID" on ( the_sel = selection as array if the_sel.count != 0 do ( for obj in the_sel where \ superclassof obj == GeometryClass and \ obj.material != undefined do ( try(convertToPoly obj)catch(exit; print "DetacByID: Error Occured on Object Conversion") the_orig = obj the_polyobj = copy the_orig
the_mat = obj.material id_count = the_mat.numSubs id_list = getMaterialIDs the_polyobj -- start detaching for i in id_list do ( the_polyobj.selectByMaterial i the_faces = getFaceSelection the_polyobj case name_type of ( 1: the_name = uniquename (the_polyobj.name) 2: the_name = uniquename (the_mat.name) 3: the_name = uniquename (getMatTextureName the_mat) 4: the_name = uniquename the_name ) if chk_prefix.checked do the_name = edt_prefix.text + the_name polyOp.detachFaces the_polyobj the_faces asnode:true name:the_name theDetachedObj = (getnodebyname the_name) if isValidNode theDetachedObj do ( if chk_prop.checked do theDetachedObj.material = the_mat if ran_color do theDetachedObj.wirecolor = random black white
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6726 on: November 12, 2011, 05:18:39 PM » |
|
Ok, I wasn't going to report this here, but now I think It's worth mention. When I import a Brawlbox dae It has no textures even If they are in the same directory as the dae. Well looking at a polygon in shows that It's trying to get the textures from a directory that doesn't exists. And when I use the detach by id script I get this error: /* Detach by Material ID Version: 2 by Jefferson Lim Terabye Inc./ Shirogumi Inc.
[features] Detach Polygons based on its Material ID - works on a selection of objects - Options to name detached objects - material propagation - this will assign a corresponding material by id to the detached object
[usage] 1. select any number of objects 2. set the desired paramteters 3. optional: if you know the maximun number of ids the object has set the Max IDs to help speed up detachment. 4. press detach
[Internal Operations] Procedure: - object(s) is/are copied - then collapsed to an editable poly - faces are finally detached by material ID
Naming: - "Numbered" - will creae numbered names - e.g. 0,1,2,3 - preferable to use with the Prefix option checked - "Bitmap Name" - if not diffuse bitmap found, it will use the material name - if no material applied, it will use the object's name - "Material Name" - if no material applied, it will use the object's name - "Object Name" - will create a unique name based on the object's name */
try(destroyDialog detachByID)catch() rollout detachByID "Detach by ID" width:140 height:250 ( local name_type = 1 local the_polyobj local ran_color = true local the_name local the_mat_arr = #() local id_list = #()
label lbl_maxids "Max IDs:" pos:[10,190] width:55 height:15 GroupBox grp_naming "Naming: " pos:[5,0] width:130 height:125 GroupBox grp_prefix "" pos:[5,75] width:130 height:50 GroupBox grp_ops "Options:" pos:[5,125] width:130 height:90 radiobuttons rb_naming "" pos:[10,15] width:107 height:64 enabled:true labels:#("Object Name", "Material Name", "Bitmap Name", "Numbered") default:1 columns:1 checkbox chk_prefix "Use Prefix" pos:[10,85] width:70 height:15 checked:false edittext edt_prefix "" pos:[5,100] width:125 checkbox chk_prop "Propagate Materials" pos:[10,140] width:120 height:15 checked:true checkbox btn_del "Delete Original" pos:[10,155] width:120 height:15 checked:true checkbox chk_rancolor "Random Wire Colors" pos:[10,170] width:120 height:15 checked:true spinner spn_maxids "" pos:[70,190] width:60 height:16 range:[0,99,99] type:#integer scale:0.05 button detach_bot "DETACH" pos:[5,220] width:130 height:25 fn getMaterialIDs obj = ( id_arr = #() for i in 1 to spn_maxids.value do ( obj.selectByMaterial i the_faces = getFaceSelection obj if (the_faces as array).count != 0 do ( append id_arr i ) ) id_arr ) fn getMatTextureName mat = ( local the_map_name = the_polyobj.name try ( bmp = mat.diffusemap if classof bmp == Bitmaptexture then ( the_mapfile = mat.diffuseMap.bitmap.filename the_map_name = getFileNameFile the_mapfile ) else ( the_map_name = mat.name ) ) catch() the_map_name ) on rb_naming changed val do ( name_type = val the_name = edt_prefix.text ) on edt_prefix entered txt do ( the_name = txt ) on chk_rancolor changed val do ( ran_color = val )
on detach_bot pressed do ( undo "Detach by ID" on ( the_sel = selection as array if the_sel.count != 0 do ( for obj in the_sel where \ superclassof obj == GeometryClass and \ obj.material != undefined do ( try(convertToPoly obj)catch(exit; print "DetacByID: Error Occured on Object Conversion") the_orig = obj the_polyobj = copy the_orig
the_mat = obj.material id_count = the_mat.numSubs id_list = getMaterialIDs the_polyobj -- start detaching for i in id_list do ( the_polyobj.selectByMaterial i the_faces = getFaceSelection the_polyobj case name_type of ( 1: the_name = uniquename (the_polyobj.name) 2: the_name = uniquename (the_mat.name) 3: the_name = uniquename (getMatTextureName the_mat) 4: the_name = uniquename the_name ) if chk_prefix.checked do the_name = edt_prefix.text + the_name polyOp.detachFaces the_polyobj the_faces asnode:true name:the_name theDetachedObj = (getnodebyname the_name) if isValidNode theDetachedObj do ( if chk_prop.checked do theDetachedObj.material = the_mat if ran_color do theDetachedObj.wirecolor = random black white >_> That's not an error, that's the maxscript code...
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6727 on: November 12, 2011, 05:24:16 PM » |
|
>_> That's not an error, that's the maxscript code...
Well It comes up when I get an error that says "--Unable to convert: ReferenceTarget:ReferenceTarget to type: Material"
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6728 on: November 12, 2011, 05:26:30 PM » |
|
Well It comes up when I get an error that says "--Unable to convert: ReferenceTarget:ReferenceTarget to type: Material"
separate by Bitmap or Object name
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6729 on: November 12, 2011, 05:26:50 PM » |
|
Well It comes up when I get an error that says "--Unable to convert: ReferenceTarget:ReferenceTarget to type: Material"
Maybe the object has no material. If the texture paths in the dae don't go anywhere that exists, just edit them in notepad++.
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6730 on: November 12, 2011, 05:41:21 PM » |
|
Hey before I start, I want to make sure of something. You said a while back that Miku Miku Dance models don't have textures? How exactly would that work with importing, since you are doing Flondre.
|
|
|
Logged
|
 Import Thread | Music ThreadI am trying to sell all my old pokemon and Yugioh cards; I had a hell of a collection of the latter especially. Message me if you are interested in purchasing any.
|
|
|
|
|
 |
« Reply #6731 on: November 12, 2011, 05:46:57 PM » |
|
Hey before I start, I want to make sure of something. You said a while back that Miku Miku Dance models don't have textures? How exactly would that work with importing, since you are doing Flondre.
Well Flandre has two textures mostly everything and no textures for her eyelashes, the spear thingy and some other stuff (they're solid colors). When you import the PMD into 3ds Max, you have to create a solid 50x50 texture that's that color. You can figure out the diffuse colors by importing the model into Brawlbox and then reading the diffuse colors in the materials, or you can just guess by looking at the color lol. Then you use the detach by id script and then simply drag those new textures onto the model where they belong. That's all I did.
|
|
« Last Edit: November 12, 2011, 05:48:23 PM by BlackJax96 »
|
Logged
|
|
|
|
|
|
 |
« Reply #6732 on: November 12, 2011, 05:49:15 PM » |
|
 i cant figure out how to get the model viewer to have more than 1 model
|
|
|
Logged
|
Quotes: Not all people have the luxury of being able to buy things whenever they want.
Some people are barely scraping by in the economy.
Modding has made you guys so spoiled.
|
|
|
|
|
 |
« Reply #6733 on: November 12, 2011, 05:50:32 PM » |
|
 i cant figure out how to get the model viewer to have more than 1 model Go to file - open in the model viewer and then open a file. You used to be able to drag and drop files into the viewer, but I think I broke it cuz it doesn't work for me anymore. 
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #6734 on: November 12, 2011, 05:51:40 PM » |
|
wow. i fail. thanks
|
|
|
Logged
|
Quotes: Not all people have the luxury of being able to buy things whenever they want.
Some people are barely scraping by in the economy.
Modding has made you guys so spoiled.
|
|
|
|
|