[JAVA] Avvicinarsi al game coding

KekkoNapoli

Nuovo Utente
126
5
Ciao a tutti, sono un dilettante del Java e per uno studio più efficace mi è stato suggerito di lavorare a un progetto che mi interessi, superandone mano a mano le difficoltà.

Visto che fu per i giochi che mi avvicinai alla programmazione, adesso mi piacerebbe iniziare un progetto proprio di questo genere, ma mi rendo conto che non posso semplicemente decidere e farlo :asd: allora sono qua per chiedervi cosa c'è da sapere per quanto riguarda la creazione di giochi (per ora mooolto semplici e basilari) in ambiente Java.

In particolare, vorrei capire bene per quanto riguarda le interfacce grafiche (conosco in maniera basilare e non "interattiva" solo la swing, ma mi sembra di aver letto che non fosse l'ideale) e se mi conviene appoggiarmi fin da subito ad apposite librerie.

La mia esperienza nel campo dei giochi è limitata a un po' di PALib (lol) sul nintendo ds (in C) e...uhh...un sasso carta forbice un po' maleducato in python :asd:

Ah ribadisco dall'altro topic: sentitevi liberi di insultarmi per qualsiasi cavolata scriverò/posterò eccetera :asd:
 

KekkoNapoli

Nuovo Utente
126
5
Ok ho cominciato a vedere come utilizzare la Swing...ed è già un gran casino :asd:
Sto vedendo come impostare il JFrame e già ho un po' di domande:
Come organizzare il codice? Creo una classe per ogni componente?
Mi consigliate di creare più metodi all'interno della classe principale per tenere il main quanto più "pulito" possibile?
Ho cominciato a spulciare diversi tutorial, ma solo uno di questi ha parlato di limitare i cicli della CPU a 60, oltre ad aver espanso e implementato classi e interfacce come Runnable e Canvas. Mi consigliate di studiare subito da quest'ultimo? O magari addirittura copiare in blocco da qualche parte il setup del JFrame e poi mettermi direttamente al lavoro?
Grazie
 

faudiio

Nuovo Utente
109
11
CPU
i7 13700K
Dissipatore
Corsair iCUE H150i ELITE CAPELLIX XT
Scheda Madre
ASUS ROG Strix Z790-A Gaming WIFI
RAM
CORSAIR VENGEANCE DDR5 2x32GB 6000MHz
GPU
RTX 4080 MSI Suprim X
Monitor
Dell Alienware DW3423DW
PSU
Corsair RM850 (2021) 80+ GOLD
Case
Corsair iCUE 5000D RGB AIRFLOW
OS
windows 11
Ciao, personalmente ti sconsiglio di applicarti su qualcosa in particolare. mi spiego meglio. per capire meglio un estensione del linguaggio dedita ai videogiochi è bene conoscere prima il linguaggio SE(standard edition). se non hai estrema familiarità con classi, interfacce(non grafiche), enum, OOP, ereditarietà, polimorfismo e altre caratteristiche base del linguaggio allora ti sconsiglio di impararle tramite i videogiochi. non le apprezzeresti, le vedresti solo come "così si fa e così farò". se devi studiare java fai un progetto più semplice, un'applicazione ideale potrebbe essere una rubrica con una funzione di ricerca, una di log(mostri i contatti desiderati), una di aggiunta ed una di eliminazione(di 1 o + contatti insieme). l'ordinamento dei contatti anche aiuta molto. se sei in grado di fare queste cose allora puoi passare allo studio dei videogiochi dove vengono date per scontato alcune funzionalità.
SE TI INTERESSANO SOLO I VIDEOGIOCHI e vuoi arrivare a qualche risultato più concreto, allora ti sconsiglio di puntare troppo tempo su swing e awt(2 sezioni del linguaggio ormai deprecate e sostituite da java FX di cui non so dirti nulla): riusciresti anche a creare applicativi con funzionalità decenti, ma è fine a se stesso, o usi solo swing o usi altro. come inizio ti consiglierei piuttosto di seguire un tutorial e di studiare per java 2D, così potrai passare a java 3D se ti interessa proseguire su questa scia. un ottimo tutorial introduttivo a java 2D è su Zetcode, dove creerai giochi 2D come space invaders, snake, tetris... qualora invece tu vuoi fare un percorso formativo finalizzato ai videogiochi e basta allora prima studi java SE e poi passi a JMonkeyEngine(abbreviato jme3). con jme puoi ottenere i migliori risultati possibili in campo programmazione sia 2D che(soprattutto) 3D con java, sul sito trovi dimostrazioni e videogiochi RELATIVAMENTE famosi(il più famoso è minecraft). se ti interessa trovi molto materiale anche sul loro sito.
CONCLUSIONI:
studia java da un buon libro, magari il de sio cesari "manuale di java 8", testo veramente ottimo; finito il libro avrai una ottima base su cui fondare gli studi di jme3.
per avere altri testi da cui studiare c'è una sezione del forum in cui sia io che molti altri abbiamo consigliato i testi java che riteniamo i migliori:
https://www.tomshw.it/forum/threads...li-tutorial-risorse-tutti-i-linguaggi.290243/
Buono studio, purtroppo ce n'è parecchio da fare!
 
  • Mi piace
Reazioni: Reeaver

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!