Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-03-2008, 23: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, 09: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, 09: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, 14: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, 17: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, 18: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, 14: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 14:13.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 16: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, 16: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, 17: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, 18: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, 19: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 19:52.
Jocchan è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 21: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, 22: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, 22: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 22:38.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 14-03-2008, 22: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 22:57.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 15-03-2008, 01: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, 10: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, 10: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, 10: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 10:43.
thebol è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
Oracle apre una seconda Region per il cl...
Euro NCAP 2026, cambiano completamente i...
In Russia centinaia di Porsche diventano...
Gli operatori mobile italiani offrono se...
realme GT 8 Pro in promo lancio con 100€...
Autostrade, dal 2026 arrivano i rimborsi...
Carenza di memoria flash NAND e prezzi a...
EA Sports FC 26 fa felici i fan: tornano...
Anthropic studia i suoi ingegneri: l'IA ...
Kioxia Exceria Plus G4: l'SSD PCIe 5.0 p...
HBO Max debutta in Italia: data, contenu...
Qual è lo smartphone Android pi&u...
Il camion elettrico Semi è davver...
Instagram limita gli hashtag a tre per p...
Le migliori offerte Amazon del momento: ...
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: 16:11.


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