.[ ČeskéHry.cz ].
Mate radi C++?
Jdi na stránku Předchozí  1, 2, 3, 4, 5, 6, 7  Další
 
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
MD



Založen: 29. 07. 2007
Příspěvky: 437
Bydliště: Praha

PříspěvekZaslal: 29. listopad 2007, 19:27:13    Předmět: Odpovědět s citátem

frca napsal:
rezna napsal:
Ale v tom C neudela celou hru. Prevede tam jen casove opravdu narocne operace ktere to C zvladne rychleji. Ale 75% kodu napise v C# a usetri tim cas a nervy.

Jenom pro zajímavost, která z her tady prezentovaných je takto udělaná? Wink

Treba Krkal (jsem ale linej sve pokroky poradne publikovat). Je to mix C++ a C#, oba jazyky jsou super na urcite veci.
Napriklad komponenta Runtime - ta se stara o beh skriptovanych objektu, komunikaci, memory management,... je v C++ - musi bezet rychle a C++ se hodi, proroze muzu vyuzit pokrocilou praci s pointry a sablonami.

Naproti tomu treba kompilator je napsany v C# - velmi efektivni programovani, prehledne, malo nachylne na chyby. Vyuziva se objektove orientovany programovani, kolekce a generiky.

Pak kdyz clovek dela nejake editory ci IDE, tak je C# (ci jiny .NET jazyk) jasnou volbou. Graficky engine byl puvodne C++/DirectX, ale planujeme novou verzi a abychom to meli rychleji hotovy, tak zkusime C#/XNA.
Protoze nemam moc casu, tak volim radeji rychly a spolehlivy vyvoj (C#) nez C++ s "lepsi" portabilitou.
_________________
- play with objects - www.krkal.org -
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 29. listopad 2007, 20:42:48    Předmět: Odpovědět s citátem

frca napsal:
rezna napsal:
Ale v tom C neudela celou hru. Prevede tam jen casove opravdu narocne operace ktere to C zvladne rychleji. Ale 75% kodu napise v C# a usetri tim cas a nervy.

Jenom pro zajímavost, která z her tady prezentovaných je takto udělaná? Wink


mnemonicuv Wintermute engine, Augi delal na hre ktera je bud cela v C# nebo napul C++/C#

z Ackovych her je takovych minimum, protoze stavi na starych frameworcich v C++, nicmene u tech se zase spousta kodu vyskytuje v Lua/Pythonu - vlastne cely system (design) hry - pouze samotny engine je C++

memovy/falcanovy publikovane hry jsou dnes uz snad ciste C#
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
frca



Založen: 28. 07. 2007
Příspěvky: 1561

PříspěvekZaslal: 29. listopad 2007, 21:18:55    Předmět: Odpovědět s citátem

Dá se v tomto směru vyměnit C# za Javu?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 29. listopad 2007, 21:29:54    Předmět: Odpovědět s citátem

vicemene ano - java ma native-binding ktery dovoluje neco podobneho jako bud C++/CLI nebo propojeni C++/C# projektu

co se tyce potom samotneho prechodu C#/Java je to vlastne jedno v cem pises.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
rezna



Založen: 27. 07. 2007
Příspěvky: 2156

PříspěvekZaslal: 29. listopad 2007, 21:38:08    Předmět: Odpovědět s citátem

jeste doplneni - pokud chces Javu protoze ta bezi i na linuxu tak vez ze pro C# je tam projekt Mono
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Augi



Založen: 28. 07. 2007
Příspěvky: 782
Bydliště: Čerčany

PříspěvekZaslal: 29. listopad 2007, 22:54:17    Předmět: Odpovědět s citátem

rezna napsal:
frca napsal:

Jenom pro zajímavost, která z her tady prezentovaných je takto udělaná? Wink


mnemonicuv Wintermute engine, Augi delal na hre ktera je bud cela v C# nebo napul C++/C#
Jj, byla to závodní hra - v C++ byla fyzika, zbytek v C#.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 29. listopad 2007, 23:57:29    Předmět: Odpovědět s citátem

frca napsal:
Jenom pro zajímavost, která z her tady prezentovaných je takto udělaná? Wink

Pokud děláš hru, čas od času potřebuješ narychlo zbastlit nějakej editor. Pak C#/Java je k nezaplacení. Wink
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Tomas_Dejmek



Založen: 28. 07. 2007
Příspěvky: 7
Bydliště: Visual studio

PříspěvekZaslal: 19. leden 2008, 21:14:53    Předmět: Odpovědět s citátem

Nečetl jsem teda celý thread, ale chtěl bych také trochu ždůranit to, že C++ je stlále vyvíjeno, vytváří se nový standard ISO/ANSI již asi od roku 2004 a jeho vydání se plánu kolem roku 2009, jde o projekt s pracovním názvem C++0X o kterém tady sice něco zaznělo, ale ten thread mi přišel trochu divný.

Pak bych ještě vyjádřil názor, myslím, že to jaký používá člověk jazyk jestli C++, C#, Javu... je celkem jedno, jde oto jak ten jazyk ovládá. Důležité u programátora je umět programovat, myslet jako programátor, pak už co to je za jazyk nehraje tak velikou roly. Samozřejně že teba assembler už neni top a nikdo ho nedoporučí, ale jestli použiju C# nebo Javu... Výhoda je když znáte více jazyků.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Quiark



Založen: 29. 07. 2007
Příspěvky: 816
Bydliště: Chlívek 401

PříspěvekZaslal: 19. leden 2008, 21:32:47    Předmět: Odpovědět s citátem

OT: roly Shocked Chudák růže...
_________________
Mám strach
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Tomas_Dejmek



Založen: 28. 07. 2007
Příspěvky: 7
Bydliště: Visual studio

PříspěvekZaslal: 19. leden 2008, 22:39:11    Předmět: Odpovědět s citátem

Very Happy růže už neletěj. No tak jsem se uklap no. Smile Včera jsem moc nespal.. Sice nevim jak to je možní (y je daleko od i).
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 20. leden 2008, 00:03:09    Předmět: Odpovědět s citátem

Znovu-rozjíždět starý thread je vrcholem nevychovanosti. Wink O C++0x se už ví asi tak 2 roky, takže s tím díru do světa neuděláš. No a jinak - za poslední rok se hodně událo, teď to vypadá, že si to bere nějaké prvky z Javy a C# a přidává jenom nějaké maličkosti navíc, lambda kalkul taky.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
quas4



Založen: 18. 10. 2007
Příspěvky: 199

PříspěvekZaslal: 22. leden 2008, 21:34:34    Předmět: Odpovědět s citátem

neprocital jsem cely thread ale neda mi to napsat par vet.

c++ rad mam a momentalne zabira drtivou vetsinu meho programatorskeho casu. Presto chci napsat neduhy a obskurnosti ktere na nem nemam rad (spousta z nich jsou jen muj osobni nazor):

- pretizeni operace/operatoru ++x slouzi zapis operator++(X&), ale k pretizeni x++ deklarace operator++(X&, int).

- string x("test") vytvari instanci string x, ale string x(); je deklaraci lokalni funkce ktera vraci string. snizuje to citelnost..

- z ctor/dtor nelze volat virtualni funkce (vtable lifetime)

- STL iteratory jsou jen hromada pointeru a "nic" nevi o kontejneru (instanci kterou iteruji) - nasleduji mozne efekty jako interator nad destruovanym prvkem (expirace iteratoru) ci celym destruovanym kontejnerem, reseni chyb z pohledu iteratoru atd..

- nedoresene vyjimky.. vyhozeni spec. vyjimky v "locknute" zone (mezi mutex_lock/unlock) vznika deadlock + mozny leak.

- smart-pointers - u velkeho projektu jsou spis na obtiz nez k uzitku.

atd..atd..
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 10. únor 2008, 02:06:36    Předmět: Odpovědět s citátem

quas4 napsal:
- nedoresene vyjimky.. vyhozeni spec. vyjimky v "locknute" zone (mezi mutex_lock/unlock) vznika deadlock + mozny leak.

Obal mutex do objektu, v konstruktoru zamkni, v destruktoru odemkni. Mutex deklaruj lokálně v bloku. Po vyhození vyjímky z uzamčené části se ti to automaticky odemkne tím, že se zavolá destruktor toho objektu --> žádnej deadlock.

Nezmínils největší problém C++, kterej mě nějakou dobu docela sere - #include. Ve větším projektu je docela peklo zařídit správné pořadí includů a hrozně to protahuje kompilaci, přitom je to úplně zbytečná a zastaralá věc ze 70. let. Viz jak to řeší Java, C#, ...
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Tringi



Založen: 28. 07. 2007
Příspěvky: 290

PříspěvekZaslal: 10. únor 2008, 02:23:41    Předmět: Odpovědět s citátem

Eosie napsal:
quas4 napsal:
- nedoresene vyjimky.. vyhozeni spec. vyjimky v "locknute" zone (mezi mutex_lock/unlock) vznika deadlock + mozny leak.

Obal mutex do objektu, v konstruktoru zamkni, v destruktoru odemkni. Mutex deklaruj lokálně v bloku. Po vyhození vyjímky z uzamčené části se ti to automaticky odemkne tím, že se zavolá destruktor toho objektu --> žádnej deadlock.

Nezmínils největší problém C++, kterej mě nějakou dobu docela sere - #include. Ve větším projektu je docela peklo zařídit správné pořadí includů a hrozně to protahuje kompilaci, přitom je to úplně zbytečná a zastaralá věc ze 70. let. Viz jak to řeší Java, C#, ...

Pokud vím proposalů je několik, do C++0x se to nestihne, ale něco je opatrně slíbeno do TR2.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovi WWW stránky
Marek



Založen: 28. 07. 2007
Příspěvky: 1782
Bydliště: Velká Morava

PříspěvekZaslal: 10. únor 2008, 03:16:35    Předmět: Odpovědět s citátem

Tringi> Tak to doufám, že pohnou zadkem.

quas4 napsal:
smart-pointers - u velkeho projektu jsou spis na obtiz nez k uzitku.

Myslíš kvůli cyklickým referencím? Ty jsem konečně vyřešil (před pár dny), u sebe umím najít libovolnou množinu objektů, mezi kterými se cyklí smart-pointery, popsat ji grafem a uvolnit ji. Sice to řešení není úplně zadarmo (musí se u objektů udělat jednoduchá reflexe), ale dá se to celkem pohodově používat.
_________________
AMD Open Source Graphics Driver Developer
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
odeslat nové téma   Odpovědět na téma    Obsah fóra České-Hry.cz -> C / C++ Časy uváděny v GMT + 1 hodina
Jdi na stránku Předchozí  1, 2, 3, 4, 5, 6, 7  Další
Strana 5 z 7

 
Přejdi na:  
Nemůžete odesílat nové téma do tohoto fóra
Nemůžete odpovídat na témata v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete hlasovat v tomto fóru


Powered by phpBB © 2001, 2005 phpBB Group


Vzhled udelal powermac
Styl "vykraden" z phpBB stylu MonkiDream - upraveno by rezna