Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: stewe 18. 12. 2011, 16:38:13
-
Zdravim,
chcel by som sa naucit nejake jednoduche veci s 3d grafikou, vykreslit scenu, pohyb po nej ... chcel by som si spravit nejaky teren a len sa pozerat po okoli z vtacej perspektivy ... ziadne first person strielacky ani podobne.
Zadanie by bolo, tazsie je to s realizaciou, povedzme si na na rovinu, je z coho vyberat.
V prvom rade neviem, ci pouzit nejaky framework alebo to vsetko napisat od zaciatku, low level. A dalej v akom jazyku. Osobne sa mi protivi nieco robit v c++, i ked viem, ze to je asi najvhodnejsie. ja by som preferoval javu ale tam teda neviem ake su moznosti.
napriklad taky irrlicht je na c++, ma to rozne bindingy, aj nejaky jirr na javu ale proste ... neviem teda ako bude java vykonna v 3d :D
dalsia moznost je pouzit opengl ale zasa, pisat to v cistom c++ mi pripada ako kanon na vrabce.
potom su tu rozne moznosti ako pouzitie skriptovacich jazykov (napr. ze binding opengl + lua) ale vsetky tieto moznosti mi pripadaju strasne nevyspele, nie je za tym komunita, bastli si to nejaky typek doma na kolene ... nema to proste az tak dobru penetraciu.
takze zasa som skoncil pri tych frameworkoch a pouzitiu c++ sa asi nevyhnem, ale c++ fakt neznasam.
este by som bol rad, ked by sa to dalo pisat v c#, aspon by som sa c# viac naucil, nechcem sa proste c++ venovat.
takze java / c# + nejaky sikovny framework postaveny na opengl. existuje wrapper na c#, irrlicht.net ...
dajem to chcem pisat pod linuxom, s takym monodevelop by to nemal byt problem.
mate nejake vhodnejsie riesenie pre moje potreby?
dakujem za napady
-
skus sa pozriet na http://unity3d.com/ mozno je to odpoved aj na tvoje C# a monodevelop. skratka je to hnusne mono ale snad ti to pomoze.
-
skus sa pozriet na http://unity3d.com/ mozno je to odpoved aj na tvoje C# a monodevelop. skratka je to hnusne mono ale snad ti to pomoze.
o ako tak pozeram oklamal som ta nikde tam nevidim moznost pouzivat to v "linuxe"
-
hej vsimol som si :)
moze to byt fajn riesenie ale ja by som chcel viac programovat aj ked to moze byt drina. tieto nastroje mi pripadaju strasne velke, vie to vsetko hned a je to pomaly "klikacka". mne ide skorej o to pochopit ako sa to vlastne vsetko robi, cela ta grafika, aj ked to moze vyzerat ako z roku 3. framework by mi mal len poskytnut nejake api aby som to robil pohodlnejsie ale zasa by to nemalo byt "az tak" napomocne ...
-
Kdo říká, že v Javě nelze vyvíjet kvalitní 3D aplikace? Stačí se podívat na Minecraft. A OpenGL můžeš používat i s Javou.
-
zkus se podívat na JME http://jmonkeyengine.com/
-
Vyber si :
atmosphir - http://atmosphir.com/
Chrystal Space - http://www.crystalspace3d.org/main/Main_Page
Luxinia - http://www.luxinia.de/index.php/Main/HomePage
OGRE - http://www.ogre3d.org/
Panda3D - http://www.panda3d.org/
Sphere - http://chadaustin.me/sphere/
Cafu Engine - http://www.cafu.de/
-
Ještě k tomu - to jsou enginy, které znám a nebo o nichž alespoń vím. Bohužel jsem nějak opoměl tvůj požadavek na C#, dost neobvyklé zrovna pro Linux, takže se musíš mrknout jestli některý z těch projektů to nenabízí :)
-
Ještě bych málem zapoměl : https://github.com/TTimo/doom3.gpl :-D
-
Vyber si :
atmosphir - http://atmosphir.com/
Chrystal Space - http://www.crystalspace3d.org/main/Main_Page
Luxinia - http://www.luxinia.de/index.php/Main/HomePage
OGRE - http://www.ogre3d.org/
Panda3D - http://www.panda3d.org/
Sphere - http://chadaustin.me/sphere/
Cafu Engine - http://www.cafu.de/
ogre a panda vyzeraju dobre, mozno aj luxinia, tam sa pouziva lua, nejaky taky sikovny jazyk nie je odveci vediet :)
-
zkus se podívat na JME http://jmonkeyengine.com/
toto vyzera zatial najslubnejsie, dakujem za radu
-
skusil som ten jmonkey engine, fakt pecka!!!! :)
-
Nejlepší je jednoznačně Torque 3D. Navíc lze za drobný bakšiš výsledek prodávat.
www.garagegames.com
-
Kdo říká, že v Javě nelze vyvíjet kvalitní 3D aplikace? Stačí se podívat na Minecraft. A OpenGL můžeš používat i s Javou.
Tak zrovna Minecraft bych za ukazku 3D v Jave nedal :-)
-
Ked sa chces ucit 3d, tak nepouzivaj kniznice... Skus webgl s javascriptom. Ma to tu "vyhodu", ze to je skript. Myslim, ze aj nehe-ho niekto prerobil na webgl.
-
Tomas: proc ne? zpracovane to je dobre :)
-
Kdo říká, že v Javě nelze vyvíjet kvalitní 3D aplikace? Stačí se podívat na Minecraft. A OpenGL můžeš používat i s Javou.
Tak zrovna Minecraft bych za ukazku 3D v Jave nedal :-)
Taky nechápu co ti vadí na Minecraftu? Podle mě je skvělý. A která jiná technologie ti umožní takové věci, jako spouštět hru z jak z prohlížeče, tak na desktopu? (skrz aplet) www.minecraft.net/classic/play
Vezmi v úvahu, že původní Minecraft napsal JEDEN člověk! Perfektní ukázka efektivního vývoje v Javě. Není to dokonalý program, ale poměr (vložené úsilí/ získaná hodnota) je výborný.
-
Souhlasím s Tomášem. Minecraft opravdu není dobrý příklad na OpenGL aplikaci napsanou v Javě. Je mi jasné že teď tady pro mnohé lidi rozpoutám flamewar když napíšu že Java je v tomhle ohledu pomalá, ALE než začnete rýpat zkuste si napsat dvě stejné aplikace jednu v Javě jednu v C nebo C++, které budou provádět tyto operace pro generování terénu FFT, Perlin noise, Fraktál brownového pohybu, vygenerovaný voxelový 3d prostor optimalizujte přes Octrees a frustum culling. Java aplikace bude v tomhle ještě stále pokulhávat. Nemám nic proti Javě jako samotné, ale na některé aplikace mi stále nepříjde moc ideální. Zato na nějaké rychlé prototypování je to super i když co se prototypování týče bych dal osobně přednost raději Pythonu.
Co se toho Minecraftu týče tak jediné plus které to z Javy má je to že se to dá spouštět jako applet i klidně z browseru :) ALE generovat rozsáhlý, komplexní voxelový svět v JAVĚ ? to mě raději ukamenujte.... Pořád mlčky doufám že se Minecraft přepíše do něčeho smysluplnějšího než je Java....
Shadow
-
.. zkuste si napsat dvě stejné aplikace jednu v Javě jednu v C nebo C++, které budou provádět tyto operace pro generování terénu FFT, Perlin noise, Fraktál brownového pohybu, vygenerovaný voxelový 3d prostor optimalizujte přes Octrees a frustum culling. Java aplikace bude v tomhle ještě stále pokulhávat.
Ja by som chcel naimplementovat diamond-square algoritmus na vygenerovanie nejakeho landscape-u, bude tu java prekazka? podla mna ked ten rozmer heightmap-y nespravim nejaky strasne velky tak to java zvladne v pohode. neviem ale ci to bude prekazka napriklad pri osvetlovani (napr. ze slnko sa hyba po oblohe a meni tien povrchu) alebo simulacii realneho terenu (akoze pustim z kopca loptu a bude sa kotulat dole svahom)
-
stewe: jestli se někdo bude po nocích nudit tak si může něco naprogramovat :)
-
@DarkNight & Jelen: Nevsiml jsem si, ze bych na Minecraft hazel nejakou spinu. Pred Notchem smekam, za to ze to dotahl do konce a kolik na takovehle "hlouposti" (budme uprimni) vydelal. To bezesporu.
@Jelen "Perfektní ukázka efektivního vývoje v Javě" Opravdu me nechtej rozesmat. Je videt ze jsi o Minecraftu, jeho procesu vyvoje vubec ale vubec nic necetl. Ja ano a muzu ti sdelit, ze Minecraft mel obrovske porodni bolesti a ze Notch si s nim teda uzil. Take behem vyvoje nadelal kopec chyb, kdy v jednu chvili neustale zahazoval rozepsany projekt a zase ho psal uplne od znova. Byl pekne frustrovany. Takze tak :)
-
Co se tyce obecne vykonu platforem, tak specialne Java/C#(XNA) jsou do urcite miry dostatecne rychle, nez se ke slovu dostane GC ze :) Obzvlast na X360 to je radost. Object polling absolutni nutnosti.
-
doporucoval bych napred ciste OpenGL. jde spis o pochopeni principu,ve finale je docela fuk jestli to pak bude v C/C++ Jave nebo cemkoli jinem.na OpenGL je hezky ze se svou jednoduchou strukturou vypada ve vsech jazycich temer stejne.je to taky suverene nejrozsirenejsi API pro grafiku,prakticky kazdy hw a os s grafickymi ambicemi OpenGL ma. jinak je fajn napred zacit s klasickou pipeline, ale urcite pak prejit na GLSL,bez shaderu bych dnes uz nic nezacinal. lakava je taky navaznost na OpenCL,ktere ideove OpenGL pripomina a osobne vidim velkou budoucnost v CPU/GPU smisenem programovani