[Sur Tutorial] Hitbox from 3DSMAX to Freelancer
-
Hello someone can translate i think
Part 1
Vous trouverez à la suite une méthode pour mixer la production de hitbox faites depuis 3DSMAX, pour ensuite arriver à la fin à des fichiers au format Freelancer viables.
Rien de révolutionnaire mais une méthode qui fonctionne comme vous le verrez à la fin avec les screens/vidéos :).Je tiens à dire immédiatement et vous allez le voir tout au long de ce tutoriel, que du moment où vous allez créer vos boites de collisions AVEC 3DSMAX vous pouvez faire toutes les formes CONCAVES que vous voulez …
Oui vous avez bien lu. Et même le ROOT.
Preuve :
Cet objet est complètement concave. Il possède même des faces inversées …
C’est dire comme il n’est pas conforme à ce qu’il faudrait …
Et pourant
Comme vous le voyez la boite de collision fonctionne. Freelancer ne plante pas !Je vais aussi vous montrer comment faire “un trou” dans une boite de collision avec l’outil Boolean ce qui vous permettra de produire ceci par exemple :
Dock de station, de vaisseau. Passage entre différentes parties d’une base. En bref une boite de collision qui collera le plus possible à votre modèle.Mais commençons par rendre à César ce qui appartient à César.
Dans ces lignes vous retrouverez avec quelques changements le tutoriel et la méthode donc, élaborée par TrueSilver pour la confection des Sur.
Je tiens à le remercier chaleureusement pour son travail, son aide précieuse et sa patience à toujours répondre à mes (trop) nombreuses questions :D.
Je tiens aussi à remercier CZW pour ses conseils avisés ;).
Travail préliminaire
Je commencerai donc par 3DSMAX 9.
Je précise la version car la 9 intègre une gestion avancée des Boleans notemment qui permettent de faire des docks fonctionnels pour les stations/vaisseaux.Je prendrais le cas le plus large c’est-à-dire en partant d’un CMP.
A : importer le CMP d’origine (si vous êtes entrain de le créer et bien importez votre CMP)
lancer milkshape 3D - File->Import->Freelancer CMP Importer.
Etape 1 : allez sélectionner le CMP.
Etape 2 : ne rien toucher.
Etape 3 : allez sélectionner le .mat associé au CMP.
B : exporter le CMP d’origine au format .3DS
Toujours dans milkshape orientez correctement votre objet 3D si ce n’est pas le cas avec rotate en “Center of mass”
Sélectionnez tout l’objet 3D et faites exporter en 3DSC : importer le 3DS dans 3DSMAX
Allez dans le menu Fichier et choisir importer.
Allez chercher votre 3DS tout fraichement exporté.
Vous vous rendrez compte que l’objet n’est pas orienté correctement.
Donc le sélectionner et faire un clic droit sur cet outil :
En général il y a une différence de 90° ou -90° entre milkshape et 3DSMAX
Vous obtiendrez ceci :
Faites les réglages comme sur l’image et faites “Entrée”.
Utilisation de 3DSMAX
Vous avez maintenant un objet 3D importé dans 3DSMAX.
Je fais ici un arrêt pour vous montrer quelques fonctions de 3DSMAX. Fonctions bien suffisantes pour la plus part de ce que vous aurez à faire.
Vous trouverez des tutoriels ici en langue anglaise : http://www.3dtotal.com/
Évidemment je n’ai pas la prétention de vous apprendre à vous servir de 3DSMAX mais cela fait maintenant 1 mois que je travaille avec, et pas 12 heures par jour bien sûr puisque j’ai aussi une vie non numérique ^^.
Qui a dit non ? xD. Et cela suffit bien à faire ce qu’il faut faire ;).Orienter et déplacer son point de vue dans 3DSMAX.
Par défaut la vue de 3DSMAX est celle-ci :
En cliquant sur le carré rouge vous agrandirez la fenêtre active (celle entourée de jaune fluo)
En cliquant sur le carré jaune vous passez en mode rotation autour de l’objet.
En cliquant sur le carré vert vous passez en mode déplacement de l’objet.
La molette de la souris vous permet de zoomer/dézoomer sur l’objet.
Ces commandes sont basiques mais importantes car elles vous permettront de voir ce que vous faites :).Vous pouvez aussi décider de changer la taille des 4 fenêtres de travail. Un exemple :
Les outils dont vous aurez besoin
Dans le premier onglet (en rouge)
“Primitive Standard”
Boîte
Sphère
Cylindre
Tore
Cône
Ces outils servent à dessiner. Vous allez voir qu’il faut parfois les déformer pour pour coller à l’objet 3D.
Cela semble un peu compliqué mais c’est largement abordable. A la fin je vous montrerez une vidéo avec les différents outils :).
Attention de ne pas vous servir d’autre chose que des Shapes.
Tout autre outil de dessin comme “lignes” fera en sorte que votre boite de collision fonctionne mais les soleils seront vus à traversLe deuxième onglet (en jaune) sert à modifier les formes que vous aurez dessinées.
Pour ce faire vous sélectionnez votre forme et vous cliquez dans “Liste des modificateurs”
Nous aborderons plus tard la fonction “Boolean” qui permet de créer par exemple un creux dans une forme.
Petites recommandations :
Soyez curieux des menus et de leur raccourcis.
W vous donnera l’outil de déplacement de la forme ou de la sélection.
E vous donnera l’outil de rotation de la forme ou de la sélection.
D’une façon générale la barre du haut possède deux fonctions :
un clic gauche qui sélectionne l’outil et qui vous permet de le faire fonctionner dans la forme.
un clic droit qui vous pop up une petite fenêtre de réglage.
l’exemple frappant de l’intérêt du clic droit vous apparaîtra tout seul avec l’outil rotationDessiner une forme.
Nous disposons d’un modèle dans 3DSMAX puisque nous l’y avons importer.
Alors bien sur avec les outils “Primitive Standard” nous pouvons dessiner des formes.Nous voulons dessiner autour de la partie supérieure
Dans le 1° onglet il existe plusieurs formes en “Primitives standard”.
Il vous faut choisir celle qui se rapproche le plus de la forme que vous voulez obtenir à la fin.
Dans cet exemple nous allons choisir le Cône.Il vous faut comprendre immédiatement comment 3DSMAX dessine un objet. Il décompose la forme en plusieurs éléments basique simple. Un cône est composé d’un cercle à la base, d’un cylindre et d’un cercle au sommet. Et c’est exactement ce que va dessiner 3DSMAX, chaque élément à la suite de l’autre.
Je vous dis cela car cela vous aidera à dessiner dans la bonne vue pour que votre élément soit assez bien placé/proportionné dès le départ.-
Sélectionner l’outil Cône et placez vous dans la vue par dessus (haut).
-
Placez votre curseur au centre et commencer à dessiner la forme.
Comment dessine t’on une forme. On clic gauche maintenu et on déplace son curseur. On vient de dessiner la 1° partie. On reclic gauche maintenu et on déplace le curseur. On vient de dessiner la 2° partie. On clic gauche …. Et ainsi de suite.
Cela peut paraître très abstrait comme cela mais essayez et vous comprendrez de suite. -
Dessinez au plus juste possible la forme et faire echap.
-
Allez dans le 2° onglet tout en ayant la forme que vous venez de dessiner, sélectionnée.
Vous retrouverez ici les paramètres de la forme.
Rayon 1, Rayon 2, Hauteur, Segm. hauteur, Segm couvercle, Côtés …
Chaque valeur fait varier une partie de la forme. A vous de tester pour régler cela au plus juste de la forme à entourer.
Je fais ici un petit aparté pour vous dire qu’il y a deux façon de modifier une forme que l’on vient de dessiner.
Elles ne sont pas opposées et on peut très bien les faire l’une à la suite de l’autre.
1° méthode : Convertir la forme que l’on vient de dessiner en maillage et modifier point par point.
2° méthode : Appliquer à la forme que l’on vient de dessiner un modificateur.Ce qui m’amène à vous parler de l’outil Maillage éditable.
Ce n’est rien de plus que la faculté de modifier l’objet que l’on vient de créer. Comme dans milkshape vous aurez des lignes, des faces et des points.
Chacun sélectionnable séparément et déplaçable séparément.
Exemple :
Je vous montre immédiatement que sur un maillage éditable on peut appliquer d’autres modificateurs.
Prenons par exemple l’outil Torsion.
Vous sélectionnez votre maillage éditable mais sans cocher une de ces cases :
Et vous allez rajouter l’outil Torsion
Faire varier votre angle pour déformer l’objet 3D.
L’intérêt ici n’est pas flagrant mais pour d’autres formes cela sera le cas :).Plutôt que de mettre encore des montagnes d’explications voici une vidéo afin que vous visualisiez le principe.
http://files.filefront.com/3dsmax+shapes1avi/;12354408;/fileinfo.htmlOutil Soft Selection
Parfois lorsque l’on dessine un objet avec des lignes on a besoin de les arrondir.
Voici le moyen.
http://files.filefront.com/3dsmax+softSelectavi/;12361618;/fileinfo.html-
Votre boite de collision pour cette partie est faite.
-
Faire un clic droit sur celle-ci et choisir ces réglages
Ceci est impératif. Si vous ne faites pas cela quand vous exporterez en .3DS votre forme et que vous l’importerez dans milkshape alors ce dernier ne la considèrera pas correctement. Vous la verrez mais votre boite de collision en final ne fonctionnera pas !!!
Je serais bref afin de ne pas vous abreuver d’explication à la noix …
Comment faire en sorte de “creuser” une boite de collision.
On pourrait se dire qu’il suffirait d’effacer certaines faces et puis roulez. Et bien non.
Car si tant est qu’on puisse dessiner des concavités dans 3DSMAX et qu’elles fonctionnent dans freelancer, encore faut t’il que les boites de collision soient … closes.Comment passer de ceci :
à cela :
Explications :
http://files.filefront.com/3DsMax+Booleanavi/;12355917;/fileinfo.html
Outil Soft Selection
Parfois lorsque l’on dessine un objet avec des lignes on a besoin de les arrondir.
Voici le moyen.
http://files.filefront.com/3dsmax+softSelectavi/;12361618;/fileinfo.html -
-
Part 2
Export de la forme en .3DS
Il n’y a pas 2 méthodes pour que milkshape comprenne la forme que vous venez de faire.
Chaque partie de votre boite de collision doit être exportée séparemment en fichier .3DS
Il vous faut faire exactement comme la vidéo le montre.
Je le résume :- Sélectionner la partie que vous voulez exporter et aller dans le menu Edition\Sélectionner inverse ou CTRL+i.
- Faire menu Edition\Supprimer.
- Il ne vous reste donc que la forme que vous voulez exporter.
- Allez dans le menu Fichier et choisir exporter.
- Placez vous en .3DS et allez dans votre dossier de travail.
- Je vous conseille de donner un nom explicite à votre 3DS. Par exemple : TIE_sur01.3DS
- Faire Annuler (CTRL + z) pour obtenir à nouveau toutes les formes (objet + boîtes de collisions)
- Faire de même pour la boîte de collision suivante.
http://files.filefront.com/3dsmax+xport3DSavi/;12354637;/fileinfo.html
Import de tout le matériel dans milkshape
Vous avez initialement importé un 3DS de votre base/vaisseau/planète/landscape … que sais-je encore
Cf : Travail préliminaire- Importez ce 3DS dans milkshape.
- Importez chaque 3DS des boites de collision dans milkshape.
- Même problème que précèdemment l’objet n’est pas dans le bon sens. A vous de l’orienter correctement.
http://files.filefront.com/mS3D+import3DSavi/;12355027;/fileinfo.html
Isolement de la Hit Box
Vous aurez besoin du tools pack de TrueSilver : http://files.filefront.com/hitbox+toolsrar/;12355436;/fileinfo.html
Vous avez donc votre objet et ses boîtes de collision dans milkshape.
Ici on reprend le tutoriel de TrueSilver.- Déselectionner tout.
- Allez dans l’onglet Group et EFFACER tout ce qui fait le VAISSEAU/BASE/PLANETE/ect <–-> CONSERVER LES ELEMENTS QUE VOUS VENEZ D’IMPORTER. Vérifiez bien qu’il n’y a plus que la hitbox.
- Allez dans l’onglet Material. Effacez tout. Faites nouveaux et renommez le en ‘sur’
- Allez dans l’onglet Group, sélectionner toute la hitbox
- Retourner dans l’onglet Material, sélectionner ‘sur’ et cliquez sur “Assign”
Organisation de votre travail
Vous allez vous rendre compte que la partie la plus difficile tient dans le fait de bien organiser ce que l’on fait.
Donc vous retournez dans Group et vous nommez chaque partie de votre hitbox avec un nom reconnaissable.Je prends un exemple qui servira tout au long donc rentrez le vous dans le crâne de suite ^^.
Je change volontairement de modèle.-
Vaisseau Blacksun possèdant 14 groupes pour le vaisseau en lui même. Il y aura 6 boites de collision.
-
Sauvegarder votre travail (par exemple bs_sur.3ds)
C’est très important car si vous ne sauvegardez pas vous aurez tout à refaire … Je vous aurais prévenu.
Création d’un .ini
Je vous fais créer cet ini maintenant car les noms des fichiers .SUR sont déterminés ici. Et nous devons mettre les mêmes à l’export.
- Allez dans votre dossier de travail. Celui là même ou vous devez avoir cmd.exe, sur_splice.exe, utf_edit.exe, splicer.bat.* Ouvrir le fichier ini.ini et le remplir comme suit :
[*] bs_light.sur [*] bs_light_cons_fix.dat [*] Radius du vaisseau. {Pour cela on ouvre le CMP d'origine dans FlModelTools.exe et on va chercher la valeur} [*] X Y Z {Mettre 3 fois la masse avec un espace entre} [*] bsl_S01.sur Root [*] bsl_S02.sur bsl_S02_lod1 [*] bsl_S03.sur bsl_S03_lod1 [*] bsl_S04.sur bsl_S04_lod1 [*] bsl_S05.sur bsl_S05_lod1 [*] bsl_S06.sur bsl_S06_lod1 [*] ....... ect pour autant de partie de hitbox que vous avez. [*] Sauvegardez l'ini. [hr][/hr][center][color]Création d'un .sur par partie de la hitbox[/color][/center] [hr][/hr] Nous avons donc 6 parties de hitbox. [*] Vous avez donc 6 groupes qui n'ont pas des noms forcément très représentatifs de ce qu'ils sont. Donc vous allez les renommer avec les noms qui sont dans l'ini. [*] Ensuite toujours dans l'onglet Group, effacer tous les éléments sauf le premier [*] Allez dans le menu File->Export->Freelancer Sur Exporter [*] Choisir l'emplacement d'enregistrement et donc le nom. Le nom du fichier DOIT IMPÉRATIVEMENT ÊTRE le même que celui dans l'ini. Par exemple bsl_S06.sur. [*] Pour les options choisir "Back To Front", Collision doit être sur "Shrink Wrapped" et Scale Down sur "1", masse sur 100\. [*] Une fois fait faite ok ----> Vous aurez donc fait un fichier bsl_S06.sur. [color][size]Recommencez autant de fois que vous avez de parties de HitBox[/size] Et c'est pour cela que vous avez dû sauvegarder votre HitBox pour pouvoir la recharger si vous vous mélangez avec les CTRL+Z et faire ainsi de suite pour chaque partie de la HitBox.[/color] Vous avez tout exporter ? Bravo et maintenant commence la partie difficile :D [hr][/hr][center][color]Création d'un fichier de Stat[/color][/center] [hr][/hr] [*] double cliquez sur splicer.bat [*] Il va vous montrer quelque chose comme ceci : [img]http://img215.imageshack.us/img215/8179/screen2hi5.jpg[/img] [*] Vous avez deux nouveaux fichiers : bs_light.sur et bs_light_con_fix.dat [hr][/hr][center][color]Exporter un CMP modifié[/color][/center] [hr][/hr] - Ouvrir un autre milshape et importer le 3ds de tout à l'heure ou bien le cmp d'origine. - On va rajouter des objets "fantômes". Pour ce faire allez dans l'onglet Model et sélectionner Sphère. Dessinez une sphère, la plus petite possible et bien sur [u][b]DANS[/b][/u] le corps du vaisseau. Il vous faut faire X-1 sphère où X = le nombre de .SUR - Renommez chaque sphère avec le nom des sur. Au départ vous aurez ceci : [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/15.jpg[/img] Et à la fin celà : [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/16.jpg[/img] Ici ma méthode diffère légèrement de celle de TrueSilver puisque je me sers de l'exporter v3 qui importe dans le cmp le fichier de stat directement. De plus pour les grands objets j'ai observé qu'avec l'exporter v2.1 l'objet disparaissait lorsqu'on ne le regardait pas au centre. Pas avec la v3. - Maintenant exportons le CMP : - Sélectionnez tous les groupes et aller dans SCALE. - Mettez vous en Origin et mettez 92 pour chaque axe. Comme ceci : [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/22.jpg[/img] - Ensuite faire : File->Export->Freelancer CMP Exporter V0.3->Create new CMP. Le nommez correctement Options : - Detail :arrow: 0 - Orientation : Back to front - Scale Down : 100 - Et on se calme on a des choses a faire dans "Number Of Groups". Vous vous souvenez que nous avons 14 groupes pour ce vaisseau et 6 groupes de boites de collisions ? Dans number of groups on met 6. Juste en dessous "Group Quantities" change. Dans le premier groupe on met le nombre de groupe du vaisseau. Dans notre exemple 14 Et dans chaque autre groupe 1. Comme ceci : [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/23.jpg[/img] - Faire "Continue" [hr][/hr][center][color]Altération du CMP exporté[/color][/center] [hr][/hr] Vous avez mal à la tête ? Normal ... :green: Mais c'est là fin lachez pas la rampe maintenant que le plus dur est fait ;) [u]Fichier de Stats[/u] - Lancez UTF Editor. - Sélectionnez le CMP que l'on vient d'exporter. - Cliquez sur le "+ " - Allez dans \Cmpnd\Cons\Fix. Vérifiez bien que ce ne soit pas vide. Si tel n'est pas le cas (mais normalement l'exporter V0.3 importe le fichier de stat) faire comme suit : - Toujours fans Fix cliquez sur Import et allez chercher le fichier .dat - Revenez dans Fix et là vous avez des valeurs :) [u]Nom du groupe ROOT[/u] Vous avez noté que tout à l'heure quand nous avons fait les sphères nous avons mis X-1 sphères donc le 1° groupe dans votre CMP n'a pas le bon nom :) - Vous avez : "Group1_lod1.3db. Vous devez renommez ceci comme le 1° nom de votre ini. Dans l'exemple ce sera : bsl_S01_lod1.3db. Pour renommer on sélectionne la ligne, on attend 3 secondes et on re sélectionne la ligne. Cela la met en bleu et vous pouvez renommez. - Il faut aller faire la même chose dans \Cmpnd\Root\File name\ Sélectionnez File name. A droite vous avec un bouton Edit. Juste à sa gauche vous avez "Float Array". A l'aide des petites flèches montez jusqu'à trouver "string". Sélectionnez le et faites Edit. Renommez en bsl_S01_lod1.3db. - Bravo il ne vous reste plus qu'à aller faire les hardpoints en vous basant sur ceux de l'ancien CMP ;) http://files.filefront.com/ms3D+cmpProdavi/;12355474;/fileinfo.html Voilà avec ceci vous pouvez faire toutes formes de boites de collisions.
-
I told Mirkha to post this up in French since he’s already put so much time into making this tutorial and really needs a break from it :). For those of you that can understand French well, I implore you to translate this for the rest of the community. Unfortunately, I don’t feel my French is good enough to write this tutorial in English in the detail it deserves. But, from what I do understand of French, he’s done a fabulous job and deserves all of our appreciation for explaining this great leap in FL hitboxing
-
From the little pices of french i do understand i must say this one looks good.
Hopefully someone with good french knowledge will translate it soon, we have such a player on NU but he’s a modding noob and might not be the best person for the job@Mirkha: Good job keep the good work.
-
Part 1
You will hereby find a method for creating hitboxes made in 3ds Max and convert them in viable Freelancer formats.
Nothing revolutionary, but it’s still a method which works well, as you’ll see at the end of this tutorial in the videos and screensI immediately want to say (and you will see this throughout the tutorial) that as long as the collision hitboxes are made WITH 3ds Max, you can actually include CONCAVE shapes.
You read that well; even with ROOT.
Proof:
This object is totally concave; it even has a few inverted faces…
That’s saying how different it is from what it “should” be…
But…
As you can see here, the hitbox works. Freelancer does not crash!I will also show you how to make a “hole” into the hitbox with the boolean tool, which will allow you to do something similar to this, for example:
Station docking bay, ship docking bay. Passageways between different parts of a base. In short, a hitbox which should wrap as much as possible to your model.But first, let’s give some credits where it’s due.
In this tutorial, you will find, with a few changes, the method thought up by TrueSilver for making SURs.
I also wish to thank him greatly for his work, his precious help and his patience to always answer to my (too) numerous questions :D.
I also want to thank CZW for his good tips ;).
Preliminary Work
I will start with 3ds Max 9.
Be advised Max 9 includes an advanced booleans management, which can help making functional docks for ships and stations.
I’ll use the broadest case: starting from a CMP.A : import the original CMP (if you are creating it, just import it)
lancer milkshape 3D - File->Import->Freelancer CMP Importer.
Step 1 : Go select the CMP.
Step 2 : Don’t change a thing.
Step 3 : Select the MAT that goes with the CMP.
B : Export the original CMP as a 3ds file
Still in Milkshape, properly orient your 3D object if it isn’t already the case using the rotate tool set as “Center of mass”. Select the whole 3D object and export as 3ds.
C : Import the 3ds into 3ds Max
Under the File menu, select Import.
Browse to your new 3ds file.
You will most likely see your object is not oriented properly.
Select it and right click on the Rotate tool.
In general, there is a difference of plus or minus 90 degrees between MS3D and 3ds Max.
Using 3ds Max
You now have an object imported into 3ds Max.
I will now open a small parenthesis to guide you through some of Max’s functions. Those are sufficient for most of what you will have to do here.
You will find some good tutorials over at 3D Total.
Of course, I’m not saying I will be showing you how to use 3ds Max; I’ve only been using it for a month and that’s not 12 hours a day ^^ (I DO have a real life).
Who said no? xD. In any case, it’s plenty to do what needs to be done ;).Moving and orienting your point of view in 3ds Max
This is the default view in Max:
By clicking on the red square, you can enlarge the active viewport (framed in bright yellow)
Clicking on the yellow square will make you go into arc rotate mode around the object.
Clicking on the green square will get you into pan mode.
Using the mousewheel will let you zoom in/out on the object.
Those commands might be basic, but they also are essential since they allow you to see what you’re doing :).You can also decide to change the size of the 4 viewports. An example:
Tools you will need
In the first tab (in red)
“Standard Primitives”
Box
Sphere
Cylinder
Torus
Cone
Those tools allow you to draw new polygons. You will sometimes have to deform those to fit them to the 3D object.
This may seem a bit complicated, but it’s very doable. At the end, I’ll show you a video with the different tools :).
Careful not to use something else.
Any other tool, such as splines, will make your hitbox work, but the sun flares will show through.The second tab (in yellow) is used to modify the shapes that you will have laid out.
To do this, you select your shape and go in the “Modifier List”.
We will speak about the Boolean function later to create holes in a shape.
Small tips :
Be curious: look at what menus do and what their shortcuts are.
W will select the move object tool.
E will select the rotate object tool.
In general, the top toolbar has two functions:
A left click will select the tool and will let you use it directly.
A right click will let you use a dialog to set the parameters more precisely.
A striking example of an use for the right-click option will show up with the rotate tool :D.Laying a Shape
We have a 3ds Max model that we just imported.
With the Standard Primitive tools, we can draw out shapes.We want to draw around the upper part
In the first tab, there are many shapes under Standard Primitives.
You must choose the one which matches as closely as possible the shape you want to get at the end.
In this example, we will use a cone.You must immediately understand how 3ds Max draws an object. It decomposes a shape in multiple simple elements. A cone is made up of a circle at its base, of a cylinder and of another circle at the top. That’s exactly what 3ds Max will draw down, each element one after the other.
I am telling this to you as that will help you draw in the good view in order for your element to be well proportioned/placed right off.-Select the cone tool and go into top view.
-Place your cursor in the center and start dragging the shape.
In order to draw a shape, left-click and hold and move your mouse. Release to draw the first section. Move the mouse again and left-click to set down the 2nd section. Once more for the 3rd part and so on.
This can look very abstract like this, but try it out and you’ll catch fast.-Lay the shape down as closely as possible and press Escape.
-Go into the second tab with the shape still selected.
You will find the parameters of that shape under this section.
Radius 1 and 2, height, height segments, cap segments, sides…
Each value will make a part of the shape vary. Up to you to test it all out to make it as tight a fit as possible.Again, a small parenthesis. There are to manners to modify the shape we’ve just laid down.
Those are not opposite and you can well use both one after the other.
1st method: convert the shape we just created as a Mesh and modify it vertex-by-vertex.
2nd method: apply to the shape some modifiers.This brings me to the Editable Mesh modifier.
This gives nothing more than a way to modify the object we just created. As in Milkshape, we will have edges, faces and vertice.
Each sub-part can be selected and moved independently.
Exemple :
I’ll immediately show you that you can apply a modifier on top of an Editable Mesh.
Let’s take the Twist modifier.
Select your whole editable mesh without activating any sub-selection mode.
Go in the Modifiers List and select Twist.
Make your angle vary to deform your 3D object.
The interest here might not be great, but for other shapes it can be :).Instead of putting a ton of explanations, here’s a video to teach you the basics.
http://files.filefront.com/3dsmax+shapes1avi/;12354408;/fileinfo.htmlSoft Selection Tool
Sometimes when we try to draw an object with lines, we need to smooth them.
Here’s the way.
http://files.filefront.com/3dsmax+softSelectavi/;12361618;/fileinfo.html-
Your hitbox is done for this part.
-
Do a right-click and select “Convert to Editable Mesh” under “Convert To:”
This is imperative. If you do not do this when you re-export into 3ds format and then import into MS3D, it won’t read it properly. You will see the hitbox, but it won’t work in the game!
I’ll be brief in order not to flood you will long explanations…
How to “dig” a hole into a hitbox.
Even if you can draw holes into 3ds Max and make them work in FL, the hitboxes still have to be closed surfaces.How to go from this:
To this:
Explanations:
http://files.filefront.com/3DsMax+Booleanavi/;12355917;/fileinfo.html
Soft Selection Tool
Sometimes when you draw an object you need to smooth them.
Here is the way.
http://files.filefront.com/3dsmax+softSelectavi/;12361618;/fileinfo.html -
-
Part 2
Exporting the Shape as 3ds
There aren’t two methods for Milkshape to understand the shape you’ve just done.
Each part of your hitbox has to be exported separately into 3ds files.
You must do exactly how the video shows.
To summarize:- Select the part you want to export and select Edit, Select Inverse (or just use Ctrl+I)
- Do Edit, Delete.
- You now only have the shape you want to export.
- Go in File, Export.
- Select 3ds file format.
- I suggest you give an explicit name to your 3ds file, such as TIE_sur01.3DS
- Undo (Edit, Undo or Ctrl+Z) to revert back to before you deleted all the other objects.
- Repeat the procedure for the next hitbox.
http://files.filefront.com/3dsmax+xport3DSavi/;12354637;/fileinfo.html
Importing everything into Milkshape
You initially imported a 3ds file of your base/ship/planet/whatever.
See: Preliminary Work.- Import that 3ds into Milkshape.
- Import each of the 3ds of the hitbox into milkshape.
- Same as before: the object does not have the proper orientation. Just fix it all like before.
http://files.filefront.com/mS3D+import3DSavi/;12355027;/fileinfo.html
Isolating the Hitbox
You’ll need TrueSilver’s toolpack: http://files.filefront.com/hitbox+toolsrar/;12355436;/fileinfo.html
You have your object and its collision boxes in MS3D.
Here, we use TrueSilver’s tutorial.- Deselect everything.
- Go to the Group tab and DELETE everything not part of the hitbox (such as the actual model). Make sure only the hitbox remains.
- Go in the Material tab. delete everything. Make a new material and name it “sur”.
- Go back to the Group tab and select the whole hitbox.
- Go back to the Material tab, select the “sur” material and click on “Assign”.
Organizing your work
You will realise that the hardest part is organizing everything.
Therefore, go back to the Group tab and rename each part of your hitbox into something you can recognize.I’ll pick an example which will serve for the rest of this tutorial so get it in your head already ^^.
-
Blacksun Ship having 14 groups for the ship itself. There will be 6 hitboxes.
-
Save your work (for example bs_sur.3ds)
This is very important as if you didn’t save here you’ll have to redo it all… I’ve told you now.
Creating an .ini
I will now create this INI since the SUR filenames are determined here. We must put the same ones for the exporting.
- Go in your work folder. You should have cmd.exe, sur_splice.exe, utf_edit.exe, splicer.bat in it (from TrueSilver’s toolpack).* Open ini.ini and fill it as follows
[*] bs_light.sur [*] bs_light_cons_fix.dat [*] Radius of the ship (open the CMP with FLModelTool to get that value) [*] X Y Z (put three times the mass with a space in between) [*] bsl_S01.sur Root [*] bsl_S02.sur bsl_S02_lod1 [*] bsl_S03.sur bsl_S03_lod1 [*] bsl_S04.sur bsl_S04_lod1 [*] bsl_S05.sur bsl_S05_lod1 [*] bsl_S06.sur bsl_S06_lod1 [*] ....... etc for as many hitbox parts as you have. [*] Save the 'ini. [hr][/hr][center][color]Creating a SUR Per Part of the Hitbox[/color][/center] [hr][/hr] We now have 6 parts for the hitbox. [*] You therefore have 6 groups without necessarily representative names of what they are. You will therefore rename them with the names you have put in your INI. [*] Afterwards, still under the Group tab, erase every element except the first. [*] Go into the menu File->Export->Freelancer Sur Exporter [*] Choose the emplacement to save the file and the name. The name of the file MUST be the same as the one in the INI, such as bsl_S06.sur [*] As far as options go, select "Back To Front", collision must be "Shrink Wrapped" and scale down set to "1", mass on 100. [*] Once all good, click on OK; you will have a file bsl_S06.sur. [color][size]Repeat the process for as many times as necessary with all the hitbox parts[/size] This is why you had to save your Hitbox's MS3D file first, so you can reload it if you screw up with the Undos.[/color] Everything's exported? Now is the hard part :D [hr][/hr][center][color]Creating a Stat file[/color][/center] [hr][/hr] [*] double-click on splicer.bat [*] It'll show you something similar to this: [img]http://img215.imageshack.us/img215/8179/screen2hi5.jpg[/img] [*] You should now have two new files : bs_light.sur et bs_light_con_fix.dat [hr][/hr][center][color]Exporting a modified CMP[/color][/center] [hr][/hr] - Open another Milkshape window and import the 3ds of the model or the original CMP. - We will now add "ghost" groups. In order to do this, go under the Model tab and select Sphere. Draw a sphere that's as small as possible [u][b]WITHIN[/b][/u] the ship's mesh. You need to have N-1 spheres, where N is the number of parts you had in the SURs - Rename each sphere with the SUR part's name You'll start with this: [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/15.jpg[/img] And end with this: [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/16.jpg[/img] Here my method differs slightly from TrueSilver's since I use the version 3 exporter which imports into the CMP the Stat file directly. On top of that, for larger objects I've seen that with the 2.1 exporter the object disappeared when you didn't see the object's center. That is not the case with version 3. - Let's export the CMP: - Select all the groups and go in SCALE. - Select Origin and put 92 for each axis. Just like this: [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/22.jpg[/img] - Then, go to File->Export->Freelancer CMP Exporter v0.3->Create New CMP Name it correctly. Options : - Detail :arrow: 0 - Orientation : Back to front - Scale Down : 100 - Let's calm down now, we still have a few things to do under "Number of Groups". Remember we had 14 groups for the ship and 6 for the hitbox? Right below "Group Quantities", change... In the first group, put the amount of groups of the ship; in this case 14. In each other group, put 1 for as many hitbox groups as you had (minus one). Like this: [img]http://soler.sebastien.free.fr/TUTO/Tuto_sur/23.jpg[/img] - Select "Continue" [hr][/hr][center][color]Modifying the Exported CMP[/color][/center] [hr][/hr] You've got a headache? Normal ;D Don't worry, we're near the end now; hardest is done! [u]Stats File[/u] - Boot UTF Editor. - Select the CMP we just exported. - Click on the "+" - Go into \Cmpnd\Cons\Fix. Make sure it isn't empty. If this isn't the case (Although normally the 0.3 exporter imports the Stat file), do as follows: - Still under Fix, click on Import and browse to the DAT file - Go back in Fix and now you have values :) [u]ROOT Group Name[/u] You've noticed before, when we did the spheres we put N-1 spheres. This means the group #1 in your CMP doesn't have the proper name :) - You have: "Group1_lod1.3db". You must rename it to be like the first name in your ini. In the example this would be: bsl_S01_lod1.3db. To rename select the line, wait 3 seconds and select the line again. This will highlight it in blue and you'll be able to rename it. - You must do the same in \Cmpnd\Root\File name\ Select File name. Click on the Edit button to the right. Right to its left you have "Float Array". With the small arrows go up to "string". Select that and click on Edit. Rename it to bsl_S01_lod1.3db. - Congratualtions, all you need now is to redo the hardpoints based on the older CMP ;) http://files.filefront.com/ms3D+cmpProdavi/;12355474;/fileinfo.html Here you go! With this you should be able to make all kinds of shapes for hitboxes.
-
Sorry if there is any spellingz errorz, it’s late and translating all that stuff in a single shot made me a bit dizzy ;D
-
Wow, thanks for doing this FF. This is a great translation Maybe replace Mirkha’s French post with your English, so people don’t get confused?
I also posted your translation at our site with all the proper bbcoding that Mirkha originally used: http://www.freeworlds-mod.net/forum/viewtopic.php?f=140&t=3471
-
We use 1:1 at FWs.
-
Thx Mirkha …
i haven’t the time yesterday to translate it … thx to FriendlyFire to have done it …This is a long work we have done with Mirkha of testing step by step all this tutorial
with this method, and this soft, you could create ring, tubular form , boolean form, convace form and convex form with ANY problem of SUR in space …
and now without Sun light throught an objectat this time, if someone have enough knowledge to delevop a import/export function for 3Dmax, it will be great …
why we have use 3Dmax, cuz Milkshape is very buggy to create complex form and impossible to do boolean operation
vertex 3d posittionning and orientation could create bugs into the SUR with milkshape, not if your bow was done with 3Dmax .please , to all who will use this tutorial, just post a thx into your credit for , Mirkha & CzW , that’s just we requiring …
hope now work on Syd information to animate models …
with this tuto, i think we could do great thing with animate model -
looks good thanks for that.
Does anybody know what scale in max you should use that fits with Freelancer model scales? (saves re-sizing)
we have use this setting …
1 unit in milkshape is 1 meter in game …
we have scale it to a PNC in game with a box for comparaison -
If my CMP model is one part (not only one group), how to make it to work ?
Same as above ?
your cmp could be in multiple part, it doesn’t matter
you could have a cmp in only one volume or in separate element …
when you do the SUR, box will be close to your CMP
you could do a solid one bloc SUR , or a multiple SUR for destructible component or animate part …
if you do multiple SUR, better to do multiple CMP, with parent function for destructible of animateCzW
-
looking on this tutorial i must say that its a method that i only want to use on very complex objects coz its much more complicated then creating surs in ms3d and much more time consuming
i guess its good for creating stations surs… but not good for ship surs.
-
I’m getting an issue when I try to run splicer.bat
C:\Users\Antares\Desktop\hitbox_tools\hitbox tools>sur_splice.exe ini.ini
Could not open output file* C:\Users\Antares\Desktop\hitbox_tools\hitbox tools>pause
Press any key to continue . . .This is my ini.ini ``` [*] ds_light.sur [*] ds_light_cons_fix.dat [*] 10517.076172 [*] 4856.150391 4860.586914 4856.150391 [*] dsl_S01.sur Root The only sur I have is called dsl_S01.sur and it's in the same folder. Any ideas? [code] Fix: remove the [*] at the beginning of each line in the ini.[/code] ```