• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    CYBERWOLFOn-line WebBased hry kreativně - udělejte si vlastní webovku!
    Hráli jste někdy nějakou webovku a napadlo Vás někdy udělat si nějako vlastní?
    Máte nějaký nápad na bezva hru a neumíte ho realizovat?
    Nebo umíte skvěle programovat webové aplikace, ale nemáte nápad na dobrou hru?
    Nebo namáte ani jedno a umíte cokoliv jiného, co by mohlo při tvorbě hry pomoct (malovat, dělat hezky vylížející html stránky, jakoukoli grafiku, nebo jste matematický génius, prostě COKOLI)
    Pokud Vám vyšla alespoň jedna kladná odpověď, jste tu správně!

    domenu radeji stylem

    17 hlasy od 17 respondentů

      rozbalit záhlaví
      CYBERWOLF
      CYBERWOLF --- ---
      YORK: se spritem je to o dost jednodušší a nemusíš řešit, že ti to nějaký prohlížeč ukáže jinak, než všechny ostatní. DOM bych použil jenom na nějaké triviality, nebo věci se kterými potřebuješ pracovat mimo canvas.
      YORK
      YORK --- ---
      CYBERWOLF: Třeba inventář, unit framy, tak něco.

      Schovávání, přebarvování a hejbání není u DOM elementů problém. Zbývá překrývání a případně scalování spolu se scénou - pokud má něco být "uvnitř" scény (pod něčím jiným ve scéně), tak asi fakt dává smysl renderovat to Phaserem.
      CYBERWOLF
      CYBERWOLF --- ---
      YORK: Řekl bych, že když ho chceš schovávat, přebarvovat, překrývat nebo s tím hýbat, tak je DOM dost na prd. Hlavně ale - čemu říkáš UI?
      YORK
      YORK --- ---
      Existuje nějakej důvod, proč dělat UIčko v canvasu přes Phaser a ne přes DOM komponenty nad canvasem?
      TRANCEWARP
      TRANCEWARP --- ---
      ale mozna sem mel treba neco spatne nastavenyho... s unrealem umim fakt zaklady...
      kdyz budu mit kliku, budeme mit tedka na 2 roky xeft na vyzkum v unrealu a doufam, ze se to tim padem naucim o mnoho vic
      je to docela rocket science, rozumet tomu poradne...
      TRANCEWARP
      TRANCEWARP --- ---
      SIRLOON: me teda jo, udelal sem si level a takovej gun na tenisaky a kdyz strilis dost rychle, tak nektery proleti zdi...
      SIRLOON
      SIRLOON --- ---
      TRANCEWARP: v unrealu se mi to teda jeste nestalo
      TRANCEWARP
      TRANCEWARP --- ---
      CYBERWOLF: ze ti propadavaj veci skrz steny se ti klidne muze stat i v Unity i v Unrealu...
      to je proste bolest...
      YORK
      YORK --- ---
      CYBERWOLF: Box2d dělá to samý, jen trochu víc komplikovaně :-)

      Ad prostřelování: Přesně tak. Co jsem koukal na github, tak autor na tom už dlouho dělá a furt s tím nějak nemůže pohnout.

      Ad odezva: Ideální technicky řešení je, mít stejnou simulaci na klientu i na serveru. Počítat všechno čistě na klientu v multiplayerové hře je ráj pro cheatery, takže je rozhodně lepší začít rovnou tím, že základ je server-side.
      CYBERWOLF
      CYBERWOLF --- ---
      YORK: Matter.js vypadá dobře, na box2d koukám jak tele na nový vrata. A s Matter.js se teda dá prostřelit pevné těleso, když se pohybuješ moc rychle?

      A jinak fyziku řešit na severu - nevim teda co chystáš, ale nebude to blbý kvůli odezvě a tak?
      YORK
      YORK --- ---
      CYBERWOLF: V Phaseru 3 se kromě arcade fyziky dá použít Matter.js a "impact physics" (což nevím, přesně, co je zač).

      Matter.js jsem zkoušel a je celkem fajn, ale nakonec jsem skončil u Box2d, protože jsem našel implementaci v typescriptu, na rozdíl od Matter.js umí continuous collision detection a beztak chci fyziku počítat na serveru, takže integrace s grafickým enginem mě netrápí.
      CYBERWOLF
      CYBERWOLF --- ---
      Oproti flashi je všechno dost dřevní. Co já se před pár lety díval na Phaser, tak mi tam vadilo, že sice to má bejt jako engine, ale člověk si musí všechno dopsat (třeba kolize, co nejsou čtverce). Takže mi vyšlo jako lepší varianta vzít pixi.js (na kterém phaser stojí) a ten zbytek si dopsat.

      Ale říkám - je to pár let zpátky.
      TRANCEWARP
      TRANCEWARP --- ---
      LACROIX o tom vi vic...
      TRANCEWARP
      TRANCEWARP --- ---
      YORK: je to hodne fresh... takze treba plugin, kterej by fungoval na svete nikde neni... my jsme si ho napsali...
      oproti flashi je to furt dost drevni... bohuzel jsme za 10 furt o par let pozadu...
      YORK
      YORK --- ---
      TRANCEWARP: Peklo v jakým smyslu? Že je ten engine nendodělanej/zabugovanej, nebo vyloženě špatnej?
      TRANCEWARP
      TRANCEWARP --- ---
      YORK: my ve phaseru 3 delame produkcni vec... je to peklo...

      mame vlastni plugin, vylozene 0 day... takze umime animace z Dragon Bones primo ve phaseru...
      YORK
      YORK --- ---
      CYBERWOLF: Trojka je teď venku poměrně krátce, je v ní pořád dost bugů a věci se dost měněj za běhu, což je trochu nepříjemný, ale co jsem tak koukal, tak oproti dvojce je to posun kupředu a ty zásadní strukturální změny maj smysl. Až se to ustálí, tak to imho bude docela fajn engine.

      Daj se do toho přímo načíst mapy z Tiled editoru. Problém je trochu s animacema, to zatím nemají dotažený. Existuje sice plugin, kterej skoro automaticky rozběhá animace uložené přímo v tilemapě, ale když vyrobíš sprity z objectů definovaných v tilemapě (tzn. nepoužiješ přímo tile layer), tak animované nejsou.

      Zatím to obcházím tím, že si paralelně vyrobím animaci v Texture Packeru. Phaser 3 ji sice zatím neumí přímo načíst, ale umí načíst texture atlas (kterej může bejt stejnej jako textura pro tilemapu) a animačku si k tomu doplníš v kódu.

      Výhledově by ale měly jít všechny grafický assety vyrobit přímo v Tiled editoru.
      CYBERWOLF
      CYBERWOLF --- ---
      YORK: to se určitě poděl - na to tu ten klub je :)
      YORK
      YORK --- ---
      CYBERWOLF: Je to sice slušná nekromancie, ale experimentuju teď trochu s Phaserem 3, takže pokud tě pořád zajímá něco ohledně browser-based javascript enginů, můžu se podělit o zkušenosti.
      TRANCEWARP
      TRANCEWARP --- ---
      jj
      CYBERWOLF
      CYBERWOLF --- ---
      SRNECEK: to ti nepovím, sem to ale nepatří. Leda bys řešil, jak zpeněžit hru :)
      Kliknutím sem můžete změnit nastavení reklam