• Vindictus model porting tutorial
    680 replies, posted
  • I kinda suck at writing tutorials, so hopefully this isn't too bad and useful to at least someone. I'll try to keep this up to date as people ask questions and encounter problems using it. [b]Stuff that&#8217;s required:[/b] &#8226; Vindictus: [url]http://vindictus.nexon.net/[/url] &#8226; HFS Decrypter: [url]http://wiki.xentax.com/index.php/Vindictus[/url] &#8226; Cannonfodder&#8217;s MDL Decompiler: [url]http://www.chaosincarnate.net/cannonfodder/cftools.htm[/url] &#8226; Photoshop or GIMP or some other way to edit vtf files. &#8226; About 5 or GB of free HDD space: There is no apparent rhyme or reason to how the files are named so I can&#8217;t tell you what is in each specific archive to get you to what you want, so for this I&#8217;m batch converting and extracting all the games assets. &#8226; Some sort of 3d modeling program capable of importing / exporting smds. (Milkshape or 3ds max) [b]Recommended but not required:[/b] &#8226; A batch file renamer &#8226; A batch zip extractor. [b][u]Step 1 Extraction:[/u][/b] First step is to decrypt all the HFS files from Vindictus. By default they are in C:\Nexon\Vindictus\en-US\hfs. Run the VZipFlip tool you downloaded from the HFS Decrypter link at the top with the following command line: VZipFlip.exe a C:\Nexon\Vindictus\en-US\hfs The tag &#8220;a&#8221; will do all the hfs files in the folder. Also change the directory to reflect where you have Vindictus installed to if it&#8217;s different. The program will take a bit of time to run so go have a cup of coffee or something After it finishes you now have a bunch of zip files with various files in them. Extract them one at a time to a folder, or preferably use a batch unzip program to extract them all to a folder. If you are using a batch extractor, again this part will take a bit of time so go watch some TV or something. Once you have everything extracted from the zip files you can delete them, as you won&#8217;t need them anymore. Unfortunately Vindictus&#8217;s HFS format somehow mimics a file structure that isn&#8217;t replicated by the decrypting program so you&#8217;ll have a ton of files in the folder you extracted everything to; thankfully when you sort by type it make it slightly easier to find what you want. For some reason the model files have a weird extension &#8220;.mdl.comp&#8221;. I have no idea what the .comp is there for but you can rename the file and take off the .comp part. I would recommend using a batch file renamer for this, just rename everything in the folder from &#8220;*.mdl.comp&#8221; to &#8220;*.mdl&#8221;. Then we can move onto decompiling. [u][b]Step 2 Decompiling:[/u][/b] For this tutorial I&#8217;m going to create a Fiona ragdoll, using her &#8220;Shining Will&#8221; armor. To do this I need to decompile several models: All five parts of her armor: &#8220;pc_female_shiningwill_hand.mdl&#8221; &#8220;pc_female_shiningwill_head.mdl&#8221; &#8220;pc_female_shiningwill_foot.mdl&#8221; &#8220;pc_female_shiningwill_lower.mdl&#8221; &#8220;pc_female_shiningwill_upper.mdl&#8221; Her head: &#8220;fiona_face01.mdl&#8221; You will need the expression data from this qc as well as the vta file. Any Fiona Inner Armor: &#8220;Fiona_inner_armor0*.mdl&#8221; *being a number you want there&#8217;s like 7 or 8 of them Any Fiona Hair: &#8220;pc_fiona_hair_*.mdl&#8221; There is a couple there they actually have relevant names so a little easier to figure out than the inner_armor. For this I&#8217;m using &#8220;pc_fiona_hair_natural_long_01.mdl&#8221; And finally the actual Fiona Model, which you need the qc, ragdoll and physmodel from: &#8220;fiona.mdl&#8221; I recommend decompiling them to separate folders, so that stuff doesn&#8217;t get overwritten and you can keep the QC for each of them. [u][b]Step 3 Compiling:[/u][/b] Now it&#8217;s time to build the qc file to compile the model. Take the qc from fiona.mdl, which will be a mess. Delete almost everything in the top part, all her face flexes, hboxs, and animation calls. However Keep the attachments! basically you'll be left with this: $cd "C:\whatever" $modelname "player\fiona\fiona.mdl" $cdmaterials "models\player\fiona\" $surfaceprop "flesh" $eyeposition -0.000 0.000 70.000 $attachment "eyes" "ValveBiped.Bip01_Head1" 3.95 2.62 -0.00 rotate -0.00 82.41 90.00 $attachment "forward" "ValveBiped.Bip01_Head1" 0.00 0.00 0.00 rotate 0.00 80.00 90.00 $attachment "chest" "ValveBiped.Bip01_Spine2" -0.00 -0.00 0.00 rotate 0.00 90.00 90.00 $illumposition -0.924 0.175 36.610 $sequence ragdoll "ragdoll" ACT_DIERAGDOLL 1 fps 1.00 $collisionjoints "phymodel.smd" {**BLAH BLAH BLAH JOINT CONSTRANTS*** } For the joint constrain data I would recommend increasing all the min/max numbers by about 20%, since those original constraints aren&#8217;t very flexible. Now you want to gather up all your files that were decompiled: The ragdoll.smd and phymodel.smd and this qc file from this Fiona.mdl, The qc file, the &#8220;mdldecompiler_expressions.vta&#8221; and smd from the fiona_face01.mdl, and all the reference smds from the hair and armor. Once you have them all together it&#8217;s time to add the $model to the qc file after $cd,. Should look like this: $model &#8220;Fiona&#8221; &#8220;pc_fiona_inner_armor03.smd&#8221; $model &#8220;hair&#8221; &#8220;pc_fiona_hair_natural_long_01.smd&#8221; $model &#8220;armor_hand&#8221; &#8220;pc_female_shiningwill_hand.smd&#8221; $model &#8220;armor_head&#8221; &#8220;pc_female_shiningwill_head.smd&#8221; $model &#8220;armor_foot&#8221; &#8220;pc_female_shiningwill_foot.smd&#8221; $model &#8220;armor_lower&#8221; &#8220;pc_female_shiningwill_lower.smd&#8221; $model &#8220;armor_upper&#8221; &#8220;pc_female_shiningwill_upper.smd&#8221; For the last part copy the $model line with all of it&#8217;s flex data from the decompiled &#8221;fiona_face01.mdl&#8221;&#8217;s qc. Should look like this: $model "face" "pc_fiona_face01.smd" { flexfile "mdldecompiler_expressions.vta" { *blah blah flex data* } **blah blah flex controllers** } In the face flex data you will need to correct one line. The decompiler renames the eyeball texture to "eyeball_r" / "eyeball_l". You will need to update that to "<name>_eyeball_r" / "<name>_eyeball_l". So for as per my example your eye lines should look like this: [code] eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 fiona_eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 fiona_eyeball_l 1.000 -3.000 fiona_pupil_l01 0.65 [/code] (Thank you Squiddy!) You can now compile the model using that qc. [u][b]Step 4 Textures:[/u][/b] Now copy and paste all the textures (vtfs and vmts) you need into where you set the material path to. You can find out what textures you need since they are all listed in each mdldecompiler.qc file (how convenient). You will need to update all of the vmts to have the $basetexture and $bumpbap lines point to the right folder, additional all the shaders at the top (first line of the file) will need to be changed to "VertexLitGeneric". After all the textures are copied over and the vmts You are ready to look at the model in HLMV. You should get this: [img_thumb]http://dl.dropbox.com/u/2004377/12-26-2010%204-12-47%20PM.jpg[/img_thumb] Oh no it&#8217;s all weird colors! Since Vindictus uses some sort of color mapping that gmod doesn&#8217;t support (so far as I know). You will need to edit the textures in Photoshop or GIMP to get them the way you want. I recommend creating 3 hue/saturation layers using each of the channels as there layer map. After that de-saturate the original texture then adjust the hue/saturation of each layer to your liking. It sounds like a lot of work but it&#8217;s fairly easy, since once you find the right hue/sat values you can simply reuse them on all the other textures. Once your done you should have this: [img_thumb]http://dl.dropbox.com/u/2004377/12-26-2010%205-03-22%20PM.jpg[/img_thumb] Congratulations: You can then test it in game, everything should work fine. [u][b]Step 5 Problem Solving/Misc Things:[/u][/b] If the model is too inflexible, adjust the joint constraints in the qc file. If there are a lot of cloth parts to the model, I would recommend looking for the bone names in the smds, and making them jigglebones. Also the same with hair. If parts of the model (skin / etc) clip through the armor, you will need to edit the inner armor smd with a 3d modeling program, and delete those parts that clip through. For example if the boots cover all of the feet, you can delete the feet vertices, or since most of her torso is covered by armor you can delete the vertices between her hips and breasts. Vindictus used a system to dynamically remove parts of models which I believe is related to the .clipping files, however I have no idea what to do with them to help you here. After that just recompile the model. If you want to do props they should be pretty straight forward. The weapon models are rigged on the Vindictus player skeleton, I would recommend stripping the bones and compiling them as a simple prop. If the face is missing eyebrows you have to find an eyebrow texture in the extracted Vindictus files and set it as an overlay on the face texture. You can also do this with some of the make-up textures or tattoo textures they have as well. Good luck and enjoy.
  • thanks 4 info. but i got a question. I already have extracted vindictus files(and it's sorted by file category) if u don't mind, would you kindly give a tutorial for that kinda extracted file?
  • I've never tried to de-compile and such so I kinda failed miserably, there we're allot more work than I thought but in the end I think I screwed up the QC.. Managed to compile it and I viewed the model in hlmv, didn't have any body textures, only the head and feet and teeth and such, but hopefully I'll fix it.
  • for someone like me who lacks 3ds or modeling exspriance, could you provide links to your fiona model?
  • incredible post. I subscribed this forum only to reply this post. thanks. but i don't understand that sentence, "You can now compile the model using that qc.". you mean I have to use source sdk or something else to make new mdl file which includes every part in it?
  • Read this. [url]http://developer.valvesoftware.com/wiki/Compiling_a_model#Compiling[/url]
  • Hm so, when I tried to compile one of the characters, I had to comment out the eyeballs under the flex controllers in order for it to compile. How did you circumvent this?
  • Any of the heads, actually. When I tried Fiona, the UVs were messed up on all four of her heads (including the base model's), too. For Lann and Evie I only had to comment out the eyeballs. Could be I ended up with a different version of the models... I'll be re-decrypting and extracting them all after the next patch.
  • All right, keep me posted. Worst case I can just upload the decompiled heads I have somewhere.
  • can you post full text of qc file that you used in converting job? I got too many obstacles in making qc file.
  • [code]$cd "C:\fiona\" $modelname "player\fiona\fiona.mdl" $model "fiona" "pc_fiona_inner_latex.smd" $model "foot" "pc_female_shiningwill_foot.smd" $model "hand" "pc_female_shiningwill_hand.smd" $model "head" "pc_female_shiningwill_head.smd" $model "lower" "pc_female_shiningwill_lower.smd" $model "upper" "pc_female_shiningwill_upper.smd" $model "hair" "pc_fiona_hair_natural_long_01.smd" $model "face" "pc_fiona_face01.smd" { flexfile "mdldecompiler_expressions.vta" { flex "blink" frame 5 flex "blink_ui" frame 6 flex "mild" frame 7 flex "smile" frame 8 flex "sad" frame 9 flex "sorry" frame 10 flex "hostile" frame 11 flex "angry" frame 12 flex "hurt" frame 13 flex "happy" frame 14 flex "upperlid_hi" frame 15 flex "surprised" frame 16 flex "laugh" frame 17 flex "mid_happy" frame 18 flex "haughty_open" frame 19 flex "haughty_closed" frame 20 flex "oo" frame 21 flex "mouth_a" frame 22 flex "chew_up" frame 23 flex "chew_down" frame 24 } eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 fiona_eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 fiona_eyeball_l 1.000 -3.000 fiona_pupil_l01 0.650 // If you uncomment the following lines the eyes will be closed // I'm including it anyway in case anyone wants to experiment // eyelid upper_right "mdldecompiler_expressions.vta" lowerer 3 -0.500000 neutral 3 0.000000 raiser 3 0.000000 split 0.1 eyeball righteye // eyelid lower_right "mdldecompiler_expressions.vta" lowerer 3 0.000000 neutral 3 0.000000 raiser 3 0.000000 split 0.1 eyeball righteye // If you uncomment the following lines the eyes will be closed // I'm including it anyway in case anyone wants to experiment // eyelid upper_left "mdldecompiler_expressions.vta" lowerer 4 -0.500000 neutral 4 0.000000 raiser 4 0.000000 split -0.1 eyeball lefteye // eyelid lower_left "mdldecompiler_expressions.vta" lowerer 3 0.000000 neutral 3 0.000000 raiser 3 0.000000 split -0.1 eyeball lefteye mouth 0 "mouth" ValveBiped.Bip01_Head1 0.000 1.000 0.000 flexcontroller eyelid blink "range" 0.000 1.000 flexcontroller eyelid blink_ui "range" 0.000 1.000 flexcontroller eye mild "range" 0.000 1.000 flexcontroller eye smile "range" 0.000 1.000 flexcontroller eye sad "range" 0.000 1.000 flexcontroller eye sorry "range" 0.000 1.000 flexcontroller eye hostile "range" 0.000 1.000 flexcontroller eye angry "range" 0.000 1.000 flexcontroller eye hurt "range" 0.000 1.000 flexcontroller eye happy "range" 0.000 1.000 flexcontroller eye upperlid_hi "range" 0.000 1.000 flexcontroller eye surprised "range" 0.000 1.000 flexcontroller eye laugh "range" 0.000 1.000 flexcontroller eye mid_happy "range" 0.000 1.000 flexcontroller eye haughty_open "range" 0.000 1.000 flexcontroller eye haughty_closed "range" 0.000 1.000 flexcontroller eye oo "range" 0.000 1.000 flexcontroller mouth mouth_a "range" 0.000 1.000 flexcontroller mouth chew_up "range" 0.000 1.000 flexcontroller mouth chew_down "range" 0.000 1.000 %blink = blink %blink_ui = blink_ui %mild = mild %smile = smile %sad = sad %sorry = sorry %hostile = hostile %angry = angry %hurt = hurt %happy = happy %upperlid_hi = upperlid_hi %surprised = surprised %laugh = laugh %mid_happy = mid_happy %haughty_open = haughty_open %haughty_closed = haughty_closed %oo = oo %mouth_a = mouth_a %chew_up = chew_up %chew_down = chew_down } $cdmaterials "models\player\fiona\" $surfaceprop "flesh" $eyeposition -0.000 0.000 70.000 $illumposition -0.924 0.175 36.610 $sequence ragdoll "ragdoll" ACT_DIERAGDOLL 1 fps 1.00 $collisionjoints "phymodel.smd" { $mass 55.0 $inertia 5.00 $damping 0.01 $rotdamping 1.50 $rootbone "valvebiped.bip01_pelvis" $jointconstrain "valvebiped.bip01_spine" x limit -10.00 10.00 0.20 $jointconstrain "valvebiped.bip01_spine" y limit -6.00 6.00 0.20 $jointconstrain "valvebiped.bip01_spine" z limit -3.00 39.00 0.00 $jointconstrain "valvebiped.bip01_r_thigh" x limit -15.00 8.00 0.20 $jointconstrain "valvebiped.bip01_r_thigh" y limit -3.00 6.00 0.20 $jointconstrain "valvebiped.bip01_r_thigh" z limit -17.00 88.00 0.20 $jointconstrain "valvebiped.bip01_l_thigh" x limit -8.00 15.00 0.20 $jointconstrain "valvebiped.bip01_l_thigh" y limit -3.00 6.00 0.20 $jointconstrain "valvebiped.bip01_l_thigh" z limit -17.00 88.00 0.20 $jointconstrain "valvebiped.bip01_l_calf" x limit -1.00 15.00 0.20 $jointconstrain "valvebiped.bip01_l_calf" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_calf" z limit -70.00 -15.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" x limit -15.00 15.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" y limit -6.00 6.00 0.00 $jointconstrain "valvebiped.bip01_l_foot" z limit -23.00 15.00 0.00 $jointconstrain "valvebiped.bip01_spine1" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_spine1" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_spine1" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_spine2" x limit -15.00 15.00 0.20 $jointconstrain "valvebiped.bip01_spine2" y limit -10.00 10.00 0.20 $jointconstrain "valvebiped.bip01_spine2" z limit -3.00 10.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" x limit -10.00 23.00 0.20 $jointconstrain "valvebiped.bip01_r_upperarm" y limit -32.00 -8.00 0.00 $jointconstrain "valvebiped.bip01_r_upperarm" z limit -46.00 17.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" x limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_clavicle" z limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" x limit -23.00 10.00 0.20 $jointconstrain "valvebiped.bip01_l_upperarm" y limit -8.00 32.00 0.00 $jointconstrain "valvebiped.bip01_l_upperarm" z limit -46.00 17.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" x limit -1.00 1.00 0.20 $jointconstrain "valvebiped.bip01_l_forearm" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_l_forearm" z limit -108.00 -15.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" x limit -15.00 17.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" y limit -17.00 10.00 0.00 $jointconstrain "valvebiped.bip01_l_hand" z limit -39.00 41.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" x limit -1.00 1.00 0.20 $jointconstrain "valvebiped.bip01_r_forearm" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_forearm" z limit -108.00 -12.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" x limit -37.00 26.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" y limit -15.00 23.00 0.00 $jointconstrain "valvebiped.bip01_r_hand" z limit -41.00 46.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" x limit -17.00 8.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" y limit 0.00 0.00 0.00 $jointconstrain "valvebiped.bip01_r_calf" z limit -70.00 -15.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" x limit -15.00 15.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" y limit -6.00 6.00 0.00 $jointconstrain "valvebiped.bip01_r_foot" z limit -26.00 8.00 0.00 $jointconstrain "valvebiped.bip01_head1" x limit -26.00 26.00 0.20 $jointconstrain "valvebiped.bip01_head1" y limit -32.00 32.00 0.20 $jointconstrain "valvebiped.bip01_head1" z limit -19.00 30.00 0.20 }[/code]
  • Haha, I found out the problem! The decompiler was setting the eyeball texture name under the flexfile to simply "eyeball_r" / "eyeball_l" instead of "<name>_eyeball_r" etc! :D It all works now! The only problem now is Fiona's face texture. [EDIT] I had to go through and modify the eyelid flexes a bit for Evie's eyes to stay open, but they were a'ok after that. :D If anyone else encounters a similar problem, I'll be happy to provide my .qc as a sample.
  • i think i encounterd the same problem. i used guistudiomdl 2.2 to compile, but an error occurs saying ERROR:~~~~~.qc(33): - can't find eyeball texture "fiona_eyeball_r" on model so i copied the file fiona_eyeball_r.vmt and vtf in the same directory and modified vmt like this "eyes" { "$basetexture" "fiona_eyeball_r" "$iris" "models/player/fiona/fiona_pupil_r01" "$halflambert" 1 "$nodecal" "1" } however the problem didn't solved.
  • [QUOTE=Squiddy;27993382]Haha, I found out the problem! The decompiler was setting the eyeball texture name under the flexfile to simply "eyeball_r" / "eyeball_l" instead of "<name>_eyeball_r" etc! :D It all works now! The only problem now is Fiona's face texture. [EDIT] I had to go through and modify the eyelid flexes a bit for Evie's eyes to stay open, but they were a'ok after that. :D If anyone else encounters a similar problem, I'll be happy to provide my .qc as a sample.[/QUOTE] Awesome. I must have forgotten doing that. Thanks.
  • I don't get the texturing part, can you perhaps add some pictures step by step to help me?
  • [QUOTE=segerokv;27994352]i think i encounterd the same problem. i used guistudiomdl 2.2 to compile, but an error occurs saying ERROR:~~~~~.qc(33): - can't find eyeball texture "fiona_eyeball_r" on model so i copied the file fiona_eyeball_r.vmt and vtf in the same directory and modified vmt like this "eyes" { "$basetexture" "fiona_eyeball_r" "$iris" "models/player/fiona/fiona_pupil_r01" "$halflambert" 1 "$nodecal" "1" } however the problem didn't solved.[/QUOTE] Vmts would have no effect on compiling a model. You need to edit the QC and rename the eye texture in the flex data in the qc.
  • 1) eye texture file is fiona_eyeball_r.vtf and fiona_eyeball_l.vtf, right? 2) so I copied these files in the same directory of desired qc file which also includes other smd files. 3) but my compiler said that it can't find eye texture file. so, copying vtfs in the same directory is not an proper solution? of course I matched names of vtf and qc's flex line. [editline]11th February 2011[/editline] 1) eye texture file is fiona_eyeball_r.vtf and fiona_eyeball_l.vtf, right? 2) so I copied these files in the same directory of desired qc file which also includes other smd files. 3) but my compiler said that it can't find eye texture file. so, copying vtfs in the same directory is not an proper solution? of course I matched names of vtf and qc's flex line.
  • The QC and VTFs are completely unrelated. VTFs are only referenced to by VMTs, which are specified by the model. What they mean is to change THESE two lines: eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 eyeball_l 1.000 -3.000 fiona_pupil_l01 0.650 So that they read like this: eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 fiona_eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 fiona_eyeball_l 1.000 -3.000 fiona_pupil_l01 0.650 Take note of how "eyeball_r" changed to "fiona_eyeball_r" THAT is what they mean. Moving the textures around has nothing to do with it. You can also avoid making mistakes like this by thoroughly reading the link necrobard provided.
  • [QUOTE=Squiddy;27999077]The QC and VTFs are completely unrelated. VTFs are only referenced to by VMTs, which are specified by the model. What they mean is to change THESE two lines: eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 eyeball_l 1.000 -3.000 fiona_pupil_l01 0.650 So that they read like this: eyeball righteye ValveBiped.Bip01_Head1 -1.290 -2.079 68.262 fiona_eyeball_r 1.000 3.000 fiona_pupil_r01 0.650 eyeball lefteye ValveBiped.Bip01_Head1 1.290 -2.079 68.262 fiona_eyeball_l 1.000 -3.000 fiona_pupil_l01 0.650 Take note of how "eyeball_r" changed to "fiona_eyeball_r" THAT is what they mean. Moving the textures around has nothing to do with it. You can also avoid making mistakes like this by thoroughly reading the link necrobard provided.[/QUOTE] I see. But like I said, I modified qc file from eyeball_r to fiona_eyeball_r then from hfs folder, I moved the texture file fiona_eyeball_r,l.vtf to the same directory of qc file Because I thought during compiling, compiler's gonna seek texture file named fiona_eyeball_r,l. But the problem is my compiler spit out error message says I can't find fiona_eyeball_r texture. So my question was this. where should I put fiona_eyeball_r.vtf ?
  • The compiler doesn't search for texture files. The flex data in the QC needs to match the texture as it's listed in the SMD, not what the actually texture files are named. You can open the smd in a text editor to figure out what texture the eye is assigned to, like so. [img_thumb]http://dl.dropbox.com/u/2004377/2-11-2011%2011-42-29%20PM.jpg[/img_thumb] (ctrl + f "eyeball") Also Ignore the file extension. The material files have [B]NOTHING[/B] to do with you compiling the model.
  • [QUOTE=necrobard;28000959]The compiler doesn't search for texture files. The flex data in the QC needs to match the texture as it's listed in the SMD, not what the actually texture files are named. You can open the smd in a text editor to figure out what texture the eye is assigned to, like so. [img_thumb]http://dl.dropbox.com/u/2004377/2-11-2011%2011-42-29%20PM.jpg[/img_thumb] (ctrl + f "eyeball") Also Ignore the file extension. The material files have [B]NOTHING[/B] to do with you compiling the model.[/QUOTE] It worked! Thanks! I really misunderstood about this problem.
  • So after fixing the eyeball problem, I've encountered something else, though it's in-game. The Eye Poser tool doesn't work on them, and their eyes will just track random places. Thoughts? [EDIT] Was solved by including the "eyes," "forward," and "chest" attachments. :D
  • To apply models in garry mod, I put mdl,vtx,vvd and phy files in the garrysmod/models folder. and put vmt and vtf files garrysmod/materials/models/fiona. then I edit every vmts' like "$basetexture" "models/fiona/~~vtf's file name~~" by doing that, I can summon models but every textures are check forms of purple and black colors. I think I did something wrong?
  • [QUOTE=segerokv;28007054]To apply models in garry mod, I put mdl,vtx,vvd and phy files in the garrysmod/models folder. and put vmt and vtf files garrysmod/materials/models/fiona. then I edit every vmts' like "$basetexture" "models/fiona/~~vtf's file name~~" by doing that, I can summon models but every textures are check forms of purple and black colors. I think I did something wrong?[/QUOTE] solved. was gmod's error.