Non ho preferenze nei confronti di Ruby (o Python), sono anch'io una persona Java. Ma la risposta di UnknownDevice su come Ruby è in qualche modo "non proprio per i giochi" e Python è, mi ha frustrato. Spero che chiarirà.
So che Pygame esiste ed è stato in giro, e riconosco che Python ha una base di utenti più grande di Ruby. Ma ad essere onesti, nessuno dei due sembra un linguaggio "per i giochi". Nemmeno Java, e questo è il mio linguaggio di programmazione di gioco preferito. (e quando dico "di scelta", intendo per scelta , non perché è ciò che viene insegnato a scuola o perché è qualcosa che "conosco"). E davvero, che cos'è una lingua "per i giochi"? Bene, la velocità è un fattore, e ovviamente deve avere librerie per la grafica e altri sistemi di gioco (audio, input, ecc.).
Per quanto riguarda la velocità, sembra essere un gioco da ragazzi tra Ruby e Python. Fai alcune ricerche e troverai rapidamente benchmark e argomenti per entrambi i lati dello spettro e varie configurazioni che portano avanti l'uno o l'altro. Python con qualcosa chiamato "Psycho" sembra un popolare demone della velocità rispetto a Ruby, ma Python normale sembra essere un po 'più lento di Ruby. Alla fine, se scegli una lingua di così alto livello, ovviamente non ti preoccupi delle velocità native; scegli la lingua che conosci meglio. E ovviamente conosci meglio Ruby, quindi lo incoraggio!
L'altro fattore è se la tecnologia è lì per creare giochi; se può supportare il disegno sullo schermo e la raccolta di input e la riproduzione di audio. Ruby può fare tutto questo. In effetti ci sono un buon numero di opzioni in questo senso. C'è un pacchetto ruby-opengl su RubyForge che fornirà supporto OpenGL a Ruby (o potrebbe essere incluso di default?). In alternativa, Chingu fornisce "grafica 2D accelerata OpenGL velocissima!" secondo la sua homepage; costruisce funzionalità extra in cima a Gosu , che potresti scegliere di usare se Chingu è troppo per te. O per la grafica 3D, se non vuoi usare ruby-opengl, prova G3DRuby , "un insieme molto pulito di classi wrapper per molte delle funzionalità OpenGL più avanzate". Là'Rubygame , di cui non riesco a trovare molte informazioni ma che afferma di essere "una libreria multimediale multipiattaforma" e che ha il nome, deve porre l'accento sullo sviluppo del gioco. Se hai familiarità con la popolare libreria SDL per C ++, c'è Ruby / SDL o RUDL , entrambi i wrapper Ruby di SDL. O se preferisci il più recente, più orientato agli oggetti SFML , è disponibile anche per Ruby!
Non c'è ragione per cui Ruby dovrebbe essere meno un linguaggio di programmazione del gioco di Python; se ce n'è uno, mi piacerebbe davvero ascoltarlo in modo da poter litigare. Se ti senti più a tuo agio con la programmazione in Ruby e sei a conoscenza dei pro e dei contro rispetto ad altre lingue popolari, allora puoi sicuramente sviluppare giochi in Ruby!