Archiv verlassen und diese Seite im Standarddesign anzeigen : Collisions Model
Moin,
Ich habe vor kurzem damit angefangen Modele aus 3Ds Max ins Spiel zu bringen, das funktioniert auch ganz gut abgesehen davon dass ich es nicht schaffe ein Begehbares Objekt zu kompilieren.
Nach einigen versuchen des ändern der Befehle in der QC - Datei gebe ich es jetzt auf und bitte auch um Hilfe ^^,aber ich habe den Fehler entdeckt und zwar ist das Collisionsmodel der Übeltäter leider weiß ich nicht wie ich das ändern kann.
http://heite.pytalhost.com/collision.jpg
Das Linke ist meins (ist nicht das eigentliche Model aber zu testzwecken nutze ich es) und dies sollte eben mehr wie das Rechte aussehen damit man durchgehen kann.
Und hier ist meine aktuelle QC - Datei
$modelname "cylin\cylin.mdl"
$cdmaterials "cylin\"
$scale 10
$surfaceprop "plastic"
$keyvalues { "prop_data" { "cylin" "Plastic.Medium" } }
$body studio "cylin"
$sequence idle "cylin" loop fps 1
$collisionmodel "cylin.smd" {
$automass
$maxconvexpieces
}
Hoffe beim Suchen in Google und hier nichts übersehen zu haben.
MfG
DasMatze
14.05.2010, 01:39
Ein Kollisionsmodel besteht aus einzelnen konvexen (http://de.wikipedia.org/wiki/Konvexe_Menge) Gruppen. Alle Gruppen in Untergruppen und alle konkaven Gruppen werden zu einer konvexen Gruppe zusammengefasst. Hier ein paar Beispiele, wie es sein sollte:
http://img693.imageshack.us/img693/4157/kollisionsmodel.th.jpg (http://img693.imageshack.us/img693/4157/kollisionsmodel.jpg)
Ist anfangs etwas umständlich, aber die einzige mögliche Methode.
BTW: Du kannst die Anführungszeichen in der QC Datei weglassen. Die geschweiften Klammern bei $keyvalues sollte man ähnlich wie bei $collisionsmodel anordnen, damit die Übersicht gewahrt bleibt (QC Dateien können sehr lang werden) und $maxconvexpieces bringt nichts, wenn dahinter nicht ein Wert steht. Wenn du mit dem Orange Box Compiler compilest (solltest du), dann bringt $maxconvexpieces eh nichts mehr. Stattdessen musst du den Kommandozeilenparameter -fullcollide beim Compiler hinzufügen, damit er die maximale Anzahl an konvexen Gruppen ignoriert und alle compiled (Ich nehme an du nutzt den Studio MDL Compiler, da einfach ein Haken bei "Full Collide" setzen).
Gegebenenfalls noch $concave als Parameter einbauen, falls das Kollisionsmodell Konkave ist.
(Schreckliches) Beispiel:
http://pac.gmod.de/Modeling/XSI/Tutorials/ugly_example.JPG
Ne ich mach das per Konsole alles andere lief bei mir irgendwie nicht. Und die QC erstelle ich per HL2 Compile Toolkit.
Und das ist schon der von Orangebox, aber als ich den Befehl einmal genutzt habe ging es, der Rest des Befehls ist noch drin für den Fall dass ich ihn noch brauche.
Und was die konvexen etc. angeht inwiefern muss ich das dann ändern?
$concave habe ich immer mal wieder drin zum testen aber das hat irgendwie auch nicht geändert.
Und wie sieht das eigentliche Model zu der F-302 aus, würde mich interessieren. ^^
MfG
DasMatze
14.05.2010, 02:32
$concave habe ich immer mal wieder drin zum testen aber das hat irgendwie auch nicht geändert.
Weil du ja auch nichts am Kollisionsmodel geändert hast. Schau doch meine Bilder an und sieh, dass man einzelne Gruppen benötigt, die konvex sein müssen, also jedes Segment des Kreises der Röhre einzeln.
Also ich habe in 3DsMax 18 Boxen erstellt jede dieser Box stellt eines der Segmente da und damit habe ich es dann versucht aber geklappt hat es so auch nicht. habe es dann einmal so gemacht dass ich alle per Attach verbinde und einmal alle einzelnd gelassen aber das Ergebnis war das gleiche.
Wie schaut das denn aus muss ich einzelne Teile des "Tunnels" als SMD exportieren und die dann alle in der QC-Datei auflisten?
$collisionmodel "cylin.smd" {
$automass
$concave
}
$collisionmodel "cylin2.smd" {
$automass
$concave
}
$collisionmodel "cylin3.smd" {
$automass
$concave
}
$collisionmodel "cylin4.smd" {
$automass
$concave
}
so in etwa?
MfG
WeltEnSTurm
14.05.2010, 08:59
$scale 1
Und was genau willst du mir jetzt damit sagen, es ist doch egal ob ich $scale 1 oder wie in meinem Fall $scale 10 verwende ist doch am Ende dasselbe Objekt nur eben größer oder kleiner oder liege ich da falsch ?
MfG
$concave habe ich immer mal wieder drin zum testen aber das hat irgendwie auch nicht geändert.
Und wie sieht das eigentliche Model zu der F-302 aus, würde mich interessieren. ^^
MfG
Da gibt's Bilder:
http://www.facepunch.com/showpost.php?p=21558260&postcount=47
:D
Du musst die einzelnen Boxen zu einem einzigen Objekt/Mesh zusammenfüge/mergen.
DasMatze
14.05.2010, 15:29
Genau. Segmente erstellen, jedes einzelne gruppieren, als eine SMD Datei exportieren, ein Verweis in der QC Datei machen.
$collisionmodel "cylin.smd"
{
$automass
$concave
}
Das stimmt schon, du hast nur einen entscheidenden Fehler:
1. ein richtiges Physmodel kann immer nur eine EXTRA SMD sein, in der viele convexe Meshe vorhanden sind. Wenn du XSI nutzt kann es sein, dass du zuerst was umstellen musst. Und zwar: Explorer-> ein Mesh (egal welches) -> Global Mesh Proximity (oder so) und dann auf NEIN -> Discontiunity -> Ausschalten!
Bzgl. dem was €r!k wegen XSI erwähnt hat, hier 'n Tutorial was ich mal für einen im FP geschrieben habe :D
http://pac.gmod.de/Modeling/XSI/Tutorials/XSI_Coll_Model.jpg
Also ich habe nun für jedes Segment eine Box erstellt und diese lasse ich dann einfach so und exportiere das ganze oder muss ich sie zuerst per attach verbinden oder was DasMatze meinte jede Box einzelnd gruppieren?
MfG
PS: nutze 3dsmax 2009 also kein XSI
Edit:
Also jede Box eine Gruppe geht bei mir nicht wirklich da kommt dann garkeine .phy datei am ende raus oder ich hab da was falsch gemacht.
Alles einfach einzeln lassen hat bei mir auch nichts gebracht das Ergebnis schaut genauso aus wie auf der 1. Seite.
Eine deiner Boxen auswählen, dann im rechten Menü auf den Modifyer Tab dort runter scrollen und "Attach" Button anklicken, dann alle Boxen anklicken die dazu gehören.
Mit Rechtsklick beendest du das Tool.
Schon ist alles ein einzelner Mesh ;)
funktioniert nicht das Collisiondmodel sieht so wie vorher aus.
-edit mesh ausgewählt
-per Attach alle anderen Boxen hinzugefügt
Stimmt doch so oder ?
Beim Compilieren kamen einige Warnungen
_____________________________________________
warning: model has 2-dimensional geometry (less than 0.500 inches thick on any axis
warning: Error with convex element of cylin.smd, building single convex!
_____________________________________________
und die erste kommt dann auch häufiger
Wenn ich die richtig verstehe ist das Ausgangmodel also das aus 3dsmax zu klein oder lieg ich da falsch?
MfG
Es darf kein großes ganzes Mesh sein, viele kleine!
Du musst eine beliebige Textur draufhauen, ansonsten exportiert er es nicht.
Natürlich müssen die Meshes zu einem Einzelnen zusammengefügt werden.
Ist bei meiner X-302 und allen anderen Modellen von mir auch so.
Hier meine QC:
$modelname "pac/X-302/x_302.mdl"
$cdmaterials "pac/X-302"
$scale 1
$body studio "x_302.smd"
$sequence idle "x_302.smd" fps 1.00
$surfaceprop metal
$collisionmodel "x_302_coll.smd"
{
$mass 1000
$concave
//$maxconvexpieces 100
}
- - - - -
Was kamen denn für Meldungen?
@ Pac_187
warning: model has 2-dimensional geometry (less than 0.500 inches thick on any axis
warning: Error with convex element of cylin.smd, building single convex!
und die erste Warnung gaaaanz oft
@€r!k
Das mit der Textur hab ich auch schon bemerkt hatte etwas gedauert aber naja
Dass sich die einzelnen Boxen in 3dsmax überschneiden kann aber nicht zu sowas führen, oder?
Und beim exportieren muss ich da irgendwas besonderes anklicken ?
MfG
Exportire mal das Kollisionsmodell und das Original in das *.obj Format und lade es mal hoch,
ich möchte das selber mal gerne sehen und ausprobieren. Weiter Vermutungen anzustellen bringt da auch nix ;)
hier beide Dateien ich habe das collisions model umbenannt in cylin_phy die textur hab ich auch nicht mitexportiert und bei dem modell ist die attach funktion nicht mitdrin weil es eben nicht tat und ich es deswegen rückgängig gemacht habe, das collisionsmodell ist auch nicht sehr schön gemacht weil das nur zum testen ist.
http://heite.pytalhost.com/cylin.rar
MfG
Soooo, habs hinbekommen und mir ist die Lösung für 3DS-Max eingefallen
http://www.imagebanana.com/img/8ooqu1bt/thumb/gm_construct0009.jpg (http://www.imagebanana.com/view/8ooqu1bt/gm_construct0009.jpg)
http://www.imagebanana.com/img/0g23ukr9/thumb/gm_construct0011.jpg (http://www.imagebanana.com/view/0g23ukr9/gm_construct0011.jpg)
Hab das allerdings alles in XSI gemacht.
So hier mal kurz ne Stichwortliste
Alle Teile des Kollisionsmodells müssen zu einem Mesh zusammengefügt werden
Kollisionsmodell braucht irgendeine Textur ( kann einfach drauf geklatscht werden, UV's müssen nicht ausgerichtet werden )
Bei XSI muss das gemacht werden: KLICK MICH HART! (http://pac.gmod.de/Modeling/XSI/Tutorials/XSI_Coll_Model.jpg)
Bei 3DS-Max müssen alle Polys in der selben Smoothing Group sein
Da das Modell Konkave ist muss $concave in der QC stehen!
Datei mit QC und SMD's:
2473
EDIT: Hier noch 'n Artikel aus der VALVe Wiki: http://developer.valvesoftware.com/wiki/Collision_model
jo geht perfekt danke :D eine Frage hätte ich allerdings noch, wenn ich jetzt zum Beispiel ein Haus exportieren möchte muss ich jede wand einzelnd machen, das Ganze dann wieder zusammen attachen dann nochmal die Smoothing Groups drauf machen und das geht ?
Edit:
kann dann eigentlich auch geclosed werden funktioniert alles wunderbar.
Kurzgesagt ja.
Du musst halt 'n Kollisionsmodell für das Hauserstellen und dann so verfahren wie ich es aufgelistet habe
bzw. wie es auf der VALVe Wiki Seite steht.
Powered by vBulletin® Version 4.2.2 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.