Patrick

Saját object berakása MTA szerveredbe

26 hozzászólás ebben a témában

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".

2 emberek kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon
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)

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

É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

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Nekem van egy kicsi gondom a 3ds max al mivel amikór telepitem akkor azt írja hogy valami "monitor.exe" valaki tudna segíteni?

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Ú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

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

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.

1 személy kedveli ezt

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

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á ?

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

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

 

Szerkesztve Szegedi_Daniel által

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Nekem is ugyan ez a baja. Arra már rá jöttem, hogy a .col fálj hibás. De nem tudom kijavítani

Megosztás


Megosztás link alapján
Megosztás egy közösségi oldalon

Regisztrálj vagy jelentkezz be, hogy válaszolhass

Csak felhasználóként kommentelhetsz.

Regisztrálj

Légy közösségünk tagja még ma! Csak fél perc.


Regisztrálok

Jelentkezz be

Már van felhasználód? Lépj be!


Bejelentkezek