NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Java hra

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Šimon Polesný:20.5.2017 17:13

Zdravím, jsem tu nový a potřeboval bych trochu poradit, už tak rok se učím programovat v Javě a už od začátku jsem chtěl vytvořit 2D stavební hru. Něco na styl hry Prison Architect nebo Rimworld, kde bude muset hráč stavět budovy a řídit zaměstnance. Znám základy Javy znám víceméně gui, mám i vytvořený nějaký základ (buffer, okno, fps a tick counter, atd.) podle pár tutoriálů ale všechny tutoriály a ukázky her jsou dělaný pouze tak že hráč prochází připravenou mapou. Je možné v Javě naprogramovat aby mohl sám hráč na mapě budovat objekty stavby atd. nebo jsem si vybral špatný programovací jazyk. Popřípadě jak by se to dalo naprogramovat.
Za každou radu budu rád.
Děkuji

 
Odpovědět
20.5.2017 17:13
Avatar
Erik Bystroň:20.5.2017 17:21

Samozřejmě to možné je například pomocí libgdx :-)

 
Nahoru Odpovědět
20.5.2017 17:21
Avatar
Šimon Polesný:21.5.2017 10:04

Trochu jsem hledal, ale moc jsem toho o Libgdx nenašel. Tak si říkám zda by pro tenhle typ hry nebylo vhodnější Unity.

 
Nahoru Odpovědět
21.5.2017 10:04
Avatar
Odpovídá na Šimon Polesný
Patrik Valkovič:21.5.2017 10:14

To je hloupost. V každém programovacím jazyce uděláš to stejné. Ty jen potřebuješ nějakou knihovnu, která za tebe vyřeší vykreslování. Nikdy jsem nic takového v Javě nezkoušel, takže ti žádnou knihovnu nedoporučím. Libgdx už vypadá, že je hotový herní engine - co se dívám, je to něco jako Unity s Javou. Co si zvolíš je na tobě. Důležité je to, že jak se hra bude chovat si zvolíš sám (naprogramuješ to).

Nahoru Odpovědět
21.5.2017 10:14
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Invi
Tvůrce
Avatar
Invi:21.5.2017 11:39

Pokud by si to chtěl dělat v Unity, tak existuje skvělej tutoriál: https://www.youtube.com/watch?…

Jinak momentálně je projekt na githubu a stará se o něj komunita: https://github.com/…ectPorcupine

 
Nahoru Odpovědět
21.5.2017 11:39
Avatar
Odpovídá na Invi
Šimon Polesný:21.5.2017 11:45

Přesně tenhle tutoriál jsem našel a proto jsem uvažoval jestli to jde i v Javě nebo jestli přejít na Unity, nikde jsem takový návod v Javě nenašel a přesně takovouhle hru bych chtěl udělat, kde bude hráč stavět, vybavovat budovu, najímat zaměstnance a dělat management

 
Nahoru Odpovědět
21.5.2017 11:45
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Šimon Polesný
gcx11:21.5.2017 16:31

Jde to udělat i v Javě. Základem je zjišťovat, jestli hráč kliknul a kam. Začni napřed s tím, že budeš moct bořit a stavět jeden typ budovy. To pak vylepši, že se bude měřit, jestli má hráč dost surovin a pak přidej různé typy budov. Nakonec přidej zaměstnance, jejich ovládání a jejich AI.

 
Nahoru Odpovědět
21.5.2017 16:31
Avatar
Šimon Polesný:23.5.2017 22:17

Díky za radu, určitě to vyzkoušim.
Ještě se chci zeptat jestli jde nějak normálně naprogramovat aby u hry tohoto typu šlo vytvořit více pater, člověk by mezi nimi mohl přepínal, stavět v každém z nich a aby se AI mohli přesouvat mezi jednotlivými patry. Jestli se to dělá například pomocí vláken nebo jestli je to na naprogramování moc složitý?

 
Nahoru Odpovědět
23.5.2017 22:17
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Šimon Polesný
gcx11:24.5.2017 14:17

Ano, jde. Uděláš si seznam pater a budeš simulovat postupně každé. Mezi nimi budeš přepínat tak, že se bude renderovat zrovna to, na které se kouká hráč. NPC si pak patra můžou předávat nějakou metodou.

Vlákny by to také šlo, ale PC by měl utáhnout i simulování více pater naráz. Takže vlákna nutná nejsou, akorát to mnohonásobně zesložití program.

 
Nahoru Odpovědět
24.5.2017 14:17
Avatar
Erik Bystroň:24.5.2017 19:05

Nejlepší a nejlehčí pro tebe bude Unity, sice musíš místo Javy použít C# ale až na pár výjimek je to to samé ;-)

 
Nahoru Odpovědět
24.5.2017 19:05
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.