Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA
Al .NEXT 2026 di Chicago, Nutanix ha mostrato quanto sia cambiata: una piattaforma software che gestisce VM, container e carichi di lavoro IA ovunque, dall’on-premise al cloud pubblico. Con un’esecuzione rapidissima sulle partnership e sulla migrazione da VMware
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta
Xiaomi Pad 8 Pro adotta il potente Snapdragon 8 Elite all'interno di un corpo con spessore di soli 5,75 mm e pannello LCD a 144Hz flicker-free, per un tablet che può essere utilizzato con accessori dedicati di altissima qualità. Fra le caratteristiche esclusive, soprattutto per chi intende usarlo con la tastiera ufficiale, c'è la modalità Workstation di HyperOS 3, che trasforma Android in un sistema operativo con interfaccia a finestre
Tutti gli articoli Tutte le news

Vai al Forum
Discussione Chiusa
 
Strumenti
Old 03-11-2005, 11:36   #1
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
[CICLO 4] Storia 2

Storia: Introduzione del rilevamento del tasto giù, alla cui pressione la gemma deve accelerare il proprio movimento verso il basso causato dalla gravità.
Quando il tasto viene rilasciato, la velocità della gemma tornerà ad essere quella usuale di caduta. Il tutto va implementato senza dimenticare la possibilità di premere contemporaneamente a giù anche i tasti sinistra e destra, considerando tutte le possibili combinazioni (sinistra+destra+giù, sinistra+giù, destra+giù).
E' fondamentale che il gioco risponda prontamente ai comandi, distinguendo più pressioni immediatamente successive (anche in caso di situazioni concitate), ed evitando al contempo che ciò comporti spostamenti indesiderati della gemma, come spostamenti di più caselle in caso di una pressione leggermente più lunga del solito.

Punti cardine da tenere a mente durante i lavori:
  • Mai fare a gara a chi finisce il task per primo, meglio procedere con calma, altrimenti perderemo molto più tempo in seguito
  • Evitiamo di complicarci la vita, esiste di certo una soluzione più semplice di quella che abbiamo pensato di implementare
  • MAI aggiungere elementi non richiesti esplicitamente dai task: se mai serviranno, se ne parlerà nelle prossime storie
  • Comunichiamo il più possibile, se qualcosa non è chiaro discutiamone tutti i dettagli fino ad eliminare ogni dubbio, anche il più insignificante
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.

Ultima modifica di Jocchan : 05-11-2005 alle 15:10.
Jocchan è offline  
Old 03-11-2005, 11:43   #2
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Stasera scriviamo i task. Scusate per il ritardo. Lavoriamo per voi

Ultima modifica di fek : 08-11-2005 alle 18:18.
fek è offline  
Old 08-11-2005, 20:15   #3
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Ecco i task:

TASK:
4.2.1: Cionci: completato
Guando il tasto "Giù" è mantenuto premuto il valore della gravità usato da Grid deve essere moltiplicato per un fattore definito nel file di configurazione del gioco. Quando il tasto viene rilasciato deve ritornare ad essere quello originale.

4.2.2: 71104 + cdimauro: completato
Registrare in una coda all'interno di Input gli eventi "pressione" e "rilascio" dei vari tasti. Ad ogni evento deve essere associato il timestamp in cui l'evento è stato scatenato.

4.2.3: 71104
Modificare reactToInput di Grid per usare la coda creata nel task 4.2.2 in Input. Il comportamento attuale deve essere mantenuto inalterato.

4.2.4:
Una volta reagito ad un comando, reactToInput deve ricordare uno e un solo ulteriore comando richiesto durante il tempo di 'inattivita' e dovra' eseguirlo allo scadere del tempo stesso.

ciao

Ultima modifica di VICIUS : 12-11-2005 alle 14:11.
VICIUS è offline  
Old 08-11-2005, 20:23   #4
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Prima di iniziare il vostro task, chiedete chiarimenti su tutto cio' che non vi e' perfettamente chiaro.

Poi dateci la vostra test list, e possibilmente l'acceptance test.

Per il task 4.2.2, consiglierei di svolgerlo in Pair Programming sul forum, quindi prenotatevi in due.

Io saro' via Giovedi' e Venerdi', se qualcuno (cionci?) vuole svolgere un task con me possiamo farlo domani sera.

Buon lavoro
fek è offline  
Old 08-11-2005, 22:32   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Azz...domani sera è probabile che io non sia a casa
Magari se sono a casa domani sera potremmo fare insieme il task 4.2.2 in pair programming...sempre che nessuno si sia prenotato per allora...

Per fare il 4.2.1 il mi sa che deve essere finito anche il task 4.2.2 o sbaglio ?

Ultima modifica di cionci : 08-11-2005 alle 22:35.
cionci è offline  
Old 08-11-2005, 22:43   #6
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
4.2.2 e' indipendente da 4.2.1, mentre 4.2.3 e 4.2.4 dipendono da da 4.2.2.
fek è offline  
Old 08-11-2005, 23:05   #7
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
vorrei fare il 4.2.1, che è l'unico che mi è chiaro... ^^' stima 1 giorno.
ot: come mai stiamo implementando questa coda in Input? a me sembra che il sistema di input attuale vada bene: regolando un po' meglio qualche parametro (tipo quello del delay) io ho una buona sensazione, mi sembra che il gioco sia ben giocabile.
71104 è offline  
Old 08-11-2005, 23:16   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Allora mi prenoto per il task 4.2.1:
- il test dovrà verificare che impostando una data gravità e poi simulando la pressione del tasto giù, dopo una chiamata a reactToInput e una ad update, la gemma si sia spostata di X volte la gravità impostata...

Test di massima:
Codice:
public void testReactionToDownKey
{
   grid.insertGem(0, 4, gem);
   grid.setGemUnderControl(gem);
   grid.setGravity(10);
  
   float oldYPosition = gem.getY();

   config.addIntProperty("DownKeyGravityMultiplier", 4)

   input.generateKey(KeyCode.vk_Down);

   grid.reactToInput(input, timer);
   grid.update();

   assertEquals("gem doesn't move down as expected", gem.getY(), oldPosition + 40);
}

Modifiche da effettuare a Grid:
- aggiunta di un parametro Config al cotruttore
- modifica di reactToInput per gestire il tasto giù e la modifica della gravità
cionci è offline  
Old 08-11-2005, 23:17   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Azz...mi hai anticipato perchè mi sono messo a scrivere il test
cionci è offline  
Old 09-11-2005, 01:20   #10
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da cionci
Azz...mi hai anticipato perchè mi sono messo a scrivere il test
Visto che hai scritto il test lo assegno a te
Il test mi sembra buono apparte due cose. Il nome della proprieta è troppo lungo. GravityMultiplier va piu che bene. E quel 40 messo li cosi non mi piace. Io farei in questo modo cosi mettiamo anche il valore della gravita standard nel config e Jocchan ci puo giocare quanto gli pare.
Codice:
assertEquals("gem doesn't move down as expected", gem.getY(), oldPosition + 
(config.getIntProperty("Gravity") * config.getIntProperty("GravityMultiplier")));
ciao
VICIUS è offline  
Old 09-11-2005, 07:50   #11
Jocchan
Senior Member
 
L'Avatar di Jocchan
 
Iscritto dal: Jul 2005
Città: Silent Hill
Messaggi: 1471
Quote:
Originariamente inviato da VICIUS
Io farei in questo modo cosi mettiamo anche il valore della gravita standard nel config e Jocchan ci puo giocare quanto gli pare.
)
Perfetto, così al termine del ciclo inizio a giocherellare con i valori fino a trovare quelli ottimali.

EDIT: Grazie Cionci per i dati di login!!!!!!
__________________
DIAMOND CRUSH - Aut viam inveniam, aut faciam.

Ultima modifica di Jocchan : 09-11-2005 alle 08:04.
Jocchan è offline  
Old 09-11-2005, 07:53   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ok...allora tempo stimato 1 giorno...

Jocchan: se li trovo nei PVT te li passo
cionci è offline  
Old 09-11-2005, 08:44   #13
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Jocchan: la texture non è una potenza di due... La build si arresta...
cionci è offline  
Old 09-11-2005, 08:46   #14
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Jocchan ha rotto la build

Qualcuno puo' fare il revert del background per favore?
fek è offline  
Old 09-11-2005, 08:48   #15
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Comunque la texture è una potenza di due...e nonostante tutto l'eccezione viene lanciata...
cionci è offline  
Old 09-11-2005, 08:49   #16
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Codice:
assertEquals("gem doesn't move down as expected", gem.getY(), oldPosition + 
(config.getIntProperty("Gravity") * config.getIntProperty("GravityMultiplier")));
Una piccola nota su assertEquals, questa e' la forma corretta:

assertEquals(messaggio, valore_atteso, valore_testato);


Poi, preferirei che il valore da testare sia calcolato fuori dall'assert, perche' e' piu' leggibile, quindi:

Codice:
float newPosition = oldPosition + 
(config.getIntProperty("Gravity") * config.getIntProperty("GravityMultiplier"));

assertEquals("gem doesn't move down as expected", gem.getY(), newPosition);
fek è offline  
Old 09-11-2005, 08:50   #17
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
Quote:
Originariamente inviato da cionci
Comunque la texture è una potenza di due...e nonostante tutto l'eccezione viene lanciata...
Allora il test e' errato, puoi aggiustarlo?

Edit: Mi correggo, il background e' 800x600, Jocchan ha proprio rotto la build

Ultima modifica di fek : 09-11-2005 alle 08:55.
fek è offline  
Old 09-11-2005, 08:53   #18
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ci provo...
cionci è offline  
Old 09-11-2005, 09:03   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Queste funzioni ritornano 800 e 600 nonostante l'immagine sia 1024x1024
height = ilGetInteger(IL_IMAGE_HEIGHT);
width = ilGetInteger(IL_IMAGE_WIDTH);

Come mai non falliva fino ad adesso ?
cionci è offline  
Old 09-11-2005, 09:07   #20
fek
Senior Member
 
L'Avatar di fek
 
Iscritto dal: Oct 2002
Città: San Jose, California
Messaggi: 11794
L'immagine e' 800x600. Ho fatto il revert al background precedente e ora i test passano.
fek è offline  
 Discussione Chiusa


Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Addio definitivo a iOS 26.4, Apple blocc...
EPYC di nuova generazione: AMD supporter...
AMD, Arm e Qualcomm scommettono su Wayve...
Intel potrebbe estendere la vita del soc...
Windows, gli aggiornamenti di aprile for...
Addio cavi perimetrali: il robot tosaerb...
Google Pixel 10 oggi proposto a soli 549...
I robot di Boston Dynamics possono inter...
Tech, gadget e accessori a meno di 5€ su...
Ford riorganizza la divisione elettrica:...
Elon Musk trasforma xAI in fornitore di ...
Pirateria musicale: batosta record per A...
iRobot riparte: nuova era con Picea, Roo...
Bitcoin: Killing Satoshi, film sul miste...
Haier Mini LED 4K da 65 pollici a soli 5...
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: 11:16.


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