Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Abbiamo provato per voi il nuovo DLC lanciato a sorpresa da Blizzard per Diablo II: Resurrected e quella che segue è una disamina dei nuovi contenuti che abbiamo avuto modo di sperimentare nel corso delle nostre sessioni di gioco, con particolare riguardo per la nuova classe dello Stregone
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16-ak0001nl combina RTX 5080 Laptop e Ryzen AI 9 HX 375 in un desktop replacement potente e ben raffreddato, con display 240 Hz e dotazione completa. Autonomia limitata e calibrazione non perfetta frenano l'entusiasmo, ma a 2.609 euro è tra le proposte più interessanti della categoria.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-07-2009, 22:19   #1
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
[C#]Xna 2d: devo riuscire a calcolare un movimento (credo basti la logica)

Ciao raga,
volevo provare a fare un giochino 2d con xna 3 e il c#!
Solo che ho un problemuccio magari anche + facile di quanto sembri... In mate sono bravo ma faccio ancora prima superiore e mi dovrei scervellare un po' (cosa che comunque proverò a fare ma anche nel caso riuscissi guarderò le vostre idee)!
Allora... Ho uno sprite nel mio caso una astronave e vorrei che la sua punta fosse rivolta verso la posizione (in quanto nel gioco non si vedrà il cursore) del mouse. Non so se ci sia qualcosa di già pronto ma nel caso contrario ho il necessario per agire da me: mi serve solo un po' di logica.
Lo sprite ha 3 valori (se così posso chiamarli) che ci interessano: la posizione che fa riferimento appunto alla posizione in cui si trova, l'origine che è un punto dello sprite (stabilito dal programmatore e che nel mio caso è il centro dello sprite) al quale si riferisce la posizione: voglio dire che la posizione dello sprite indica la sua origine (se non capite guardate qua); infine la rotazione misura con quei valori strani che non mi ricordo, sono floato scritti tipo questo 0.0f
Esempio per chiarire meglio origine e posizione:

qui l'origine è quella in centro allo sprite e corrisponde a 25, 25 (pixel dello sprite mentre la posizione è 425, 225 ed indica sempre lo stesso punto dell'origine ma in riferimento all'intero schermo)

Abbiamo ancora poi le coordinate del mouse.
Come faccio a capire che valore assegnare alla rotazione dello sprite? Considerate che non so neppure quanto valgano quei valori tipo 0.0f e quindi non co neppure quanto corrisponde a 360°...
Ogni aiuto è gradito
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 20-07-2009, 23:28   #2
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
mi è venuta un'idea ma per realizzarla ho bisogno di sapere una cosa... In un triangolo rettangolo si può calcolare l'ampiezza dei due angoli sull'ipotenusa conoscendo la lunghezza dei cateti?
oppure + semplicemente non c'è una funzione che faccia già al caso mio?
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 09:28   #3
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
Considerate che non so neppure quanto valgano quei valori tipo 0.0f e quindi non so neppure quanto corrisponde a 360°...
Ogni aiuto è gradito
360° = 2 PiGreco
180° = PiGreco
90° = PiGreco/2
45° = PiGreco/4
In ogni caso le conoscenze che ti servono sono quelle della trigonometria
In genere, nella libreria standard di ogni linguaggio c'è un "pacchetto matematico" di base che mette a disposizione le funzioni trigonometriche e, tra le costanti, c'è sicuramente già definita quella per PiGreco.

Inoltre, il sistema di riferimento per le coordinate del sistema grafico di solito di default è orientato, come avrai già visto, con l'origine mappata in alto a sinistra, l'asse delle X positivo cresce a destra, quello delle Y positive cresce verso il basso.
Gli angoli crescono in senso orario, partendo dall'angolo 0, coincidente con l'asse positivo delle X.
Gli angoli si misurano in radianti (e di solito le funzioni trigonometriche lavorano con i radianti; la libreria standard mette a disposizione funzioni apposite per la conversione da gradi sessagesimali a gradi radianti e viceversa).
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)

Ultima modifica di banryu79 : 21-07-2009 alle 10:52.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 09:57   #4
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
Quote:
Originariamente inviato da Antonio23 Guarda i messaggi
Sia il triangolo formato dai cateti a,b e alfa l'angolo formato da c e a.

tan(alfa) = b/a

la tangente è invertibile tra 0 e pigreco...

e poi naturalmente alfa + beta = pigreco/2
queste due frasi non le ho capite...
riguardo ciò che invece c'è scritto in alto mi restituisce direttamente il valore come 0.0f? (come si chiamano sti maledetti valori???)
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 10:22   #5
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Mattyfog Guarda i messaggi
queste due frasi non le ho capite...
riguardo ciò che invece c'è scritto in alto mi restituisce direttamente il valore come 0.0f? (come si chiamano sti maledetti valori???)
Si chiamano valori float (da cui la 'f' posta dopo il valore letterale).
Sono dati a virgola mobile, a precisione singola, hanno dei fratelli: i double, che sono anche loro dati a virgola mobile, ma a precisione doppia.

Per curiosità, in che linguaggio programmi?

@EDIT: ah sì, C#, l'ho letto ora nel titolo del thread.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 10:43   #6
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
ok ma io i float li conoscevo già ma non capivo il senso di sto f...
Comunque forse ho trovato pappa pronta qua http://social.msdn.microsoft.com/for...2-dee819d78ad5 ma ti devo ringraziare soprattutto perchè mi hai spiegato i valori degli angoli
dopo proverò e vi farò sapere
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 12:21   #7
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
confermo che funziona ciò che ho trovato
mi sapete però dire la necessità di questa f nell'assegnazione delle float?
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 12:36   #8
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
mi autoquoto per risparmiare le dita :
Quote:
Si chiamano valori float (da cui la 'f' posta dopo il valore letterale).
Sono dati a virgola mobile, a precisione singola, hanno dei fratelli: i double, che sono anche loro dati a virgola mobile, ma a precisione doppia.
Senza quella 'f' posta subito dopo il valore letterale, quel valore sarebbe interpretato come di tipo double.
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2009, 18:48   #9
Mattyfog
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 1426
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
mi autoquoto per risparmiare le dita :

Senza quella 'f' posta subito dopo il valore letterale, quel valore sarebbe interpretato come di tipo double.
grazie
intanto cerco di approfondire xna...
Mattyfog è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
Polestar pubblica il report LCA di Poles...
Il rame non basta più: NVIDIA, AM...
Velocissimo e consuma poco: ecco il nuov...
Le migliori Offerte di Primavera sui Rob...
Perplexity 'Personal Computer' è ...
TV QLED da 65 pollici da 449€ con sconti...
Il CEO di Adobe pronto a lasciare dopo q...
Non è bastato il maxi-accordo col...
Gestire e proteggere i backup è s...
AI in mezzo all'oceano: turbine eoliche ...
IDC rivede le stime del mercato PC: crol...
Microsoft 365 Family 12 mesi a 89,99€ pe...
Power station in forte sconto su Amazon:...
Il browser Google Chrome si espande: sup...
Chat Control, il PE approva la proroga: ...
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: 12:34.


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