játékfejlesztés.hu
FórumGarázsprojectekCikkekSegédletekJf.hu versenyekKapcsolatokEgyebek
Legaktívabb fórumozók:
Asylum:    5440
FZoli:    4892
Kuz:    4455
gaborlabor:    4449
kicsy:    4304
TPG:    3402
monostoria:    3284
DMG:    3172
HomeGnome:    2919
Matzi:    2519

Pretender:    2498
szeki:    2440
Seeting:    2306
Geri:    2185
Orphy:    1893
Joga:    1791
Bacce:    1783
MaNiAc:    1735
ddbwo:    1625
syam:    1491
Frissebbek | Korábbi postok
[1] [2] > 3 < [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [44]
itamas - Tag | 72 hsz       Online status #210100   2016.08.21 09:28 GMT+1 óra  
Sziasztok!
Egy FPS-játékocskát szeretnék elkészíteni FreeBasic-ben, OpenB3D segítségével. Ennek a játéknak lennének a szabadban játszódó pályái, de úgy, hogy azért valami domborzat legyen benne, ne csak valami sík tájon játszódjon az egész. Nos, ezt nem tudtam megoldani eddig; ehhez kérnék tanácsot.
A CreatePlane() ugyebár létrehoz egy "síkságot", amire rá tudtam húzni a füves textúrát. Addig jutottam el, hogy ehelyett a LoadTerrain() lenne(?) használatos, és erre jöhet a textúra. De milyen képet kell betöltenem ezzel a LoadTerrain()-nel, hogy dimbes-dombos-hegyvidékes tájat kapjak? Valami fekete-fehér pacásat? A sötét-világos színek jelölik a magasságértéket ezen a terepen? Mert amit megnéztem BlitzBasic3D-s példát, abban ilyen volt. De valahogy mégsem sikerült ennek alapján leutánoznom a példában látható dolgokat.
A másik kérdésem, hogy a játékost jelképező mozgó kamera ilyen pályán hogyan követheti a domborzat változásait? Ez önműködően történik, vagy nekem kell valamit csinálnom vele, hogy pl. egy domb tetején magasabban is legyen?
Előre is köszönöm a segítséget!
   
Tunyu - Tag | 444 hsz       Online status #210097   2016.08.19 17:42 GMT+1 óra  
Újabb ubuntura váltottam, itt már simán indul a terminálban, és még dupla kattintással is, viszont ezt csak a rendszerfigyelőben látom, mert ablakot nem nyit.Van vmi külön beállítás arra hogy ablakban fusson a program?Vagy ez egy unity bug?

   
Tunyu - Tag | 444 hsz       Online status #210094   2016.08.18 20:15 GMT+1 óra  
Nem, 32 bites rendszeren próbálom futtatni a 32 bites binárist. Lehet az a baj hogy elég régi ubuntu verzió. A synaptic-al leszedek pár újabb pakkot, remélem működni fog.

   
__z - Tag | 69 hsz       Online status #210093   2016.08.18 17:28 GMT+1 óra  
Ez kb. úgy néz ki, mintha 64 bites rendszeren próbálnál futtatni egy 32 bites binárist. Ha ez a helyzet, akkor két megoldás is van:
1. Egyesével telepíted a szükséges csomagok 32 bites verzióját. Valamelyik (már nem emlékszem) oldalon rá lehet keresni, hogy egy adott fájl melyik csomagban található meg.
2. Telepíted a "globális" multiarch támogatást, ekkor csak egy csomagot kell telepítened, az függőségként behúzza az összes csomag 32 bites verzióját (bár szintén nem tudom, most hogyan hívják ezt a csomagot)

   
Tunyu - Tag | 444 hsz       Online status #210089   2016.08.18 14:15 GMT+1 óra  
__z :
Igen bekapcsoltam! Ezt írja ki az "ldd" parancsra:
Kód:
s@s-VirtualBox:~$ ldd /home/s/Asztal/Server.x86
/home/s/Asztal/Server.x86: /usr/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /home/s/Asztal/Server.x86)
/home/s/Asztal/Server.x86: /lib/i386-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by /home/s/Asztal/Server.x86)
/home/s/Asztal/Server.x86: /lib/i386-linux-gnu/libm.so.6: version `GLIBC_2.15' not found (required by /home/s/Asztal/Server.x86)
linux-gate.so.1 =>  (0x007c0000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x00ff9000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0x0090c000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0x0084f000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0x00505000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0x002a8000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0x009f5000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x00110000)
/lib/ld-linux.so.2 (0x00c20000)

Arra rájöttem hogy hiányzik neki néhány dolog,de hogy ezeket hogy pótoljam, arra még nem

   
__z - Tag | 69 hsz       Online status #210087   2016.08.18 13:27 GMT+1 óra  
Idézet
Tunyu :
Valakinek van ötlete hogyan lehet x86 kiterjesztésű fájlt elindítani Ubuntun?Amit eddig találtam a neten, azzal nem sikerült működésre bírnom.Virtuális gépen akarom futtatni, de hiába pötyögök én bármit a terminálba, sok pozitív reakciót nem látok.


Az execute flag be van állítva rajta?
Esetleg ír valami üzenetet a terminál, ha futtatni akarod?

   
Tunyu - Tag | 444 hsz       Online status #210085   2016.08.18 08:12 GMT+1 óra  
Valakinek van ötlete hogyan lehet x86 kiterjesztésű fájlt elindítani Ubuntun?Amit eddig találtam a neten, azzal nem sikerült működésre bírnom.Virtuális gépen akarom futtatni, de hiába pötyögök én bármit a terminálba, sok pozitív reakciót nem látok.

Ezt a hozzászólást Tunyu módosította (2016.08.18 09:14 GMT+1 óra, 311 nap)

   
novarobot - Tag | 13 hsz       Online status #208944   2016.01.07 15:35 GMT+1 óra  
Sziasztok!

Találtam rá egy fél megoldást, ha kibontom a játék pack0.dzip fájlt (erre találtam megoldást a neten)
és a kibontott fájlokat is bedobom a játék mappájába akkor jó, csak + 15GB helyet foglal.

Elvileg be is lehet csomagolni a módosítás után de így vagy a mod lesz 10GB+ vagy a telepítés közben kell 15GB (utána ha vissza csomagolom nem kell a +15GB)

Nincs az ilyen problémákra jobb megoldás?

Köszönettel: Novarobot.

   
novarobot - Tag | 13 hsz       Online status #208938   2016.01.07 10:48 GMT+1 óra  
Sziasztok!

C programozásban, AVR és LINUX környezetben otthonosan mozgok a játékfejlesztésben még igen kezdő vagyok...

A The Witcher 2 REDkit -et használva szeretnék a játék néhány küldetésébe belenyúlni.

Sikerült a küldetést úgy módosítanom ahogy szeretném, de csak a REDkit -ben játszva működik, ha bemásolom a módosított Quest fájlt a játék megfelelő helyére nem működik.

A Quset hez tartozó összes karakter, párbeszéd stb eltűnik a játékból mint ha nem találná meg a fájlokat.

Arra gyanakszom hogy a betömörített modell textúra stb fájlokat nem látja a mod ként hozzáadott Quest csak a játék szerkesztőjébe.

Használta már valaki azt az editort? találkoztatok hasonló problémával, és esetleg sikerült megoldani?

(Szerintem bár nem találtam erre való utalást a játék Unreal Engin egy módosított változatát használja, a fájlnevek alapján gondolva, persze lehet hogy semmi köze hozzá)

Köszönettel: Novarobot.

   
Marcsello - Tag | 228 hsz       Online status #205634   2014.11.24 15:53 GMT+1 óra  
Ez nem tudom kinek a törvénye, de szerintem nem Murphy...

3 napja ezen a bugon vagyok fennakadva, és mire elhatározom, hogy feldobom ide, hátha a náslam okosabbak megoldják, erre véletlen megtalálom a hibaát

a
Kód:
Shapes.begin(ShapeType.Point)
helyett
Kód:
Shapes.begin(ShapeType.Line)
kell... ....

na mindegy, most vannak vonalaim, viszont az eddig szépen kirenderelt Sprite-jaim tűnek el....
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
Marcsello - Tag | 228 hsz       Online status #205633   2014.11.24 15:41 GMT+1 óra  
Az ilyen java csodáim csak placeholderek voltak, most már sokkal kidolgozottabb azóta, csak itt jól látszott, hogy én csak egy átkozott vonalat szeretnék húzni, a teljes kód a vonalhúzás nélkül működik , avval viszont nem engedi a piszok...

A 125. sor azóta elcsúszott de a hiba akkor van csak, ha
Ezt:
Kód:
Shapes.line(10, 10,100,100);

A sort berakom, ha ezt kikommentelem, semmi baja sincs, nem tudom mit kéne még inicializálnom, hiszen a többi methodja műxik (konkrétan a Begin(ShapeType.Point) meg az End())

viszont az eclipse itt jelöli ki nekem a hibát:
GLSurfaceView.class 1285.line :
Kód:
    int h = 0;
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
MaNiAc - Szerkesztő | 1735 hsz       Online status #205608   2014.11.24 09:25 GMT+1 óra  
Illetve ez is érdekes lehet:

Kód:
Towers = new Ttower[500];


aztán:

Kód:
for (i=0; i < towerCount; i++) {
Towers[i].render();
}


Szóval ebből simán lehet NPE (hiszen ráhívsz egy 500 db null-t tartalmazó array egyik elemére!), feltéve, hogy valahol stikában megváltoztattad a towerCount értékét.
Dare to imagine!
http://www.insaneidea.hu
   
MaNiAc - Szerkesztő | 1735 hsz       Online status #205607   2014.11.24 09:18 GMT+1 óra  
Egyébként ha megtalálod az NPE okát, a ciklusod akkor sem fog csinálni semmit...

Kód:
int towerCount;


majd

Kód:
towerCount = 0; // 0-t leszamitva


végül

Kód:
for (i=0; i < towerCount; i++) {
Towers[i].render();
}


mivel 0 nem kisebb, mint 0.
Dare to imagine!
http://www.insaneidea.hu
   
MaNiAc - Szerkesztő | 1735 hsz       Online status #205606   2014.11.24 09:14 GMT+1 óra  
Nem értek annyira az androidhoz, de meglepő volna, ha egy JPEG-et nevezne valaki "trace file"-nak...

EDIT: Ahogy sejtettem, ennek a "trace file" dolognak semmi köze a kódhoz. Lásd még:

http://stackoverflow.com/questions/11446049/error-opening-trace-file-no-such-file-or-directory-2/17556321#17556321

A bibi inkább az az NPE lesz a 125. sorban. Nem hívsz rá véletlenül egy inicializálatlan változóra?

Mi van a 125. sorban?

Ezt a hozzászólást MaNiAc módosította (2014.11.24 09:27 GMT+1 óra, 944 nap)
Dare to imagine!
http://www.insaneidea.hu
   
M4 - Tag | 187 hsz       Online status #205605   2014.11.24 09:09 GMT+1 óra  
Azt írja a log, hogy nem találja a fájlt. Gondolom a badlogic.jpg-t. De a kódodból nem látszik hogy töltöd be.
cdefense.java:125, vagyis a 125-dik sorban jön az exception.

   
Marcsello - Tag | 228 hsz       Online status #205596   2014.11.23 21:12 GMT+1 óra  
Oké, Tudja valaki hogy kell egy átkozott vonalat húzni libGDX Android-al ?
Akármit próbálok amikor rajzolnám ki egy exceptiont kapok

itten van a render:
Kód:
@Override
public void render() {
process_input();
int i;
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();

// valahol itt van a hiba
Shapes.begin(ShapeType.Point);
Shapes.line(10, 10,100,100);
Shapes.end();

for (i=0; i < towerCount; i++) {
Towers[i].render();
}

batch.end();
}


Itten a Create:
Kód:
public void create() {
batch = new SpriteBatch();

//Gdx.gl.glLineWidth(2);
Gdx.gl20.glLineWidth(2);
//Gdx.gl30.glLineWidth(2);

TowerBase = new TTowerBase[1];
Towers = new Ttower[500];

TowerBase[0] = new TTowerBase("badlogic.jpg","badlogic.jpg",500,500,500); //km

towerCount = 0; // 0-t leszamitva

scr_w = Gdx.graphics.getWidth();
scr_h = Gdx.graphics.getHeight();

Gdx.input.setInputProcessor(this);

Shapes = new ShapeRenderer(20);

map = new Tmap(5,5,Color.WHITE);
}


Ez meg ott van a class elejibe:

Kód:
public class cdefense extends ApplicationAdapter implements InputProcessor {

SpriteBatch batch;

int towerCount;

InputProcessor iprocessor;

ShapeRenderer Shapes;

int scr_w,scr_h;


Elindítom és nem történik semmi, illetve történik kapok egy szép kis exceptiont amivel nem tudok mit kezdeni

Ja, majd elfelejtettem, ezt a logcat-ból kukáztam:

Kód:
11-23 21:52:12.057: E/Trace(24533): error opening trace file: No such file or directory (2)
11-23 21:52:16.573: E/AndroidRuntime(24533): FATAL EXCEPTION: GLThread 1881
11-23 21:52:16.573: E/AndroidRuntime(24533): java.lang.NullPointerException
11-23 21:52:16.573: E/AndroidRuntime(24533): at hu.goatoxik.crashdefense.cdefense.create(cdefense.java:125)
11-23 21:52:16.573: E/AndroidRuntime(24533): at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:237)
11-23 21:52:16.573: E/AndroidRuntime(24533): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1548)
11-23 21:52:16.573: E/AndroidRuntime(24533): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1281)
11-23 22:01:33.938: E/Trace(26952): error opening trace file: No such file or directory (2)
11-23 22:02:27.580: E/Trace(27483): error opening trace file: No such file or directory (2)
11-23 22:05:14.107: E/Trace(28529): error opening trace file: No such file or directory (2)
11-23 22:08:35.181: E/Trace(29449): error opening trace file: No such file or directory (2)

Ezt a hozzászólást Marcsello módosította (2014.11.23 21:20 GMT+1 óra, 945 nap)
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
wayalong - Tag | 2 hsz       Online status #203261   2014.06.02 07:09 GMT+1 óra  
Sziasztok! Kellene egy kis segítség.
Megtudná valaki mondani nekem, hogy egy amatőr, mint én, hogy tudna a legegyszerűbben egy harcszimulátort írni rpg játékhoz?. Ugyanis a játékkoncepció kidolgozásához leszeretném modellezni magamnak azt, hogy mennyire lenne ki balanszozva a különböző kasztok képességei.

Az ötletet itt találjátok:

   
gteam - Tag | 10 hsz       Online status #202814   2014.04.30 08:59 GMT+1 óra  
Nagyszerű ötlet. A versenyzős dolgot mindenképpen megvalósítom. De ez az autóbontós meg "műhelyszimulátor"-os dolog is nagyon megfogott.. Köszönöm szépen az ötleteket!!!!

   
Marcsello - Tag | 228 hsz       Online status #202808   2014.04.29 21:48 GMT+1 óra  
Nekem Stryker 4. ötlete jutott eszembe elsőnek, csak egyszerűbb formában, Szépen kerítesz garázsokat köré, és a semmiből kezded, egy Lada 1001-el (vagy valami ilyesmi lvl autóval) tudom, hogy nehéz megoldani, hogy minden szerelésnek érezhető hatása legyen a versenyekben, mert gondolom, nem mindegy mit hova raksz, de lehetne elsőnek minden féle utcai verseny, csak ilyen gagyi-browser-game style-ban (ne érts félre, nálam ez egy gyűjtőfogalom, és ez a játék nem tartozik bele) azaz így van egy verseny, jelentkezel stb. és kb 5 perc után meg csak kiköpi az eredményt, hogy hányadik lettél, és kapol érte suskát. meg ilyenek... aztán egyre faszább garázst rajzolsz mögé, és akkor ezt sok felshasználóval. de ötvözheted az 1. pontal is, azaz mind emellett van benne használt alkatrész piac, vagy akár bérbe adhatod a kocsidat profitért (mind ezzel együtt).
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
StrykerKKD - Tag | 30 hsz       Online status #202802   2014.04.29 18:07 GMT+1 óra  
Nekem 4 ötlet jutott eszembe:
1. Megveszed az autót és azt eladód alkatrészenként. Ebből profit lesz.

2. Műhely szimulátor: behoznak egy autót és meg kell javítani vagy átalakítani kuncsaft részére. Kuncsaft pedig vagy boldog lesz vele vagy nem.

3. Kocsi bérlős üzlet: ilyenkor autót meg kell venni, karban kell tartani és akár fejleszteni is lehet. Hasonló ötletem még egy taxis cég szimulálása.

4. Autó versenyzés szimulátor, ami inkább a csapatfőnök szemszögéből lenne. Akinek fent kell tartani az egész rendszer működését és közben még kocsira is oda kéne figyelnie. Nagyjából olyan mint a football director csak autóversenyzéssel. Szerintem egy WTCC-s játékra vevő lenne a nép.
   
gteam - Tag | 10 hsz       Online status #202797   2014.04.29 16:46 GMT+1 óra  
Sziasztok!
Készítgetek egy böngésző alapú játékot, itt találtok róla pár képet. Sajnos a Demo most nem üzemel mert be kéne állítanom a mysqlt.
Lényeg az hogy van egy autód szét tudod szerelni meg össze tudod rakni. Idáig minden oké, de nem tudok kitalálni hozzá semmi játékmenetet, azaz hogy mi legyen a játék lényege.
Eddig arra gondoltam, hogy mindenki kap kezdésnek valamennyi pénzt, meg kell vennie egy lepusztult járgányt, megjavítani, majd haszonnal eladni.
Idáig oké de szerintem ez még kevés egy játékhoz. Valakinek van valami ötlete a játékmenettel kapcsolatban?

   
StrykerKKD - Tag | 30 hsz       Online status #198773   2013.11.02 19:49 GMT+1 óra  
Azért nem tudsz menteni ,mert game maker save funkcióját nem tudták megvalósítani HTML5-ben.
Utolsó comment

Egyébként keresgélj hivatalos Gamemaker fórumon, hátha adnak valami megoldást vagy akár ott is felteheted ezt a kérdést.

Gondolom nem tökéletes az átmenet Gamemaker és HTML5 között ,ezért az igazi megoldás az lenne ,ha magában a gamemaker által kiköpött kódot javítanád meg ,habár gondolom, hogy az elég csúnya.

Máskor szerintem elég 1x feltenni a kérdésed.
   
pendrivedealer - Tag | 19 hsz       Online status #198771   2013.11.02 16:33 GMT+1 óra  
Sziasztok!

Nemrég készítettem GameMakerel egy kicsi faltörős játékot, megspékelve egy kis kvízjátékkal! Html5-ös fájlként írtam ki a gépemre.
Egy barátom megpróbálta kirakni a Weboldalára, a játék el is indul, de a mentési pontok, amire rá kell kattintani, nem működnek, Így nem lehet menteni.
Valamint, a játék nem ér véget, ha elfogy a golyó, hanem mínuszba kezd el számolni.
Ha exe-be mentem, és feltelepítem a gépre, akkor minden tökéletesen működik.
A kérdésem az, hogy ez miért van?
Valaki tapasztalt már ilyen hibát?
Meg lehet oldani a mentést?
Lehetséges az, hogy a szerveren kell valamit beállítani? Esetleg egy adattárolót kell létrehozni, ahova menti?


Előre is köszönöm a választ.

   
Marcsello - Tag | 228 hsz       Online status #198537   2013.10.24 20:18 GMT+1 óra  
Ez amin küldöm ez 4 bájtos (1+8+23=32bit). De lehet 6 bájt, 8bájt 10bájtos, nos ennyi. De tudok konvertálni 2 bájtba, szóval nem gáz. Relatív koordinátákkal nem akarok próbálkozni, egyenlőre ezt akarom műköésre bírni
Illetve sikerült megoldanom a ko-szimulációt, az előzőkben azért nem működött, mert szépen ôsszehoztam mindent, csak elnéztem egy változót, ezért nem indult el a kliensen a szimuláció. De az ahoz tartozó értékek átvitele még enm az igazi, mert ha a mátrixokat nem használom, csak az erő értékeket, a Kockák gyakorlatilag felrobbannak, illetve mindenfele elrepülnek, De legalább látványos az ugrálás így legalább látom, mikor sikerült megjavítanom.

Most megpróbálom kigondolni, hogy milyen értékek kellenek a fizika utánzásához. Jelenleg csak a Forces-t küldöm, de van e még Velocity, Omega, Torque, Rotation, stb. szóval ezekkel csak tudok kezdeni valamit
Meg persze kicsit kissebb csomagokat összerakni
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
fpeti - Törzstag | 1280 hsz       Online status #198536   2013.10.24 19:47 GMT+1 óra  
Küldésnél még tömörítés is szóba jöhet, hogy kisebbek legyenek a csomagok, pl nem biztos, hogy 32 bites float kell, ha nem mozog túl sokat az objektum, 16 bit is elég lehet. Ha nem abszolút világkoordinátákkal dolgozik, hanem csak az elmozdulást küldi át, akár 8biten is meg lehetne szvsz csinálni. Persze ez mind bonyolítja a dolgokat.
   
Seeting - Törzstag | 2306 hsz       Online status #198530   2013.10.24 11:54 GMT+1 óra  
Idézet
Marcsello :
csak ugye nálam minden kocka egy csomag, amit a szerver küld a kliensnek. Ebben van a mátrixa, meg még néhány plusz infó.



Ne küldj mátrixokat, inkább állítsd elő a transzformációt újra a kliens oldalon. Ha küldesz egy pozíciót (3 float) és egy forgatást (max 4 float), akkor még mindig olcsóbban megúszod, mint ha 16 float-ot küldenél.
   
Seeting - Törzstag | 2306 hsz       Online status #198529   2013.10.24 11:49 GMT+1 óra  
Idézet
Marcsello :
igen ez megvan, inkább olyan megoldáson gondolkodom, hogy megy a szimuláció a kliens oldalon is, a teljes world-ről és a szerveren is megy ugyan ez. De a szerver folyamatosan küldi az infókat a world-ről, és ugyanúgy frissíti a kockákat. És kis mákkal így realtime fizika lesz, ami megegyezik mindenhun. Elméletben ez jó, de gyakorlatban ez valószínüleg ugrálni fognak a kockák (amikor megjön a hivatalos infó, és lecseréli a központira a helyit) mert én eddig ahányszor lefuttattam valamit, az mindig más eredményt hozott (Newton Game Dynamics-ot használok ).



Nem tudom, hogy newtonban hogyan működik, de bullet physics esetében be lehet állítani, hogy determinisztikus legyen a fizika, így mindkét oldalon ugyanazt az eredményt kaphatnád. De egyébként az a konvenció, hogy a fizikát a szerver számolja. Bár azt nem tudom, hogy mi a teendő akkor, ha több ezer rigid testet szimulálsz.
   
Tunyu - Tag | 444 hsz       Online status #198519   2013.10.24 04:44 GMT+1 óra  
Hát én igazán nem értek hozzá, de szerintem kicsit alá becsülitek a szerverek teherbírását. Én több olyan játékot is ismerek ahol egy szerver egyidejűleg több tízezer játékost szolgál ki, és nem csak a mozgást kell nyomon követni.Mikor a szervereket támadják pl.: DoS/DDoS akkor is több száz ,több ezer zombi gép kell és így is a legtöbb esetben csak lelassítják a szervert, az összeomlás nem következik be.És gondolom azok nem mozgási adatcsomagokat bombázzák a szervert.

Ezt a hozzászólást Tunyu módosította (2013.10.24 04:59 GMT+1 óra, ---)

   
Marcsello - Tag | 228 hsz       Online status #198518   2013.10.23 22:49 GMT+1 óra  
Manapság nagyon faja kis szerverek vannak, amik a leglaggosabb játékból is elvisznek 100-200 klienst is (csak ha mást nem futtatnak mellette) szóval egyenlőre ezen nem aggódom, mondjuk az én gépemen (Celeron M 1.7Ghz 2GB Ram) 5000 kockánál már valami szaggat, de szerintem csak a kirajzolásnál (lássuk csak, 5000x6 = 30000 polygon, nem is sok, de nem gáz) tehát csak a saját gépem teljesítménye korlátozhat meg ebben.
Most alkottam egy ko-számításos cuccost, aminek akármilyen hülye értékeket adok jól modellez, amit nem tudok hogy a továbbgondolt csomagküldés miatt van (ami mellesleg pont a várt eredményt nem hozza, mert még mindig kb. 570 bájtosak a csomagok, csak kicsit gyorsabbak), vagy mert működik, de a megjósolt ugrálással seholsem találkoztam amiről nem tudom, jó-e vagy sem. De az előző verzión ugyanannyi kockaszámmal beszaggat, (csak abban még a csomagküldés is a régi) szóval ezt majd nagy ping mellett kell tesztelnem, mégtöbb kockával, mert nem tudom eldönteni jó-e ez vagy sem...

Egyébként Lazarus-ban (FreePascal)-ban dolgozom. Azért a végére írtam, mert vannak akik meglátják, és nem olvassák tovább
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
StrykerKKD - Tag | 30 hsz       Online status #198516   2013.10.23 21:58 GMT+1 óra  
Én óvakodnék attól ,hogy túl sok mindent számoljon a szerver ,mert minél több a kliens annál többet kell a szervernek számolnia és egy idő után megharagszik a szerver.

Egyébként miben fejleszted a kísérletedet?
   
Marcsello - Tag | 228 hsz       Online status #198507   2013.10.23 17:06 GMT+1 óra  
igen ez megvan, inkább olyan megoldáson gondolkodom, hogy megy a szimuláció a kliens oldalon is, a teljes world-ről és a szerveren is megy ugyan ez. De a szerver folyamatosan küldi az infókat a world-ről, és ugyanúgy frissíti a kockákat. És kis mákkal így realtime fizika lesz, ami megegyezik mindenhun. Elméletben ez jó, de gyakorlatban ez valószínüleg ugrálni fognak a kockák (amikor megjön a hivatalos infó, és lecseréli a központira a helyit) mert én eddig ahányszor lefuttattam valamit, az mindig más eredményt hozott (Newton Game Dynamics-ot használok ).

Viszont most fennakadtam mégvalami, a max 50 bájtosnak ítélt csomagomról, kiderült, hogy 570 bájtos szóval nem csoda hogy lassan megy át, mert valami bug miatt string ként küldte át, ami a fogadó szempontjából mindegy volt, csak a csomag mérete nem mindegy. szóval erre megvan már a megoldás, szóval nem ez a lényeg, csak megjegyeztem .
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
Pretender - Törzstag | 2498 hsz       Online status #198506   2013.10.23 16:12 GMT+1 óra  
Ami egyébként nem érdekes gameplay szempontjából, azt csak a kliens számolja nyilván. De a játékosok mozgása, nézési iránya, lövése, stb. tipikusan nem ilyen. Azt mind a kettő számolja.
A fáról lehulló alma (ha nincs gameplay-beli szerepe) csak kliens oldalon számolt. Mint pl. a ragdoll. Nekünk fordult már elő multizás közben, hogy észrevettük, hogy egy kicsit eltért a két kliens gépen az infó a halál pillanatáról, ezért más pozícióban kötött ki a test ragdoll után.

   
Marcsello - Tag | 228 hsz       Online status #198505   2013.10.23 14:44 GMT+1 óra  
Idézet
StrykerKKD :
Nem értem ,hogy miért nem lehet ezt csak kliens oldalon megcsinálni. Hiszen ez az 500 kocka gondolom mindig ugyan úgy esik le ,hogyha a kliens nem tud belezavarni. ...


Itt most nem az a lényeg, hogy ugyanúgy esik-e le, vagy sem, persze, bele lesz zavarva, de ez most még csak próbaképp esnek a kockák, persze, nem ez lesz majd a játékban, itt most csak tesztelem és amíg nem tökéletes, addig nem megyek tovább (a gömbökre )

jah, köszi, kipróbálom minél nagyobb csomagokkal is majd, mert ebben van valami, mert a legelső verzióban 16 csomag tartozott egy kockához. mondjuk így sem olyan nagyok a csomagok. 16x4byte + 1 byte + a többi(10-30 byte).
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
StrykerKKD - Tag | 30 hsz       Online status #198503   2013.10.23 13:17 GMT+1 óra  
Nem értem ,hogy miért nem lehet ezt csak kliens oldalon megcsinálni. Hiszen ez az 500 kocka gondolom mindig ugyan úgy esik le ,hogyha a kliens nem tud belezavarni.
Ha a kliens belezavarna az már más kérdés lenne. Akkor én úgy csinálnám ,hogy a belezavarás idejekor küldeném el az üzenetet a szervernek. és az pedig leellenőrizni ,hogy lehetséges-e az a művelet ,amit csináltam.

Másik észrevételem ,hogy inkább küldj 1 nagy üzenetet mint 500 kicsit.
Egy jó kiss cikk a témában

Egyébként én is gondolkodok egy jó kis valósidejű multi játékban csak nincs rá időm.
   
Marcsello - Tag | 228 hsz       Online status #198501   2013.10.23 12:22 GMT+1 óra  
tehát, gyakorlatilag mind a két oldalon számolunk, aztán ezt majd egységesítjük.
igazából ebben a pre-alfa-demo-prototype cuccban, csak annyi tôrténik hogy meghatározott számú kockákok leesnek, tehát, irányításról szó sincs még . csak ugye nálam minden kocka egy csomag, amit a szerver küld a kliensnek. Ebben van a mátrixa, meg még néhány plusz infó. És 5 kockánál ötször kiküldeni nem nagy kunszt (persze alacsony pingel) de ha van 500 kocka, az 500 csomagot jelent, ami már elég sok idő, mire végig ér mind az 500-on, persze nem vár vsenki választ a másiktól, annyi a visszacsatolás, hogy ha összeomlik a kapcsolat, akkor mind két oldalon jelzik, hogy lekapcsolódtak. tehát a ping annyira nem játszik közre, persze azért ha retek a kapcsolat, és elveszik néhány csomag, az azért már elég gáz, de ott még nem tartok teszetelés ügyileg.

A lényeg a lényeg, hogy nekem a szervertől visszajövő információkat kell folyamatossá tennem, hogy úgy tűnjön, nos...., mintha folyamatos lenne a kockák hullása, addig is, amíg végig ér mind az 500 kockán, mert úgy működik, hogy szervertől jön egy csomag, abban benne van a kocka azonosítója, meg a hozzá tartozó mátrix. Amint ezt a csomagot megkapja a kliens, szépen alkalmazza a mátrixot a hozzá tartozó kockára, és vár a következő csomagra (ez persze a képfrissítéstől, meg ezektől független) és ezt a végtelenségig csinálja. Ami mind szép és jó, csak 500 kockánál, egy adott kocka elég ritkásan frissül, és addig, amíg nem frissül, addig egyhelyben lebeg, vagy áll, vagy ilyesmi, és ez szemmel láthatóan nem az igazi. Szóval két frissítés között kell valamit kezdeni vele, hogy úgy tűnjön mint ha mozogna, de a következő frissítésnél ne a szomszédba ugorjon át az adott kocka. Vagy, ha kell az egész megoldást újra írni (mivel a jelenlegit én kombináltam ki saját kútfőböl) hogy más adatokat máshogy küldjön.
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
Pretender - Törzstag | 2498 hsz       Online status #198500   2013.10.23 11:46 GMT+1 óra  
Vannak rá különféle technikák, de az alap általában a következő szokott lenni:

Alap esetben a kliens csak kontrol információkat küld át a szervernek (pl. melyik billentyű lett lenyomva, én most éppen előre akarok menni, egér pozíció esetleg, ilyesmik). Ez ugye addig jól működhet, amíg nagyon kicsi a latency, és kb. csak 1-2 player van bent. Amint egy kicsit növekedik, már erőteljes késés figyelhető meg. Ugyanis a kliens nem számol pozíciót, hanem amit leküldött infót, abból a szerver számolja ki, majd küldi vissza - ezzel elkerülve az "ugrálós" csalásokat pl.
Csak ugye a nagyobb latency / több player miatt ez nem jó megoldás: lenyomod az előre haladás billentyűt, de csak fél-1mp-el később indulsz el. Ez nyilván nem elfogadható.

Azonban van egy client-side prediction-nek nevezett dolog. Ez nagyjából annyit tesz, hogy a kliens is számolja a saját pozícióját, és egy bizonyos tresholdig azt használja. Természetesen a kontrol infók ugyan úgy lemennek a szervernek, és ugyan úgy ad vissza választ. Ekkor a szervernek bele kell számolnia a késést, azt, hogy mennyi idő múlva érkezik vissza a klienshez a csomag, stb. Igazából egy ~becslést ad arra, hogy a játékos x idő múlva (mire megkapja a választ) hol lesz majd.

A kliens oldalról ez úgy néz ki, hogy mivel magadnak is számolod a transzformációdat, az indulás azonnali lesz (nem kell a válaszra várni), viszont a szerver egy bizonyos tűréshatáron felül felülbírálja a pozíciódat. Azaz ha írsz egy olyan hack programot, amivel 10x gyorsabban szaladsz (kliens oldalon), és mondjuk kikötsz a (0,0,100) pontban, de a szerver szerint a (0,0,10)-ben lehetsz csak, akkor szépen visszadob a (0,0,10)-be, mert a bizonyos tűréshatáron túlmutatott a diff.

Nem biztos, hogy sikerült elmondani, amit akartam, de azért remélem valamennyire érthető lett. Client side prediction - erre találni fogsz pár cikket is.

   
Marcsello - Tag | 228 hsz       Online status #198499   2013.10.23 11:33 GMT+1 óra  
Hello mindenki, a napokban sokat gondolkodtam azon, hogy vajon a "profi" meg egyébként is a legtöbb játékban, hogy van megoldva a fizikai modellezés multiplayer-en. Jelenleg nálam a teljes modellezés szerver oldalon folyik, és csak a kirajzoláshoz szükséges mátrixokat küldöm a klienseknek. Ez 5 kockával (mert csak kockák vannak benne) nagyon jól is működik, de 500 kockával már elég látványosan szaggat. Szóval itt valami kliens oldali huncutságnak is kell lennie, vagy valami más módszerrel alkotnak folyamatosságot, de vajon mivel......?
Az élet szép, csak tele van Bugokkal
http://marcsello.com/
   
ddbwo - Tag | 1625 hsz       Online status #198480   2013.10.21 22:51 GMT+1 óra  
Idézet
Torrents :
és ha én magasról indítom az sem emészt fel több erőforrást?



Az attól függ, hogy mennyi mindent lehet látni, vagy kell szűrni egyszerre. Üres sivatagban majdnem mindegy, tömött városnál ki kell szűrni a sok polygont.
Meg általában az néz ki jól messziről, amit direkt úgy terveznek, hogy messziről kell nézni. Ha nem trükköznek és nem a fekete kép alatt töltik be, mint ennél, akkor LOD-okat használnak. Közel érve lecserélődik minden a memóriába töltött cuccokkal. Meg vsz egy kis négyzet terrain nem lenne valami szép fentről, a nagy kocka terrain meg költséges.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Torrents - Tag | 79 hsz       Online status #198479   2013.10.21 19:48 GMT+1 óra  
Idézet
fpeti :
Idézet
Torrents :
Sziasztok azon töprengek hogy mint a halo 3-ban : http://youtu.be/N0tUabllApw?t=6m12s a játékos valóban olyan rohadt magasról indul, vagy ez máshogy van megoldva?


Mivel egy ablakon keresztül nézi a dolgokat, akár egy renderelt filmet is lejátszhatnának mögötte,és arra raknák a ablak/fülke geometriáját. vagy csak simán elmozgatják az ablak előtt a dolgokat szkriptekkel és kész. Mivel vágás van a leérkezéskor, nagyon valószínű, hogy csalnak.



és ha én magasról indítom az sem emészt fel több erőforrást?

   
fpeti - Törzstag | 1280 hsz       Online status #198478   2013.10.21 19:33 GMT+1 óra  
Idézet
Torrents :
Sziasztok azon töprengek hogy mint a halo 3-ban : http://youtu.be/N0tUabllApw?t=6m12s a játékos valóban olyan rohadt magasról indul, vagy ez máshogy van megoldva?


Mivel egy ablakon keresztül nézi a dolgokat, akár egy renderelt filmet is lejátszhatnának mögötte,és arra raknák a ablak/fülke geometriáját. vagy csak simán elmozgatják az ablak előtt a dolgokat szkriptekkel és kész. Mivel vágás van a leérkezéskor, nagyon valószínű, hogy csalnak.
   
Torrents - Tag | 79 hsz       Online status #198477   2013.10.21 19:07 GMT+1 óra  
Sziasztok azon töprengek hogy mint a halo 3-ban : http://youtu.be/N0tUabllApw?t=6m12s a játékos valóban olyan rohadt magasról indul, vagy ez máshogy van megoldva?

   
StrykerKKD - Tag | 30 hsz       Online status #198475   2013.10.21 18:33 GMT+1 óra  
Idézet
husudosu :
....



Ha Linuxon akarsz C#-pal fejleszteni akkor majdnem biztos ,hogy Mono-t kell használnod.
Gyakorlatilag könnyű a választás ,mert csak monogame az ,amit tudnál így használni. Mást nem találtam.
   
glezmen - Törzstag | 381 hsz       Online status #198474   2013.10.21 18:02 GMT+1 óra  
Idézet
husudosu :
Hali!

Szeretnék játék fejlesztéssel foglalkozni (hobbi szinten), viszont nem tudom hogy milyen motorral lenne érdemes foglalkoznom. Van tapasztalatom C# programozásban, tehát olyat szeretnék ami:
- C# nyelven tudok alkalmazást írni
- Egyszerűen tanulható
- Linux kompatibilis fejlesztőeszközök vannak hozzá

Köszi előre is a segítséget!



C# es Linux? ezt hogy hoztad ossze?
ettol meg nem lehetetlen persze, de erosen beszukitetted a lehetosegeidet...
Elegge adna magat a Unity, de sajnos az meg mindig hadilabon all a Linuxszal
   
husudosu - Tag | 1 hsz       Online status #198473   2013.10.21 17:07 GMT+1 óra  
Hali!

Szeretnék játék fejlesztéssel foglalkozni (hobbi szinten), viszont nem tudom hogy milyen motorral lenne érdemes foglalkoznom. Van tapasztalatom C# programozásban, tehát olyat szeretnék ami:
- C# nyelven tudok alkalmazást írni
- Egyszerűen tanulható
- Linux kompatibilis fejlesztőeszközök vannak hozzá

Köszi előre is a segítséget!

   
Ravic_IV - Tag | 2 hsz       Online status #198466   2013.10.21 09:49 GMT+1 óra  
Sziasztok Mindenki!

Új vagyok errefelé. Gondolom itt is illik bemutatkozni az újaknak.

2 évig voltam Game designer egy brovseres startégiai játéknál, most sima php, js, css ilyesmi fejlesztgetéssel foglalkozom.

Szívesen foglalkoznék újra játék fejlesztéssel... Asszem ennyi

   
Tunyu - Tag | 444 hsz       Online status #198429   2013.10.18 20:14 GMT+1 óra  
Módosítanom kellett az AddForce-t AddRelativeForce-ra,eddig nem figyeltem hogy a globális tér irányában repítettem.Finomítottam a gyorsuláson is,és számolgattam kicsit.Ha minden igaz simán csinálhatok egy 8 köb exameter méretű teret,de ez még mindig kevés ahoz hogy a föld és a hold egy pályán legyen.De az is lehet hogy tudok 8000 köb exameter méretű teret,de akkor a kamera a ParticleSystem kezelése már nehézkes lenne,de viszont akkor már a hold benne lenne.

   
ddbwo - Tag | 1625 hsz       Online status #198422   2013.10.18 18:32 GMT+1 óra  
Ja, ja. Pontosabban nullával nem szabad osztani.
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Pretender - Törzstag | 2498 hsz       Online status #198412   2013.10.18 06:12 GMT+1 óra  
Idézet
ddbwo :
Meg nullát nem szabad osztani. Az hibás művelet.


Nullát szabad osztani.
Nullával nem.

   
Tunyu - Tag | 444 hsz       Online status #198411   2013.10.18 04:24 GMT+1 óra  
Mióta kivettem a meghajtásból az időt (Time.deltaTime) azóta gyorsul ilyen durván addig egyenletes volt.Majd finomítok rajta.A játék fps-e jó, a gpu minimális kihasználtsága melett 80-100fps.De ahogy itt olvasgattam ha elkészül lehet 10fps alatt lesz majd a néhány száz objektum miatt. Csak a videó lett kicsit gyatra pedig felvettem 20 képkockára,de a felvevő eléggé zabálja a gépem az unity mellett.

Ezt a hozzászólást Tunyu módosította (2013.10.18 04:33 GMT+1 óra, ---)

   
ddbwo - Tag | 1625 hsz       Online status #198408   2013.10.17 22:50 GMT+1 óra  
jó ez. Általában azért érdemes átállni fixedUpdate-re, hogy egyenletes legyen a force adagolása is. Olyankor csak a deltaTime helyett (1.0/60.0)-al kell pl szorozni. Vagy ahány frame/sec van.

Meg nullát nem szabad osztani. Az hibás művelet. A Unity nem tudom figyeli-e...
A Half-Life 2: Deathmatch promóció megszűnt! [B¤°
Kezdetben volék az üresség. Ám akkor a Struktúrfüggöny megteremté az Urat.
DrunkenDragon* Blackwolf
   
Frissebbek | Korábbi postok
[1] [2] > 3 < [4] [5] [6] [7] [8] [9] [10] [15] [20] [25] [30] [35] [40] [44]