Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
OPPO ha portato in Italia, dal 1° luglio 2026, Reno16 Pro: display AMOLED da 6,32 pollici a 144Hz, tripla fotocamera con sensore principale da 200 megapixel, chip Dimensity 8550 Super e batteria da 6000mAh, al prezzo di lancio di 899 euro. Lo abbiamo provato per due settimane insieme al nuovo accessorio Bubble, per capire se la formula compatta della serie regge ancora di fronte a un listino da 1099 euro
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
MiniLED di fascia media con local dimming a 192 zone, 144 Hz nativi e audio firmato Devialet. La prova strumentale riscontra colori affidabili e gaming reattivo, per un prodotto molto accessibile e convincente. Ma la soundbar aggiuntiva è quasi d'obbligo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-03-2008, 22:43   #1
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
NormalGravity in GameConfig

Per sistemare il problema delle gemme che cadono troppo velocemente (nato dall'eliminazione di qualche costante qui e là nel codice) bisogna dividere per due il valore di normalGravity.
Peccato che il suo valore sia 1, e che GameConfig utilizzi valori interi.

Che si fa? Lo si converte in float? Se sì, rischiamo qualche imprecisione per l'approssimazione dei valori decimali (in passato ho avuto brutte sorprese al riguardo )?

La cosa va sistemata, e la gravità è un punto piuttosto delicato (è stata fonte di un sacco di bug).
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2008, 08:10   #2
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
GravityMultiplier = 8
StrongestGravityMultiplier = 20
NormalGravity = 1

prova a giocare con il GravityMultiplier
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2008, 08:13   #3
Ufo13
Senior Member
 
L'Avatar di Ufo13
 
Iscritto dal: Nov 2005
Messaggi: 1545
Possiamo rinominarli in maniera piu` sensata? Direi che i nomi potrebbe deciderli Joc dopo che qualcuno gli ha spiegato che fanno
Ufo13 è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2008, 13:38   #4
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Più che altro, quando viene usato GravityMultiplier? StrongestGravity è abbastanza autoesplicativo invece
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2008, 16:47   #5
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Cambiando GravityMultiplier non cambia niente.
In compenso, provate a raddoppiare (ovviamente senza commit) la gravità ed a farvi una partitella... lo spettacolo è assicurato
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2008, 17:23   #6
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
A dire il vero qui c'e' un mistero.

Il GravityMultiplier funziona cosi':

StrongerGravity= normalGravity * gravityMultiplier;

e il StrongestGravityMultiplier cosi'

StrongestGravity= normalGravity * strongestGravityMultiplier;


quindi attenzione, non si mappano uno a uno. Ora e' cosi' perche' la NormalGravity e' 1.
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 13:11   #7
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Aggiunto come bug, va risolto assolutamente.

Qualcuno mi aggiorna sull'esatto significato di questi valori di GameConfig?

Codice:
NormalRepeatDelay = 200
FastRepeatDelay = 100
FrameRate = 20
UpdateRate = 10
Soprattutto UpdateRate mi interessa: cosa succede esattamente quando lo si cambia? Ci sono dei vincoli particolari per cambiarlo? Una sua modifica (ad es. da 10 a 15) impatterebbe solo sulla logica di Grid o su tutto quanto? Qual è la sua unità di misura?
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.

Ultima modifica di Jocchan : 14-03-2008 alle 13:13.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 15:29   #8
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da Jocchan Guarda i messaggi
Aggiunto come bug, va risolto assolutamente.

Qualcuno mi aggiorna sull'esatto significato di questi valori di GameConfig?

Codice:
NormalRepeatDelay = 200
FastRepeatDelay = 100
FrameRate = 20
UpdateRate = 10
Soprattutto UpdateRate mi interessa: cosa succede esattamente quando lo si cambia? Ci sono dei vincoli particolari per cambiarlo? Una sua modifica (ad es. da 10 a 15) impatterebbe solo sulla logica di Grid o su tutto quanto? Qual è la sua unità di misura?
updateRate è ogni quanti ms viene eseguito questo ciclo dentro PlayField
Codice:
            updatePlayField(timestamp);
            lastUpdateTimeStamp += updateRate;
            score.setValue(getGridController().getGrid().getScoreCalculator().getScore());
            updateWarningBox();
            updateCrushBox();
            updateCounterBox();
frameRate è ogni quanti ms viene eseguito questo loop nel loop che contiene i 2 playField. E ogni quanto viene aggiornato lo schermo.

Codice:
        if (timeStamp - lastRender >= environment.getConfig().getInteger("FrameRate"))
        {
            lastRender = timeStamp;

            environment.getEngine().clearDisplay();
            layerManager.drawLayers(environment.getEngine());
            environment.getEngine().updateDisplay();
        }
gli altri ci devo guardare meglio, sembra che gestiscano il delay necessario fra 1 tasto pigiato 2 volte e 1 tasto tenuto pigiato, ma nn capisco la differenza fra i 2
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 15:57   #9
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
e forse può essere pericoloso cambiarlo perchè molti test settavano dei valori fissati per quei valori anzichè prenderli dal config..
Io quelli che ho visto li ho fixati, ma non ho idea se ancora se ne trovano altri a spasso per il codice con i valori scolpiti..
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 16:10   #10
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
e forse può essere pericoloso cambiarlo perchè molti test settavano dei valori fissati per quei valori anzichè prenderli dal config..
Io quelli che ho visto li ho fixati, ma non ho idea se ancora se ne trovano altri a spasso per il codice con i valori scolpiti..
ne ho tolti molti anche io, facendo dei getter in environmentTest

cmq se vanno cambiati joc, dillo a noi che vediamo se alcuni test vengono rotti, e vediamo di sistermarli(renderli indipendenti dal config)
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 17:27   #11
Bonfo
Senior Member
 
L'Avatar di Bonfo
 
Iscritto dal: Nov 2005
Città: Bologna
Messaggi: 1303
Quote:
Originariamente inviato da Jocchan Guarda i messaggi
Aggiunto come bug, va risolto assolutamente.

ehm...quello del calcolo della gravita' era un requisito del costumer
__________________
Software engineer
Bonfo's Blog
Bonfo è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 18:25   #12
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Come rischi più che ai test rotti (se ci sono valori hardcoded non ci vuole niente a cambiarli una volta individuati i test che falliscono ) mi riferivo a eventuali conseguenze più insidiose e meno visibili: perdita di sincronia con il resto del codice dopo qualche loop o persino la possibilità che qualche evento/pressione venga ignorato (ho dato una spulciata e mi sembra di no, ma preferirei esserne certo).
Mi riferivo più a questioni di logica del programma, insomma

Quote:
Originariamente inviato da Bonfo Guarda i messaggi
ehm...quello del calcolo della gravita' era un requisito del costumer
Che intendi?
E' segnato come bug perchè non si può settare la gravità ai valori desiderati, mentre prima era possibile
Al momento il valore è troppo elevato come gravità "di base", quindi va sistemato per forza in qualche modo.

I refactoring che hanno portato a questo problema erano molto massicci?
Se c'erano delle costanti sparse qui e là per il codice (come mi è sembrato di capire), cosa cambierebbe se le rimettessimo e magari le rendessimo settabili in GameConfig? Chi se n'era occupato in origine?
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.

Ultima modifica di Jocchan : 14-03-2008 alle 18:52.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 20:01   #13
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da Jocchan Guarda i messaggi
Come rischi più che ai test rotti (se ci sono valori hardcoded non ci vuole niente a cambiarli una volta individuati i test che falliscono ) mi riferivo a eventuali conseguenze più insidiose e meno visibili: perdita di sincronia con il resto del codice dopo qualche loop o persino la possibilità che qualche evento/pressione venga ignorato (ho dato una spulciata e mi sembra di no, ma preferirei esserne certo).
Mi riferivo più a questioni di logica del programma, insomma


Che intendi?
E' segnato come bug perchè non si può settare la gravità ai valori desiderati, mentre prima era possibile
Al momento il valore è troppo elevato come gravità "di base", quindi va sistemato per forza in qualche modo.

I refactoring che hanno portato a questo problema erano molto massicci?
Se c'erano delle costanti sparse qui e là per il codice (come mi è sembrato di capire), cosa cambierebbe se le rimettessimo e magari le rendessimo settabili in GameConfig? Chi se n'era occupato in origine?
nn ho ben capito perchè servissero 3 valori per la gravità.

Ne possono bastare 2?

Se si, si elimina un valore e si tiene gravityNormal e gravityStrenght e basta, l'altro si toglie si vede dove ci sono dei problemi, si risolvono e poi siamo puliti.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 21:31   #14
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Codice:
    public void setStrongestGravity()
    {
        actualGravity = normalGravity * strongestGravityMultiplier;
    }

    public void setStrongerGravity()
    {
        actualGravity = normalGravity * gravityMultiplier;
    }


    public void setNormalGravity()
    {
        actualGravity = normalGravity;
    }
normaleGravity è la gravità normale per una gemsPair intera

strongerGravity e la gravità di una gemsPair quando si preme il tasto giu

strongestGravity e la gravita delle gemme che nn sono gemsPair che cadono verso il basso
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 21:36   #15
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
il diviso 2 perso come costante si può recuperare mettendo l'updateRate a 20!!!!!!(aka raddoppiandolo). Il gioco nn dovrebbe risentirne per i test, faccio qualche prova

edit:
i test nn si lamentano. cio nn vuol dire che un test che prima aveva senso, ora nn ce l'abbia più...però per me si può rischiare

Ultima modifica di thebol : 14-03-2008 alle 21:38.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 21:55   #16
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
ho trovato un problema per questa soluzione.

Ho provato a mettere updateRate a 100, e viene coinvolto anche il pulsare della pivot, che accelera compulsivamente.

Stranamente non viene coinvolto il riflesso. Penso che il problema sia nella Grid.updateDroppableAnimations, che viene chiamata nel ciclo controllato dall'updateRate.

Eh da vedere come (e se) risolvere la cosa

edit: penso di essermi sbagliato, il problema sembra nn essersi(forse avevo smanettato qualcos'altro nella config)

Ultima modifica di thebol : 14-03-2008 alle 21:57.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2008, 00:33   #17
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da thebol Guarda i messaggi
ho trovato un problema per questa soluzione.

Ho provato a mettere updateRate a 100, e viene coinvolto anche il pulsare della pivot, che accelera compulsivamente.

Stranamente non viene coinvolto il riflesso. Penso che il problema sia nella Grid.updateDroppableAnimations, che viene chiamata nel ciclo controllato dall'updateRate.

Eh da vedere come (e se) risolvere la cosa

edit: penso di essermi sbagliato, il problema sembra nn essersi(forse avevo smanettato qualcos'altro nella config)

l'importante è che non hai committato mentre commitavo io
..altrimenti sai dove andava a finire la torre degli asinelli...vero? !?!?!?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2008, 09:04   #18
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi

l'importante è che non hai committato mentre commitavo io
..altrimenti sai dove andava a finire la torre degli asinelli...vero? !?!?!?
nn ho ancora committato nulla
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2008, 09:07   #19
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Quote:
Originariamente inviato da thebol Guarda i messaggi
strongestGravity e la gravita delle gemme che nn sono gemsPair che cadono verso il basso
Sì, viene usata sia per le gemme "orfane" della pair che per le stone.

Quote:
Originariamente inviato da thebol Guarda i messaggi
il diviso 2 perso come costante si può recuperare mettendo l'updateRate a 20!!!!!!(aka raddoppiandolo). Il gioco nn dovrebbe risentirne per i test, faccio qualche prova

edit:
i test nn si lamentano. cio nn vuol dire che un test che prima aveva senso, ora nn ce l'abbia più...però per me si può rischiare
Ieri qualche prova l'avevo fatta anche io... sembrava andare tutto bene, ma preferivo esserne sicuro. Ecco perchè ho chiesto
Anche perchè alla fine non avrei proprio messo 20, ma un 15 (ed ho chiesto quale unità di misura stessimo usando ed eventualmente quali sincronie perderemmo perchè non è un sottomultiplo di 100, quindi se tutto il resto funziona in centesimi di secondo forse qualche problema può sorgere dopo un pò).

Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi

l'importante è che non hai committato mentre commitavo io
..altrimenti sai dove andava a finire la torre degli asinelli...vero? !?!?!?
Lo sai che me l'ero scordato che pure Thebol sta qui a Bologna?
Qualche volta una birretta mi sa che è obbligatoria (già ne avevo parlato con Bonfo)
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2008, 09:41   #20
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da Jocchan Guarda i messaggi
Ieri qualche prova l'avevo fatta anche io... sembrava andare tutto bene, ma preferivo esserne sicuro. Ecco perchè ho chiesto
Anche perchè alla fine non avrei proprio messo 20, ma un 15 (ed ho chiesto quale unità di misura stessimo usando ed eventualmente quali sincronie perderemmo perchè non è un sottomultiplo di 100, quindi se tutto il resto funziona in centesimi di secondo forse qualche problema può sorgere dopo un pò).
fra frameRate e updateRate, a occhio penso di no. Per me si può provare.
Certo se metti l'updateRate ogni ms, e il frameRate ogni 100ms, il gioco scatterà, vistosamente, però è fisiologico. Sincronia di gioco nn si dovrebbe perdere, al max da vedere può fare schifo.

Cmq nn sono centesimi ma millesimi di secondo.

Quote:
Lo sai che me l'ero scordato che pure Thebol sta qui a Bologna?
Qualche volta una birretta mi sa che è obbligatoria (già ne avevo parlato con Bonfo)





ps.xkcd > all

Ultima modifica di thebol : 15-03-2008 alle 09:43.
thebol è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint L'IA cambia tutte le regole della sicurezza tra ...
Edge AI: NVIDIA Jetson raggiungerà...
La missione robotica LINK per salvare il...
Potrebbe essere stato lanciato l'ultimo ...
PamStealer, il malware per Mac che prima...
NAVEE EXO S Pro, il robot esoscheletro p...
Samsung Galaxy A57 5G a 399€ con 256 GB:...
Volevano collegare delle aragoste vive a...
La crisi dei PC è peggiore del pr...
Alibaba pronta a vietare Claude Code ai ...
Sovranità sui dati: Cloud Firewal...
FiberCop porterà la fibra Gigabit...
Data center in Lombardia: 20 progetti sc...
Tutti i modi in cui la scommessa di Orac...
Kioxia e SanDisk sbandierano i numeri de...
iPhone 18 Pro potrebbe usare modem Qualc...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:40.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v