GTA Közösség - A magyar GTA fórum

Multi Theft Auto (MTA) => MTA: Szerverfejlesztés => Modellezés => A témát indította: Patrick - 2014. Június 19. - 18:03:48

Cím: Saját object berakása MTA szerveredbe
Írta: Patrick - 2014. Június 19. - 18:03:48

Sziasztok!

Beszeretném mutatni, hogy rakhatjuk be saját kezűleg készített objektumunkat MTA szerverünkbe.

 

1. Szükséges programok
Ahhoz, hogy saját objektumot készíthessünk, szükségünk lesz egy modellezőprogramra, ajánlott a Cinema4D, átláthatósága, és könnyű kezelhetősége miatt, illetve a 3ds Max.
Az objektum elkészítése után át kellene konvertálnunk az adott objektumot dff, txd és col fájlba, amit a Kam\'s Max Script segítségével tehetünk meg.
!FIGYELEM! A Kam\'s Max Script kizárólag 3ds Max modellezőprogramban működik!
A dff, txd és col fájl lementése után szükségünk lesz a txd workshop-ra, vagy a G-TXD nevezetű programra. A két program lényege ugyan az, mind a kettő a textúrázásért felel.
-Kam\'s Max Script
-TXD Workshop
-G-TXD
2. Kam\'s Max Script berakása 3ds Max-ba


A Kam\'s Max Script letöltése után csomagoljuk ki, majd a benne levő \"scripts\" és \"maps\" mappát helyezzük át a 3ds Max főkönyvtárába. (C:\\Program Files\\Autodesk\\3ds Max)
3. Az elkészített modell konvertálása dff, txd és col fájlba
Miután végeztünk saját objektumunk elkészítésével, nincs más dolgunk, mint lekonvertálni ezeket dff, txd és col fájlba a következőképpen.

dff-re konvertálás:

3ds Max-ban menjünk rá az \'Utilities\' fülre, majd ott lent megtaláljuk a Kam\'s Max Scriptet. Az alatta található \'DFF IO\' segítségével kezdhetünk bele dff fájlunk konvertálásába.


Ha rákattintunk a \'DFF IO\' fülecskére, ki kell jelölnünk az objektumunkat ahhoz, hogy konvertálni tudjuk. Az objektum kijelölését követően találunk ott egy \'Skip COL\' nevezetű mezőt, amelyet be kell pipálnunk ahhoz, hogy ne készítsen COL fájlt, mert a COL fájl elkészítését nekünk kell megcsinálnunk, külön.


Ha mindez megtörtént, kattintsunk rá az \'Export DFF\' gombra, adjuk meg a mentés helyét, illetve objektumunk nevét.

col-ba konvertálás:
A col-ba való konvertálást szintén a Kam\'s Max Script felirat alatt találjuk, a \'Collision IO\' gombra kattintva.

Col-ba való konvertáláshoz szintén ki kell jelölnünk az objektumunkat, majd az \'Export\' gomb felett egy kis mezőbe be kell írnunk az objektumnak megadott nevet. Miután beírtuk, rákattintunk az \'Export\' gombra, szintén megadjuk a mentés helyét, és objektum nevét.

txd fájl készítése:
TXD fájl készítéséhez szükségünk lesz vagy a txd workshopra, vagy a G-TXD-re.
txd workshop:
TXD workshop megnyitása után menjünk rá a \'File\' fülre, majd nyomjunk a \'New\' gombra. Ezáltal létrehozunk egy új txd fájlt. A \'New\' gombra kattintva megadhatjuk azt, hogy hány bit-es legyen az adott textúra. A bit megadása után jelöljük ki az új txd fájlunkat, és kattintsunk az \'Import\' fülecskére fent. Itt beimportálhatjuk a használt textúrát objektumunkon, majd ha ezzel is kész vagyunk kattintsunk a \'Save TXD\' gombra, adjuk meg nevét, és mentési helyét.
G-TXD:
A G-TXD-t megnyitva menjünk rá a \'File\' fülre, és hozzunk létre egy új txd fájlt a \'New\' gombra kattintva, majd adjuk meg a nevét is. A név beírását követően kiválaszthatjuk hogy melyik játék verziójára szeretnénk készíteni az adott txd fájlt. Kattintsunk a \'San Andreas\' gombra, ezáltal létrehoztuk új fájlunkat. Fájl létrehozása után kapunk egy szöveget (\"This Archive is empty\") felirattal. Abban a részben, amelyben kapjuk ezt a feliratot, nyomjunk jobb egeret, majd kattintsunk az \'Add\' opcióra. Az \'Add\' opciót követve kapunk még egy feliratot (\"Right click to add and remove\"). Szintén nyomjunk jobb egeret abba a részbe, amelyben megtalálható ez a felirat, majd tallózzuk be az objektumra rakott textúrát. A Compression felirat alatt válasszuk ki a \"DXT3\" opciót, majd kattintsunk az \'Add\' gombra. Mindezek után menjünk rá a \'File\' fülecskére, és mentsük le a txd fájlunkat a \'Save\' opcióval.
A három fájl lementésének következtével már csak be kell raknunk a fájlokat MTA-ba, és megjelenik saját objektumunk.
4. Berakás a szerverbe:
Már csak a model berakása van hátra. Az alábbi kód, amit most fogok bemásolni, innét származik: http://sampforum.hu/index.php?topic=50661.0
Íme a kód:
 
function loadMod(fajl, model, col)
txd = engineLoadTXD(\'modellek/\'.. fajl ..\'.txd\')
engineImportTXD(txd, model)
dff = engineLoadDFF(\'modellek/\'.. fajl ..\'.dff\', 0)
engineReplaceModel(dff, model)
if col then
  col = engineLoadCOL(\'modellek/\'.. fajl ..\'.col\')
  engineReplaceCOL(col, model)
end
end

 
Használata egyszerű.

Hozzunk létre egy új clientscriptet, majd egyszerűen írjuk be a következőt valahová a scripten belül:



loadMod(\"fajlodneve\", kicserelendoobjectedidje, true)

 

true/false: Ha van .col fájl a modelledhez, akkor true-t kell írni az utolsó paraméterhez, ha nincs, akkor pedig false-t.

Ezek után már csak a meta.xml-be kell betenni az objectet:


<file src=\"modellek/fajlodneve.dff\"/>
... és a többi

 


Tippek
 

-A .dff, .txd és .col azonos néven legyen (pl.: asd.dff, asd.txd, asd.col)

-A szerverbe való berakáskor kapcsoljuk be a \'replace\' funkciót, ezáltal megjelenik az object két oldala

-Ha más modellezőprogramot használunk saját objectünk elkészítésére, akkor az elkészített objektumot exportáljuk .3ds formátumba, majd rakjuk be 3ds Max-ba, ezáltal eltudjuk készíteni a szükséges .dff, .txd és .col fájljainkat.

-Konvertáláskor egy objektumot lehet .dff-be és .col-ba konvertálni, de az esetben, ha több objektumunk van, hozzunk létre egy ún. \'Group\'-ot, ezáltal a több részből álló objektumunk \"egy lesz\".
Cím: Saját object berakása MTA szerveredbe
Írta: Xenius - 2014. Június 20. - 11:46:16
function loadMod(f, m)
if fileExists(\'asd/\'.. f ..\'.txd\') then
txd = engineLoadTXD(\'asd/\'.. f ..\'.txd\')
engineImportTXD(txd, m)
end
if fileExists(\'asd/\'.. f ..\'.dff\') then
dff = engineLoadDFF(\'asd/\'.. f ..\'.dff\', m)
engineReplaceModel(dff, m)
end
if fileExists(\'asd/\'.. f ..\'.col\') then
col = engineLoadCOL(\'asd/\'.. f ..\'.col\')
engineReplaceCOL(col, m)
end
end
loadMod(\"teszt\", 670)
Cím: Saját object berakása MTA szerveredbe
Írta: koko1238640 - 2014. Június 20. - 23:34:53
Szép leírás!
Én is pont így szoktam csinálni!
Cím: Saját object berakása MTA szerveredbe
Írta: Carlos - 2014. Június 21. - 20:44:49
Köszönjük a leírást!  ;)
Cím: Saját object berakása MTA szerveredbe
Írta: mtamas98 - 2014. Július 26. - 15:35:35
A \'replacer\' funkciót, hogyan kell elindítani?:D Köszönöm a válaszokat.:D
Cím: Saját object berakása MTA szerveredbe
Írta: Patrick - 2014. Július 26. - 16:02:48
A replacer funkciót scriptileg kell engedélyezni tudtommal. :D
Cím: Saját object berakása MTA szerveredbe
Írta: Xenius - 2014. Július 30. - 11:37:34
A replace kliens oldali, semmit nem kell hozzá engedélyezni.
Cím: Saját object berakása MTA szerveredbe
Írta: hunrepper - 2014. Július 30. - 20:03:19
Így kell egy objectre rá rakni egy textúrát?
Cím: Saját object berakása MTA szerveredbe
Írta: Patrick - 2014. Augusztus 07. - 00:28:32
Egy picit megkésve, de igen, a textúrázás is megtalálható fent.
Cím: Saját object berakása MTA szerveredbe
Írta: Gorgov - 2015. Január 09. - 16:43:06
Hasznos volt,kösz.
Cím: Saját object berakása MTA szerveredbe
Írta: Rolplay - 2015. Február 18. - 14:27:35
És azt meglehet oldani,hogy ha én csak 1db bizonyos objectet akarok lecserélni pl.: van 4 ugyanolyan fa de csak az egyik van textúrázva
Cím: Saját object berakása MTA szerveredbe
Írta: lackos888 - 2015. Február 18. - 20:37:44
Azt azthiszem csak 1 alap shaderrel tudod megoldani.
Cím: Saját object berakása MTA szerveredbe
Írta: NowaPresents - 2015. Február 20. - 13:05:24
Nekem van egy kicsi gondom a 3ds max al mivel amikór telepitem akkor azt írja hogy valami \"monitor.exe\" valaki tudna segíteni?
Cím: Saját object berakása MTA szerveredbe
Írta: hunfiu - 2015. Február 20. - 19:43:15
Ha fenn van az Asus GPU Tweak lödd ki
Cím: Saját object berakása MTA szerveredbe
Írta: Xenius - 2015. Március 24. - 06:23:50
Új funkció:
 
local dir = \"mods\" -- mappa neve, ahol a modell található
function loadMod(f, m)
local txdFile = dir..\"/\"..f..\".txd\"
local dffFile = dir..\"/\"..f..\".dff\"
local colFile = dir..\"/\"..f..\".col\"
if fileExists(txdFile) then
local txd = EngineTXD(txdFile)
if txd then
   txd:import(m)
end
end
if fileExists(dffFile) then
local dff = EngineDFF(dffFile,m)
if dff then
   dff:replace(m)
end
end
if fileExists(colFile) then
local col = EngineCOL(colFile)
if col then
   col:replace(m)
end
end
end

 
Meta.xml:
 
<oop>true</oop>

 
Használat:
 
addEventHandler(\"onClientResourceStart\", resourceRoot, function()
loadMod(\"teszt_object\", 4848)
end
Cím: Saját object berakása MTA szerveredbe
Írta: Zénó10 - 2015. Március 24. - 20:38:29
Kösz Xenius!  :)
Cím: Saját object berakása MTA szerveredbe
Írta: ozon98 - 2015. Július 22. - 18:36:44
A kódos reszt hova tegyem?
Cím: Saját object berakása MTA szerveredbe
Írta: sanyikaHUN15 - 2015. Augusztus 27. - 16:47:46
Sziasztok,Cinema4D-ben hogy működik az át konvertálás .dff .col .txd-be?
Cím: Saját object berakása MTA szerveredbe
Írta: Legend - 2015. Augusztus 27. - 19:35:05
Idézetet írta: Jason133 date=1440686866\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"55285\" data-ipsquote-contentclass=\"forums_Topic
Sziasztok,Cinema4D-ben hogy működik az át konvertálás .dff .col .txd-be?
 
Sehogy, átviszed 3ds maxba és onnét tudod csak.
Cím: Saját object berakása MTA szerveredbe
Írta: BullHead - 2016. Március 16. - 00:40:28
sziasztok!
Egy modellezésnek a méretét hogy állítom be, hogy mekkora legyen?
Cím: Saját object berakása MTA szerveredbe
Írta: Daniel S Johnson - 2016. Október 09. - 08:03:57
Hello, köszi  a  leírást! Én még ebben nagyon kezdő vagyok! Nagyon erős gép kellene ezekhez?
Cím: Saját object berakása MTA szerveredbe
Írta: Flash - 2016. Október 09. - 11:34:33
Ott már jó ha a gta nem szaggat :\'D
Cím: Saját object berakása MTA szerveredbe
Írta: kisolasz - 2016. Október 10. - 17:38:42
Sziasztok
2 kérdésem is lenne :)
Az miért van hogy kijelölöm a Colosio hálót elakarom menteni és pár byte méretü lesz. ezt hogy tudom orvosolni vagy hogy mentsem el a collosiot?
Illetve
a Textúrákat hogy tudom kicserélni ? milyen script kell hozzá ?
Cím: Saját object berakása MTA szerveredbe
Írta: Szegedi_Daniel - 2017. Február 09. - 15:20:01
helló én is megpróbáűltam de nem müködöd asztán megróbáltam így az müködöt de nme hozta be a modelt de amire raktama  modelt az bizonyos szögből eltünt de nem votl rajta a modelem segítnétek itt van az én scriptem meg  pár kép hozzá
 

LUA
local txd = engineLoadTXD(\"model/test.txd\")
      engineImportTXD(txd, 4848)
local dff = engineLoadDFF(\"model/test.dff\", 4848)
      engineReplaceModel(dff, 4848)
local col = engineLoadCOL (\"model/test.col\" )
      engineReplaceCOL ( col, 4848)


META
<meta>
<script src=\"sourcec.lua\" type=\"client\" />
    <file src=\"model/test.dff\" />
    <file src=\"model/test.col\" />
    <file src=\"model/test.txd\" />
</meta>

 
 
 
\"Kepernyofelvetel220.png\"
 
\"Kepernyofelvetel221.png\"
 
\"Kepernyofelvetel222.png\"
 
 
Cím: Saját object berakása MTA szerveredbe
Írta: skyrim99 - 2017. Március 03. - 11:30:31
Nekem is ugyan ez a baja. Arra már rá jöttem, hogy a .col fálj hibás. De nem tudom kijavítani
Cím: Saját object berakása MTA szerveredbe
Írta: TyFun - 2017. December 28. - 14:33:31
Helló... én Blenderből, szeretnék átexportálni 3ds max-ba egy modet de nem jól teszi be instant az objectet a 3ds max-ba Meg még az is prbéma hogy leexportálom Benderben Obj formátumban importálom 3ds maxba leexportálom a megadott módon DFF COL fájlt beteszem és nem akkora amekkorára én akarom át lehet rajta menni miért van ez?