空のsurfaceを作る
※この方法ではMP3が再生されない場合がありましたので没とします。対応策は「空のsurfaceを作る(続き)」(2011-12-09)に書きます。
一昨日の記事の改良版です。David Clark著、Yusuke Shinyamaさん訳の初心者のための pygame ガイドを拝読していたら
3. surface (サーフェイス) とは何かを理解しよう。
(中略)
Surface() を使えば、まったく何もない surface さえつくれるんだよ。
とあったので、何も無いsurfaceを作成すればCUIでもPygameが利用できるだろうと思い、コードを改良してみました。
import pygame pygame.init() pygame.Surface # ここで空のsurfaceを作成しています。 pygame.mixer.music.load('flymetothemoon.mp3') pygame.mixer.music.play(-1) for i in range(360): # CUIのコードです。 print 'playing', i, 'sec.' pygame.time.delay(1000)
特に問題なくPygameにてMP3が再生されつつ、CUIのコードを実行することができました。これで「Pygameの機能を使いたいけど、いちいちグラフィカルなsurfaceオブジェクトを作るのはちょっと……」という場合でも、気軽に実装できますね。