Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: kotelgg 04. 12. 2019, 19:32:00

Název: WebGL a co k tomu?
Přispěvatel: kotelgg 04. 12. 2019, 19:32:00
Zdravím, chci udělat web hru (strategii) a dnes a do budoucna připadá v úvahu asi jen WebGL. Koukal jsem na příklady i hotová řešení a dřív se k němu používalo jquery, teď často react. No ale nestačil by i jednoduchý javascript? V podstatě jde jen o příjem a odesílání dat na server (c++) a ovládání tree.js nebo jiného webgl frameworku. Nenapadá mě tedy výhoda použití např. reactu, kde to při nějakém problému se závislostmi už nikdo nedá dohromady.
Název: Re:WebGL a co k tomu?
Přispěvatel: gill 04. 12. 2019, 20:05:46
Jquery bych chápal, na příjem a odesílání dat (i když existuje fetch API). Ale k čemu ten React? Vykreslujete HTML UI nad canvas? Hry nedělám, jen mě to zajímá. Dělal jsem nějaké 2d animace v canvasu s konva JS s react-konva nadstavbou, ale React je tam zbytečný, protože se v každém kroku překresluje vše.
Název: Re:WebGL a co k tomu?
Přispěvatel: Filip Jirsák 04. 12. 2019, 20:17:13
Nedoporučoval bych ani čistý JavaScript ani jQuery. Pokaždé, když jsem si říkal „to je malé, na to stačí čistý JS / jQuery“, jsem si velmi brzy nadával, že jsem měl použít něco pořádného. Nemusí to být hned React, klidně něco menšího, Vue, nebo jen dojo, ale hlavně něco, co nepovede na špagetový kód.
Název: Re:WebGL a co k tomu?
Přispěvatel: gill 04. 12. 2019, 20:20:09
Nedoporučoval bych ani čistý JavaScript ani jQuery. Pokaždé, když jsem si říkal „to je malé, na to stačí čistý JS / jQuery“, jsem si velmi brzy nadával, že jsem měl použít něco pořádného. Nemusí to být hned React, klidně něco menšího, Vue, nebo jen dojo, ale hlavně něco, co nepovede na špagetový kód.

pro aplikace vykreslující jen do canvas React ani Vue moc nevyužijete.
Název: Re:WebGL a co k tomu?
Přispěvatel: Wavelet 04. 12. 2019, 20:42:08
Pokud chcete dělat WebGL simulaci/animaci/hru, pak React ani Vue s ničím nepomůžou (pokud to není komplexní aplikace, kde canvas je jen jedna z komponent) jak píšete. Komunikaci si nějak uděláte přes websokety a UI si udělejte přímo v Canvasu přes něco jako imgui.
Název: Re:WebGL a co k tomu?
Přispěvatel: Ondrej Nemecek 04. 12. 2019, 20:51:52
Nemusí to být ani v js, je možné transpilovat třeba z typescriptu a tím se špagetám vyhnout. Jak je na tom webassembly nevím.
Název: Re:WebGL a co k tomu?
Přispěvatel: kotelgg 04. 12. 2019, 21:07:39
Webassembly mě nenapadlo, to by se programovalo i normálně narozdíl od js. Určitě zkusím.
Název: Re:WebGL a co k tomu?
Přispěvatel: kotelgg 04. 12. 2019, 21:33:25
To je náklep, tak je to jasný  :D Navíc se dá použít unity3d.
Název: Re:WebGL a co k tomu?
Přispěvatel: gill 04. 12. 2019, 21:35:25
Nemusí to být ani v js, je možné transpilovat třeba z typescriptu a tím se špagetám vyhnout. Jak je na tom webassembly nevím.

jak definujete špagety? Typescript je jen javascript s typovými anotacemi.
Název: Re:WebGL a co k tomu?
Přispěvatel: gill 04. 12. 2019, 21:38:30
Pokud chcete dělat WebGL simulaci/animaci/hru, pak React ani Vue s ničím nepomůžou (pokud to není komplexní aplikace, kde canvas je jen jedna z komponent) jak píšete. Komunikaci si nějak uděláte přes websokety a UI si udělejte přímo v Canvasu přes něco jako imgui.

může být canvas přes celou stránku a vykreslovat html gui přes canvas.
Název: Re:WebGL a co k tomu?
Přispěvatel: Ondrej Nemecek 05. 12. 2019, 02:09:32
Nemusí to být ani v js, je možné transpilovat třeba z typescriptu a tím se špagetám vyhnout. Jak je na tom webassembly nevím.

jak definujete špagety? Typescript je jen javascript s typovými anotacemi.

Nedefinuju je nijak, byl to jen příklad transpilace, možná blbý. Podstatou sdělení je možnost transpilace a její potenciální přínos pro organizaci kódu.
Název: Re:WebGL a co k tomu?
Přispěvatel: tecka 05. 12. 2019, 03:31:35
Webassembly mě nenapadlo, to by se programovalo i normálně narozdíl od js. Určitě zkusím.
WebAssembly ti s WebGL pomůže asi tak jako jQuery a React. Vůbec.
Název: Re:WebGL a co k tomu?
Přispěvatel: kotelgg 05. 12. 2019, 11:24:22
Já se chci nějakým způsobem vyhnout javascriptu, takže na to je wasm ideální a můžu to psát C++, které je mi bližší než javascript. Někdo už dokonce přepsal tree.js do c++, takže by to mohlo bejt v pohodě.
Název: Re:WebGL a co k tomu?
Přispěvatel: 3ugeene 05. 12. 2019, 13:35:18
Já se chci nějakým způsobem vyhnout javascriptu, takže na to je wasm ideální a můžu to psát C++, které je mi bližší než javascript. Někdo už dokonce přepsal tree.js do c++, takže by to mohlo bejt v pohodě.



To si myslite, ze budete psat webovou aplikaci v c++ jen proto, ze nekdo portoval Three.js do c++? Trochu blbost, ne? :) Na webu se pouziva prevazne javascript. Ostatni jsou jen frameworky nebo knihovny zjednodusujici prace. WA zatim neznam, respektive nevim, jestli se to uz jako teda pouziva nebo tak
Název: Re:WebGL a co k tomu?
Přispěvatel: Ondrej Nemecek 05. 12. 2019, 13:51:48
Já se chci nějakým způsobem vyhnout javascriptu, takže na to je wasm ideální a můžu to psát C++, které je mi bližší než javascript. Někdo už dokonce přepsal tree.js do c++, takže by to mohlo bejt v pohodě.
To si myslite, ze budete psat webovou aplikaci v c++ jen proto, ze nekdo portoval Three.js do c++? Trochu blbost, ne? :) Na webu se pouziva prevazne javascript. Ostatni jsou jen frameworky nebo knihovny zjednodusujici prace. WA zatim neznam, respektive nevim, jestli se to uz jako teda pouziva nebo tak

Hlavně to nemusí fungovat. Pokud by to ovšem fungovalo, pak to taková blbost není.

Stejně bych ale doporučil jít nějakou konvenční cestou. Pokud nemá tazatel dost zkušeností s danou oblastí.
Název: Re:WebGL a co k tomu?
Přispěvatel: 3ugeene 05. 12. 2019, 15:15:42

Hlavně to nemusí fungovat. Pokud by to ovšem fungovalo, pak to taková blbost není.

Stejně bych ale doporučil jít nějakou konvenční cestou. Pokud nemá tazatel dost zkušeností s danou oblastí.


no prave, ty prepisy nejsou delany pro web, ale C++ jako takovy. Pro vytvareni (3D) her v prohlizecich se pouzivaji hovadiny jako je treba babylonJS nebo PlayCanvas ci jak se to jmenuje. Pro milovniky hardcore to jde samozrejme udelat ve vanillaJS s napojenim na WebGL, ale to uz clovek musi neco umet.

Název: Re:WebGL a co k tomu?
Přispěvatel: kotelgg 05. 12. 2019, 16:42:12
Na první pohled mi přijde webassembly ve všem lepší než js, uvidím za chvíli.