Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Opengl su sistema operativo a 64bit
Forum - C/C++ - Opengl su sistema operativo a 64bit

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
genni_96 (Normal User)
Pro


Messaggi: 108
Iscritto: 04/06/2010

Segnala al moderatore
Postato alle 22:46
Lunedì, 03/01/2011
ho scritto un gioco con le openg e le sdl e l'ho testato sul mio computer con xp a 32 bit

purtroppo funziona solo sui pc con sistema operativo a 32bit
Sapete come farlo funzionare anche su sitemi a 64bit??

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 11:51
Martedì, 04/01/2011
Non ha molto senso.... se funziona su XP a 32bit, funzionerà anche su XP a 64 bit.

Dacci qualche dettaglio in più, ad esempio inizia a dire che compilatore hai usato (nome e versione esatta), quali versioni (nome e versione esatta) di Windows hai testato.
Poi serve anche sapere che cosa intendi dire con "funziona" e "non funziona". Che succede? Crasha? Entra in loop? Si vede male?

Hai provato a fare il debugging su altri sistemi, per vedere eventualmente quali sono i punti critici che lo fanno crashare? Di solito capita perchè magari hai usato una vecchia API di Windows definita come deprecata dalle MSDN, e che è stata rimossa nelle ultime versioni (ma questo spiegherebbe un'eventuale incompatibilità con Vista e 7, non con XP 64).

Insomma... spremiti un po' di più con i dettagli.
Ciao!

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 12:41
Martedì, 04/01/2011
se l'hai fatto con le ai win (tipo come fa nehe) nella funzione che crea la finestra c'è un int che indica i bit, che di solito è a 16 o 32.
se l'hai fatto così controlla!

anche se mi sembra che i programmi a 32 vadano sui 64, sbaglio?
io ho sempre usato computer con 32, quindi non so...:D

PM Quote
Avatar
genni_96 (Normal User)
Pro


Messaggi: 108
Iscritto: 04/06/2010

Segnala al moderatore
Postato alle 13:59
Martedì, 04/01/2011
ho risolto, il problema era la risoluzione del gioco che non era supportata dal computer a 64bit
cambiando la risoluzione funziana.
Ora pero ho un'altro problema, il gioco va velocissimo  su computer con prestazioni maggiori, invece sul mio e su altri con caratteristiche simili ha la velocità giusta
Come posso regolare il framerate per avere la stessa velocità su tutti i pc?

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:02
Martedì, 04/01/2011
ho avuto un problema simile una volta...
mettendo fullscreen andava lento e a finestra veloce...
poi per caso è tornato ad andare tutto bene...
adesso guardo:k::k:

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 15:11
Martedì, 04/01/2011
devi implementare un sistema per far si che la velocità del gioco sia indipendente dal numero di frame.

Mi spiego meglio:

se devo muovere un oggetto da A a B, se lo faccio spostare di 1 pixel ad ogni frame, avrò uno spostamento che "dipende" dalla velocità del computer. Se ad esempio il PC fa 50fps, si muoverà di 50 pixel al secondo. Se uso un computer molto più veloce, diciamo 300fps, avrò uno spostamento di 300 pixel in un solo secono, il che è inaccettabile.

Il metodo giusto consiste nel calcolare le animazioni usando come sistema di riferimento non i frames, ma il tempo reale (preso dal clock di sistema).

Quindi agisco così:
- calcolo quanto è durato il frame precedente usando un timer, diciamo che è durato dT secondi (potrebbe essere qualcosa come 0,1 secondi ad esempio)
- calcolo la quantità di spostamento da applicare all'oggetto scalando la sua velocità in questo modo: spostamento = velocità * dT. Così ottengo il numero di pixel (o altra unità di misura) da spostare nel singolo frame. Se voglio ad esempio spostarlo di 50 pixel al secondo, risulterà una cosa tipo: 50 px/s * 0,1s = 5 pixel. Se il computer è molto veloce avrò qualcosa come 50 px/s * 0,05 s (suppongo un computer il doppio più veloce di prima) = 2,5 pixel (ottengo uno spostamento dimezzato, che quindi compensa la velocità del computer).
- Applico lo spostamento calcolato

Su google troverai tonnellate di materiale, ma almeno adesso sai qual è la tecnica base :-)

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 15:38
Martedì, 04/01/2011
sarà utile anche a me!
:k::k:
grazie!!

PM Quote
Avatar
genni_96 (Normal User)
Pro


Messaggi: 108
Iscritto: 04/06/2010

Segnala al moderatore
Postato alle 23:22
Martedì, 04/01/2011
Grazie,
ci lavorerò su usando il metodo che mi hai spiegato.
Ora ho una base da cui partire

PM Quote
Avatar
genni_96 (Normal User)
Pro


Messaggi: 108
Iscritto: 04/06/2010

Segnala al moderatore
Postato alle 1:43
Giovedì, 06/01/2011
Ho risolto tutti e due i problemi
ora va una meraviglia su tutti i computer
Grazie mille per l'aiuto:k:

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo