Computer Games Forum
 

Go Back   Computer Games Forum > Tech > The Workshop > Game Design

Notices

Căutare produse PC Garage: Şterge căutarea

Reply
 
Thread Tools
Old 11-05-2007, 01:03   #21
Registered User
 
stunn's Avatar
 
Join Date: May 1999
AvatarShell, cam asta e problema ca e deocamdata doar un forum, pana la proba contrarie cel putin. Care va veni atunci cand contentul de pe GDRO va fi cel putin la fel de interesant cu cel de pe gamedev.net sau Gamasutra (probabil niciodata). Si dealtfel nu e nici prima oportunitate de acest fel si in nici un caz unica. Chiar si forumul de fata il precede cu ceva anisori, si pe-aici se dau oameni care lucreaza la Ubisoft, Gameloft, Funlabs, si alte firme/filiale din Romania, precum si freelanceri care au ajuns cu engine-urile lor mult mai departe decat... nu dau nume ca sa nu pun si eu gaz pe focul offtopic. N-a prins acest forum, si nu va prinde nici GDRO in randul celor mai "experimentati", pentru ca un forum cu un look personalizat nu e cu nimic mai util decat un Google cu "free forum" urmat de 15 minute de setup. Esti liber sa crezi ca un forum e tot ce astepta lumea pentru a se aduna in jurul steagului insa cred ca vei fi dezamagit. Tu oricum esti caz particular acolo pentru ca proiectul tau (vostru) e inchegat, dar cred ca vezi si tu cam cu ce se ocupa restul "colegilor". Pentru tine oportunitate ar insemna sa treaca si oameni mai priceputi decat tine pe-acolo cu care sa conversezi, din pacate asta n-o sa se intample pentru simplu motiv ca un forum pus la dispozitie (cu cele mai bune intentii) nu se va transforma de la sine intr-o comunitate. Iar faptul ca discutiile in romana nu cred ca emotioneaza pe nimeni al carui principal interes este gamedev-ul.

PS. Sa nu-mi spuneti ca sunt pesimist, sau sa-mi trageti slagerul cu "de-aia nu se poate face nimic in Romania". Mi-am spus si eu umila parere, si am facut-o aici nu acolo. Din partea mea toate urarile de bine, sa traiasca GDRO 100 de ani fericiti si sa fie plin de game developeri.
 
stunn is offline    Reply With Quote
Old 11-05-2007, 02:32   #22
Registered User
 
Join Date: Jun 2003
Location: BV
offfff.... , ce sa mai zic si eu, GDRO e un site cu un scop clar, nu un subforum pe un forum de "joace", e direct, special pentru developeri chiar daca au 16 sau 30 de ani, logic ca aia batrani nu se sinchisesc sa se inregistreze pe GDRO, e normal, au alte treburi, insa pentru cei tineri care vor sa vorbeasca cu romani si sa se intalneasca eventual sa discute una alta, sa puna de-un mic proiect ceva, eu zic ca in felul ala si-a atins scopul.
La faza cu cei profesionisti si experti, peste ceva ani si cei tineri poate vor deveni asa ceva, cei care se tin de treaba, asa ca e totul relativ.
Inca o data repet, gamedev.net e tot un forum oamenilor! extins!... nu ai ce pune mai mult pe un site de game dev decat un forum specializat. pentru articole, news, competitii si altele, pana si decedatul flipcode.com era un forum mascat. Eu zic ca site-ul nu a stricat sau deranjat pe nimeni si nici nu o sa o faca, nu iti place, nu il vizita.
Apoi ce mai era...ah da, cu articolul carpit, a fost mai mult de test ala, ca nu era nimic si l-am incropit asa din copy/paste, probabil il voi sterge ca sa nu mai fie nimeni suparat.
Si cu asta basta! D-aia urasc forumistii romani, ca unii chiar se plictisesc, si "critica", in loc sa faca ceva, halal de neamul nostru . Hai noroc!
__________________
TUMOROU NEVÃR DAIZ!
 
nekitu is offline    Reply With Quote
Old 11-05-2007, 03:36   #23
Registered User
 
stunn's Avatar
 
Join Date: May 1999
Ok deci tot mi-ai tras-o cu "neamul nostru"... Oricum raman la parerea ca nu carcotelile astea sunt motivul pentru care o astfel de comunitate nu "decoleaza". In rest ai dreptate, cei mai tineri se pot intalni acolo pentru proiecte comune, eu pornisem de la presupunerea ca se dorea o alta anvergura. Dealtfel abordarea pare mai degraba scene-ish decat gamedev-ish, de unde si lamentarile mele. Eu unul cred ca cele doua se pupa cam rar, si ca oameni si ca "maniera de lucru". Iar ideea era de content nu de structura, faptul ca acel content util de pe gamedev.net e pe thread-uri de forum e irelevant zic eu.

Si n-ai deranjat pe nimeni, dar nici nu vad de ce te-ar deranja carcotelile noastre
 
stunn is offline    Reply With Quote
Old 11-05-2007, 14:24   #24
Registered User
 
Join Date: Jun 2003
Location: BV
mda, n-ar trebui sa ma deranjeze asa mult, insa chestia e ca am lucrat la site cu pasiune si cu dorinta de a face ceva in privinta comunitatii din gamedev-ul romanesc fie el indie sau pro, iar atunci cand unii sunt la limita de a "scuipa" pe munca mea, nu mi se pare corect. Probabil ca era mai bine daca nu dadeam anuntul aici sau pe level.ro, sau oriunde, ca tot de aia ma lovesc , de pesimisti . gata nu mai zic nimic. cred.
__________________
TUMOROU NEVÃR DAIZ!
 
nekitu is offline    Reply With Quote
Old 12-05-2007, 19:52   #25
Registered User
 
Dark's Avatar
 
Join Date: Nov 1999
Stiu ca o sa ziceti ca sint roman, forumist, nesimtit, calcator pe nervi, arogant, gica-contra, scuipator pe truda celor mai buni decit mine, taran venit de la sapa care nu apreciaza tehnologia moderna, nerespectuos fata de monstrii sacri ai Scenei, ucigas din fasa al viitorilor carmaci si sweeni mioritici, ca pe vremea cind unii roteau bitii in framebuffer eu ma incaltam cu fesu', ca strivesc corole si/sau alte parti morfologice ale angiospermelor, dar nimic din toate astea nu ma poate impiedica sa-mi dau singur o palma pe spate si sa ma amuz de cit de vizionar pot fi uneori.

Quote:
Originally Posted by Dark View Post
Pentru tutoriale despre singletoni si alte astfel de marete lucruri indispensabile in programarea de jocuri exista deja suficiente site-uri.
Primul articol. Spot on.

PS: si template-uri si confuzie intre template-uri si derivare si frienzi care nu exista si cod care nu se compileaza. Si retorica de Ion Creanga. Cum zice reclama, priceless.
__________________
Scarbit de fapta ta cea rea
Degeaba plangi, acum, copile,
Ci du-te'n casa-acum si zi-le
Parintilor, isprava ta.

Last edited by Dark; 12-05-2007 at 20:06.
 
Dark is offline    Reply With Quote
Old 12-05-2007, 20:55   #26
Registered User
 
revenco_andrei's Avatar
 
Join Date: Nov 2004
Location: Bucuresti
Quote:
Originally Posted by Dark View Post
Stiu ca o sa ziceti ca sint roman, forumist, nesimtit, calcator pe nervi, arogant, gica-contra, scuipator pe truda celor mai buni decit mine, taran venit de la sapa care nu apreciaza tehnologia moderna, nerespectuos fata de monstrii sacri ai Scenei, ucigas din fasa al viitorilor carmaci si sweeni mioritici, ca pe vremea cind unii roteau bitii in framebuffer eu ma incaltam cu fesu', ca strivesc corole si/sau alte parti morfologice ale angiospermelor, dar nimic din toate astea nu ma poate impiedica sa-mi dau singur o palma pe spate si sa ma amuz de cit de vizionar pot fi uneori.



Primul articol. Spot on.

PS: si template-uri si confuzie intre template-uri si derivare si frienzi care nu exista si cod care nu se compileaza. Si retorica de Ion Creanga. Cum zice reclama, priceless.
Tin sa precizez din start ca nu am nici o treaba cu gamedev.ro. Totusi... daca esti atat de bun de ce nu faci tu niste tutoriale bune sau alte lucruri utile. Este foarte usor sa criticam... nu ?
__________________
 
revenco_andrei is offline    Reply With Quote
Old 12-05-2007, 21:08   #27
Registered User
 
Dark's Avatar
 
Join Date: Nov 1999
Am uitat s-o bag in lista p-asta cu "pina nu faci tu ceva mai bun, ciocu' mic" si repede s-a gasit cineva sa ma corecteze. ;)

Un articol scris de un om care (pare ca) nu intelege conceptele de baza si sintaxa limbajului pe care-l foloseste e un lucru prost. Singletonii sint un lucru prost. Articole proaste despre lucruri proaste exista pe tot internetul. Eu n-am timp si chemare pentru a scrie articole bune despre lucruri utile, dar incerc sa-i protejez pe altii de gunoi aratind cu degetul spre chestiile nasoale (si ma rog, mai incerc sa raspund din cind in cind la intrebari la obiect, dar nu la "am terminat cartea de Pascal, cum fac un engine 3d?"). Eu ii spun critica constructiva si ma consider un binefacator al omenirii. Tu-mi zici ca decit nimic, mai bine ceva prost. Eu nu-s de acord cu tine.
__________________
Scarbit de fapta ta cea rea
Degeaba plangi, acum, copile,
Ci du-te'n casa-acum si zi-le
Parintilor, isprava ta.
 
Dark is offline    Reply With Quote
Old 13-05-2007, 13:45   #28
BT
Registered User
 
BT's Avatar
 
Join Date: Jun 1999
Se pare ca in game programming nu prea poti sa exagerezi cu OOP ca te lovesti de performanta. Sunt curios cum arata codul sursa al unui joc popular, ce compromisuri se fac, ce decizii de design si asa mai departe (jocurile Java pentru mobil am auzit ca au o singura mare clasa in care se tranteste tot). Chiar acuma descarc sursele Q3, poate am timp sa ma uit peste ele.
De exemplu singletonii nu sunt neaparat ceva prost. Varianta functii in header si variabile statice in .cpp seamana cu Monostate (clasa cu functii si variabile statice): mai simpla si mai performanta dar si mai putin flexibila. Decizii, decizii...

Despre articolul respectiv (care pare copiat de pe CP unde a luat nota 3 si ceva din 5): deriveaza din template ca sa forteze singletonul. Daca ar face direct Singleton<CLogging> s-ar putea instantia CLogging separat. Nu e nevoie de friend daca face constructorul template-ului protected si avantajul e ca nu mai trebuie sa rescrie toate functiile GetInstance, etc.
 
BT is offline    Reply With Quote
Old 13-05-2007, 14:05   #29
Registered User
 
Dark's Avatar
 
Join Date: Nov 1999
Diferenta de performanta nu exista daca ai bunul simt sa pui GetInstance() in header ca sa poata ajunge inline (daca ai bottleneck in compararea instantei cu NULL probabil ai gresit altceva pe drum ;) ). Exista diferenta de timp de compilare dar asta nu-i specifica jocurilor.

OOP in general nu aduce probleme de performanta cu el. Uneori mentalitatea OOP poate aduce probleme dar atunci e OOP prost inteles. Totusi, exista cazuri in care OOP de dragul OOP-ului complica lucrurile inutil.

De ce e solutia cu clasa mai flexibila decit solutia cu variabile statice?

Q3 e scris in C, nu cred ca-ti vei face o idee prea buna despre cum folosesc altii OOP in jocuri din el. :)

PS: transformarea unei clase in singleton implica aproximativ 6 linii de cod. Nu inteleg de ce trebuie facuta intr-un mod asa de abominabil cu template-uri si imprietenire cu o clasa din care DERIVEZI.
__________________
Scarbit de fapta ta cea rea
Degeaba plangi, acum, copile,
Ci du-te'n casa-acum si zi-le
Parintilor, isprava ta.
 
Dark is offline    Reply With Quote
Old 13-05-2007, 19:19   #30
RAN
Registered User
 
Join Date: Mar 2004
Dark, tu teoretic ai dreptate(in discutia de acolo ), ce face un singleton se poate face fara OOP in C++, dar nu si in Java.
Iar in practica, atunci cand nu trebuie sa existe decat o singura instanta, trebuie sa faci cumva sa te asiguri de chestia asta, nu sa te bazezi pe faptul ca nimeni nu va instantia de mai multe ori clasa pt ca asa ai zis tu in readme
In rest ai dreptate, cine scrie cod asa marita sa fie batut pana ii ies oop-ul si template-urile pe nas
 
RAN is offline    Reply With Quote
Old 13-05-2007, 20:17   #31
Registered User
 
Dark's Avatar
 
Join Date: Nov 1999
E foarte usor sa te asiguri ca nu-i decit o instanta: nu faci nici o clasa. Nu poate nimeni sa-ti instantieze functiile si variabilele statice de 5 ori.

Java n-are ce cauta in discutia asta.
__________________
Scarbit de fapta ta cea rea
Degeaba plangi, acum, copile,
Ci du-te'n casa-acum si zi-le
Parintilor, isprava ta.
 
Dark is offline    Reply With Quote
Old 13-05-2007, 20:25   #32
RAN
Registered User
 
Join Date: Mar 2004
Quote:
Originally Posted by Dark View Post
E foarte usor sa te asiguri ca nu-i decit o instanta: nu faci nici o clasa.
Pai cu asta am fost deja de acord

Quote:
Originally Posted by Dark View Post
Java n-are ce cauta in discutia asta.
Ma rog, dar se fac jocuri si in java...
 
RAN is offline    Reply With Quote
Old 13-05-2007, 23:51   #33
BT
Registered User
 
BT's Avatar
 
Join Date: Jun 1999
Flexibilitatea (cu costul simplitatii si performantei) e oferita de polimorfism: pot schimba singletonul la runtime pentru a ii schimba comportamentul. Un exemplu este pentru unit testing, cand nu vrei sa aiba efecte secundare apelurile catre singletoni din clasa / metoda pe care o testezi.

Prietenia cu clasa din care a derivat e o eroare de compilare pe care n-a prins-o pentru ca template-urile nu se compileaza decat atunci cand sunt folosite / apelate. Friendul ala trebuia pus in clasa parinte pentru a-i da copilului acces la constructorul privat; pus in clasa copil nu face nimic, pentru ca aceasta tot nu are acces la constructorul parintelui.
In orice caz, friend in parinte va trebui adaugat pentru fiecare clasa copil, ceea ce e ineficient. O solutie este transformarea constructorului din clasa parinte in protected.

class CMySingleton : public CSingleton<CMySingleton> e un fel de a-i spune compilatorului: "mestere, scrie-mi tu functiile astea te rog ca e o bataie de cap sa tot scriu acelasi cod peste tot si asigura-te ca nu poate sa instantieze clasa.". Iata un exemplu mai "curat" din Modern C++ Design, unde nu se mai forteaza clasa ca singleton prin mostenire.
[CODE]
template <
class T,
template <class> class CreationPolicy = CreateUsingNew,
template <class> class LifetimePolicy = DefaultLifetime,
template <class> class ThreadingModel = SingleThreaded
>
class SingletonHolder;

class MyClass { ... };
typedef Singleton<MyClass, CreateStatic> MySingleClass;
[/CODE]Overkill? Stiu ca atunci cand te chinui sa scoti ultimul strop de performanta n-ai chef de template-uri, mosteniri virtuale si alte lucruri, dar mie personal imi place sa ma indrept catre zone in care gasesti oportunitati pentru un design creativ si nu sunt foarte solicitante din punct de vedere al performantei. Cateodata n-am incotro si merg low-level, dar un design si flexibil si performant ma unge pe suflet.

P.S: Am observat ca ai criticat dur Large-scale C++ Software Design de Lakos pe "celalalt forum". Chiar mi-ai trezit curiozitatea in legatura cu ce ti-a placut la carte si ce nu.

Last edited by BT; 14-05-2007 at 00:22.
 
BT is offline    Reply With Quote
Old 14-05-2007, 11:49   #34
Registered User
 
Dark's Avatar
 
Join Date: Nov 1999
N-am criticat cartea aia, am zis ca daca lumea ar scrie cod scalabil unde nu se include fiecare fisier in fiecare alt fisier, tovarasul Lakos n-ar avea cui sa mai predice. :)

Discutia de-aci a deviat foarte tare de la subiect deci nu cred ca are sens sa continuam. Cind am dat link vroiam doar sa ma amuz de stereotipul site-urilor de game programming care isi incep cariera cu un articol despre singletoni. Disputa tehnica despre OOP vs. the world se poate purta pe alte canale (inclusiv acolo unde a fost postat articolul).
__________________
Scarbit de fapta ta cea rea
Degeaba plangi, acum, copile,
Ci du-te'n casa-acum si zi-le
Parintilor, isprava ta.
 
Dark is offline    Reply With Quote
Old 29-09-2007, 21:50   #35
Registered User
 
Join Date: Jun 2003
Location: BV
*revive!
__________________
TUMOROU NEVÃR DAIZ!
 
nekitu is offline    Reply With Quote
Advertisment
Reply

  Computer Games Forum > Tech > The Workshop > Game Design

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off
Forum Jump


All times are GMT +3. The time now is 08:06.


Advertisement System V2.5 By   Branden
This site is copyrighted ©1997 - 2008, Computer Games Online SRL