Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 7 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.14
Prihlásený: 04.08.15
Príspevky: 27
Témy: 3
Príspevok NapísalOffline : 12.11.2014 1:12

Zdravím.
1, Chcel by som naprogramovať hru v C++, no v C++ mám skúsenosti iba s konzolou. Hodilo by sa mi pár rád ohľadom výberu knižníc. Dočítal som sa všeličo o winapi, qt4, OpenGL a DirectX, no bol by som rád keby som sa dočítal aj o praktických skúsenostiach.

2, V prípade, že by som si na vytvorenie okien, buttonov, menu a pod. komponentov vybral qt4 alebo winapi, je ich možné použiť ich aj na nejakú schopnejšiu 2D grafiku ? Typu hry Šach napr.

3, ak budem vo Vizual Studio 2012 robiť s qt4 / winapi GUI, je možné neskôr pridať OpenGL / DirectX bez potreby vytvorenia nového projektu a jeho spúšťania starou aplikáciou ako novy proces ? Neviem či som sa dobre vyjadril, ale mám na mysli že by proste bežali 2 na sebe nezávislé programy, pričom prvý program by bol menu vo winapi a druhy hra v OpenGL. Pri kliknutí na ŠTART by sa potom spustil úplne iný program.

Ďakujem.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3
Príspevok NapísalOffline : 12.11.2014 7:53

Určite by si nemal začínať s OpenGL, alebo DirectX. Tam ide často o skutočné programovanie pc grafiky, čo je jedna z najnáročnejších vecí v programovaní.
Začni niečím jednoduchším, ideálne s knižnicou SFML, čo je objektová knižnica nad OpenGL.
Tiež mi nie je jasné, prečo by niekto chcel robiť hru a využívať pri tom komponenty winapi. Tlačítka, popisky a iné si predsa budeš robiť vlastné. V prípade potreby (neviem akej podivnej) sa to ale kombinovať samozrejme dá.







_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.14
Prihlásený: 04.08.15
Príspevky: 27
Témy: 3
Príspevok Napísal autor témyOffline : 12.11.2014 12:46

No nemám skúsenosti s oknovými aplikáciami v C++, Dr. Google mi vždy na túto tému odporučí winapi alebo simple window form, tá forma je podobná Lazarusu a niesom si istý či by mi to v škole prešlo, po dohode asi hej, ale dostal by som možno menej bodov lebo je to dosť jednoduché. Dajú sa spraviť vlastné komponenty bez winapi ? Mohol by si mi linknuť nejaký návod ? Hľadal som už všade možne kde ma napadlo ale fakt neviem ako v C++ vytvoriť okno.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3
Príspevok NapísalOffline : 12.11.2014 13:27

Najprv sa rozmysli, či chceš robiť hru, alebo "okienkovú aplikáciu" (tj. klasický windows vzhľad tlačítiek apod). Nie že by sa nedala urobiť hra v okienkach, ale je oveľa jednoduchšie a prínosnejšie robiť to v nástrojoch určených pre tvorbu grafiky.
Takže "okienka" a "pc grafika" sú dve úplne odlišné veci. Čo z toho chceš?







_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.14
Prihlásený: 04.08.15
Príspevky: 27
Témy: 3
Príspevok Napísal autor témyOffline : 12.11.2014 13:56

No chcem robiť hru, ale potrebujem ovládacie prvky ako buttony na start, load, save .... potom nejaké checkboxy pre nastavenia. Ďalej plochu kde bude hra bežat a bude možné získavať event so súradnicami, napr. po kliknutí myšou na súradnicu by som chcel získať nejaké e.X a e.Y, aby napr funkcia na označenie figúrky vedela na ktoré políčko v hracej ploche bolo kliknuté.
Napríklad niečo typu:
Kód:
if (Emouse_LB()){
   X = get_event(e.x);
   Y = get_event(e.y);
}

kde Emouse_LB je nejaká fukcia ktorá vráti true ak bolo kliknuté LMB, get_event() získava súradnice klikunie na ploche/okne ... hocičom čo dokáže vykreslovať.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3
Príspevok NapísalOffline : 12.11.2014 14:22

No tak toto sa napríklad dá urobiť vo windows forms (napr vo Visual Studio), s použitím eventu onPaint a trebárs timerom.

Trochu viac "profi" možnosť je SFML http://www.sfml-dev.org/
Máš tam kopec tutoriálov a hotových kódov, ktoré môžeš použiť. Tlačítka si vieš jednoducho urobiť sám (ak klikneš a pozícia myši je v obdĺžniku, ktorý predstavuje tlačítko) Podobne checkboxy a všetko, čo len chceš.

Ďalej, zabudni na to, že v hre napíšeš niečo ako "ak bol klik, tak..." To nie je úplne to, čo sa deje (aj keď vo windows forms sa to tak bude tváriť).
Hru musiš vidieť ako nekonečný cyklus, ktorý mení svet a vykresluje ho. Takže každá hra vždy vyzerá nejako takto:
Kód:
while(run)
{
 obsluhaUdalosti(); //napr klik, koniec, stlacenie klavesy...
 updateSveta();
 vykresliSvet();
 korigujFPS(); //napriklad sleep(40)
}







_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 12.11.14
Prihlásený: 04.08.15
Príspevky: 27
Témy: 3
Príspevok Napísal autor témyOffline : 12.11.2014 17:13

Ďakujem, popozerám http://www.sfml-dev.org/ myslím že to je presne to čo potrebujem. Skúsim vytvoriť aplikáciu.


Odpovedať na tému [ Príspevkov: 7 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. C# Aplikácia

v Technológia .NET

7

1618

24.06.2010 13:46

dEVIANT Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. hra v c

v Assembler, C, C++, Pascal, Java

11

502

02.09.2013 18:52

faraon Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. mini-hra v C-cku

v Assembler, C, C++, Pascal, Java

2

985

30.10.2011 21:37

Alastor Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Hra 2048-text mode-- v C

v Assembler, C, C++, Pascal, Java

3

481

05.03.2016 12:09

magic Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. BANG! kartova hra vs kockova hra :)

v Krčma

3

698

12.01.2016 7:26

Miso122 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Mám sa učiť C ++/objective C/ C#?

v Assembler, C, C++, Pascal, Java

5

729

08.07.2014 20:40

XOLOO Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Konzolová aplikácia

v Ostatné

2

289

02.06.2013 8:57

eLko Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. youtube aplikacia

v Ostatné programy

0

2921

18.02.2019 20:47

mindy87 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. start aplikacia

v Ponuka práce

0

840

25.11.2009 17:26

xvovox Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Webova aplikacia

v PHP, ASP

3

615

22.11.2009 14:41

Miloss222 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. aplikacia viber

v Smartfóny a tablety

1

1105

03.03.2012 10:23

Qpkqkma Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Aplikácia fotoaparát

v Smartfóny a tablety

1

334

04.01.2016 21:21

Miso122 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. aplikacia messenger

v Smartfóny a tablety

2

406

21.05.2015 20:01

jjjano1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Facebook aplikácia

v PHP, ASP

1

730

25.04.2011 15:57

Bajzik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. facebook aplikacia

v Ponuka práce

0

940

11.02.2012 11:18

deedee04 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. aplikacia .dll

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Operačné systémy Microsoft

33

1931

01.09.2007 23:51

Roberbo Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  
cron

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra