トップページgamedev
579コメント197KB

【pygame】pythonでゲーム製作【ぱいがめ】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2005/09/13(火) 18:51:45ID:dnfPM2vI
オブジェクト指向スクリプト言語のpythonでゲーム作ろうぜ!!
0314名前は開発中のものです。2008/05/24(土) 09:19:29ID:XImzBzIt
先生、パスワードはどうやって指定すればいいんでしょうか?
0315名前は開発中のものです。2008/05/24(土) 15:03:41ID:yLXTWKtd
もうやめて!>>313のライフはゼロよ!
0316名前は開発中のものです。2008/05/24(土) 21:09:35ID:XImzBzIt
暗号化Zipからデータ取得方法がわからないので、>>310のいうとおりバイナリで一つのファイルにまとめてそこから取り出すことにしますた。
(chilkatっていうモジュールならできそうだけどフリーじゃないっぽい?)

バイナリから取り出して扱う方法はわかったので、あとは簡単な暗号化つけたら必要な人がいるようなら投下しようと思います。
これでノベルゲーぽいのも作れるかな……('A`)
0317名前は開発中のものです。2008/05/24(土) 21:15:26ID:10u0tQP3
直でファイル見れないようになってれば十分だと思うけどな。
その気になればどうせ解析されちゃうから、その辺にあまり
凝らないでゲームの内容に注力した方がいい。
0318名前は開発中のものです。2008/05/24(土) 22:55:09ID:AxWOl3Z5
> あとは簡単な暗号化つけたら必要な人がいるようなら投下しようと思います。
wktk
0319名前は開発中のものです。2008/05/24(土) 22:56:49ID:RTwGO+ab
XORって便利だよなー
0320名前は開発中のものです。2008/05/24(土) 23:54:00ID:0v6/Vkyz
tarfileとmd5で充分だろ
0321名前は開発中のものです。2008/05/27(火) 00:36:29ID:7kQ6fLoZ
ネタ投下
ttp://icculus.org/pyddr/
0322名前は開発中のものです。2008/05/27(火) 01:53:25ID:GoGc/+DU
ありがとう
0323名前は開発中のものです。2008/06/02(月) 17:42:52ID:cqNlW2zB
pygame.font.fontでフォント作成しようとしているのだけど、StringIOやtarfile.extractfileとかを引数に割り当ててもエラーになってしまうんだけどなにかできる方法とかありますか?
fp = open(hogehoge,'rb')とかでfpを引数にする分には問題ないのだけど
0324名前は開発中のものです。2008/06/02(月) 19:21:36ID:8Qz1LMxH
StringIOをfpとして扱う方法があったような
0325名前は開発中のものです。2008/06/02(月) 19:27:06ID:8Qz1LMxH
文字コードが合ってないんじゃないか?
0326名前は開発中のものです。2008/06/03(火) 01:19:32ID:bgHBWqPe
単純に純正ファイルオブジェクトしか扱わないということでは
0327名前は開発中のものです。2008/06/03(火) 02:06:21ID:uK0BObxI
質問者はソースを出すべきだと思う
0328名前は開発中のものです。2008/06/03(火) 02:10:44ID:uK0BObxI
pygame.font.SysFont
create a Font object from the system fonts
pygame.font.SysFont(name, size, bold=False, italic=False): return Font

Return a new Font object that is loaded from the system fonts.
The font will match the requested bold and italic flags.
If a suitable system font is not found this will fallback
on loading the default pygame font.
The font name can be a comma separated list of font names to look for.


pygame.font.Font
create a new Font object from a file
pygame.font.Font(filename, size): return Font
pygame.font.Font(object, size): return Font

Load a new font from a given filename or a python file object.
The size is the height of the font in pixels.
If the filename is None the Pygame default font will be loaded.
If a font cannot be loaded from the arguments given an exception will be raised.
Once the font is created the size cannot be changed.

Font objects are mainly used to render text into new Surface objects.
The render can emulate bold or italic features,
but it is better to load from a font with actual italic or bold glyphs.
The rendered text can be regular strings or unicode.
03293232008/06/03(火) 11:39:19ID:mLDxfbhh
とりあえずこんな感じです

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import StringIO
import pygame
from pygame.locals import *

def main():

pygame.init() # pygameの初期化
screen = pygame.display.set_mode( (180, 180) ) # 画面を作る
pygame.display.set_caption('Hello pygame') # タイトル

fp = open(u'みかP.ttf', 'rb')
font = pygame.font.Font(fp, 24) # フォントを読み込む
text = font.render(u"日本語表示テスト", True, (255,255,255))
fp.close()

#ここの部分がエラー 下記はエラーメッセージ
#This application has requested the Runtime to terminate it in an unusual way.
#Please contact the application's support team for more information.
#
fp2 = open(u'みかP.ttf', 'rb')
buf = StringIO.StringIO(fp2.read())
buf.seek(0,0)
font2 = pygame.font.Font(buf, 24) # フォントを読み込む
text2 = font2.render(u"日本語StringIO", True, (255,255,255))
buf.close()
fp2.close()
03303232008/06/03(火) 11:50:20ID:mLDxfbhh
while True:

screen.blit(text, (0,0)) # 文字を画面に貼り付ける
screen.blit(text2, (0,60))

pygame.display.flip() # 画面を反映

for event in pygame.event.get(): # イベントチェック
if event.type == QUIT: # 終了が押された?
return
if (event.type == KEYDOWN and
event.key == K_ESCAPE): # ESCが押された?
return


if __name__ == '__main__': main()
# end of file

textは出力されるけど、text2はエラーで出力されない状態

→font2 = pygame.font.Font(buf, 24)
この部分でエラーが起きてるので、おそらく型エラーかなんかおこしてるっぽいのだけど
実際にはアーカイブ化されたフォントを使うのが目的なので、フォント名指定でなくこういう回りくどいことしてます
0331名前は開発中のものです。2008/06/04(水) 06:03:57ID:z885t7mV
if (!PyArg_ParseTuple (args, "Oi", &fileobj, &fontsize))
0332名前は開発中のものです。2008/06/08(日) 09:44:46ID:+r8IRN4e
pygameでできるゲームってやっぱりスーファミくらいまでなの?
プレステレベルの3Dゲームって作れる?
0333名前は開発中のものです。2008/06/08(日) 10:15:17ID:BthkAlZ9
そんな事を聞いている時点でお前には無理とレスが来るに100ペソ。
マジレスするとOpenGLと組み合わせれば3Dはいけるんじゃないかな。
0334名前は開発中のものです。2008/06/09(月) 03:49:30ID:KI4OTa4D
英語の資料しかないからな
0335名前は開発中のものです。2008/06/09(月) 04:56:31ID:wgnZ/OTA
また英語ですかw
0336名前は開発中のものです。2008/06/09(月) 21:33:52ID:vGPleD1r
3Dいけるっていってもピンキリだからな。
pygameでここまでできますってのあればやる気になるんだけど。
実際、pygameで作られた有名なゲームってあるの?
0337名前は開発中のものです。2008/06/10(火) 01:53:20ID:I7WRkiTA
馬鹿だな
無いからこそ自分でやることに意味があるんじゃないか
既に有るもの追いかけても仕方ないだろ
0338名前は開発中のものです。2008/06/10(火) 02:00:20ID:phyGEt7B
いや、こいつは有名なゲームがあったとしても、やるわけないだろw
0339名前は開発中のものです。2008/06/10(火) 07:01:35ID:8hGvhXfP
>>335
ttp://pygame.skr.jp/index.php?FrontPage#u64fc449
ttp://www.python.jp/Zope/workshop/200706/Pygame_Hands-on.pdf
↑日本語文献でかなりわかりやすいと思う

>>332
OpenGLバインディングは
pygame拡張で欲しいかも。
そもそもpygameはSDL用なので
「3D出来ますか?」と訊いた時点で
負けかもしれな(ry
0340名前は開発中のものです。2008/06/10(火) 08:11:07ID:koGstHo2
PyGame拡張っていうかPyOpenGLっていうバインディングがあるよ
0341名前は開発中のものです。2008/06/10(火) 21:52:06ID:j3/0NQ7b
pygameのサイトのパイソンが封印されてる(CENSORED)のってなんでなの?
いつまで続くんだろ。
0342名前は開発中のものです。2008/06/10(火) 22:12:22ID:uiep9iuS
ほんとだ、いつごろからなんだろ
特にアナウンスとかも見当たらない

censoredっていうのは検閲済みとかっぽい?なんかへの皮肉かなあ
0343名前は開発中のものです。2008/06/10(火) 23:42:11ID:8hGvhXfP
思いっきりネタの気がする・・・w
今の前はスターウォーズのアレだったし

最近なんでも検閲したがるメディア傾向に
相乗りしたいんだろぅ w
0344名前は開発中のものです。2008/07/05(土) 11:16:29ID:rSpnpuBL
あげ
検閲が解除されたと思ったらまた変なのになってるwww
0345名前は開発中のものです。2008/07/05(土) 15:01:59ID:kdKTR09l
おかえり
0346名前は開発中のものです。2008/07/05(土) 17:04:26ID:jJbfcjDe
>>344
漏れも見てきたw
アレは一体何なんだ・・・・・・
ネタ分からんw
0347名前は開発中のものです。2008/07/06(日) 07:40:19ID:I4JuM713
そういや、PyCapがまだ出てなかったな・・・

PopCap Game Framework
http://developer.popcap.com/forums/pop_index.php

2D用のゲームライブラリ。
PopCap Games(http://popcap.com/) でも商用で使われているフレームワーク。
0348名前は開発中のものです。2008/07/06(日) 07:40:44ID:I4JuM713
PopCap Game Framework には、PyCap という Pythonバインデイングがある。
激しく生産性が高くなる。

PyCap - www.Farbs.org - Quirky little games for your edification
http://www.farbs.org/pycap.html

PyCap のレビュー
codeboje.de : 2D Game Engines for Python
http://codeboje.de/2d-game-engines-python/

> Pycap
>> the ultimate framework for the super slack programmer. Pycap wraps the
>> sweet sweet PopCap Game Framework in a super friendly high level
>> python interface. With Pycap you can start building pretty 2D games
>> without installing a compiler or learning C++.

>PopCap Games Framework Licence, Windows only, for Linux or mac take a look at TuxCap
>Compilation of the PopCap Framework with embedded python. The mainloop is in native
>code and contains several callback to the python code. The examples seem to be
>straightforward. The api doc is ok, but there are no further infos available.
>Neither a community. On the other hand it seems to be pretty new and still growing :-)
>Didn't see a sprite or tiled map engine or some related basic functions.

PyCap は PopCap Game Framework を Python拡張ではなく、
ネイティブ言語のembededとしてPythonを使うことにより、自然な形を実現している。
つまり、本来のexeがあって、PythonのDLLがあって、.pyや.pycが別にある形。
我々は、.pyを書いていけばいいわけだ。

なお、PyCap で作られたと思われるサンプルアプリは以下にある。
http://www.farbs.org/games.html
0349名前は開発中のものです。2008/07/06(日) 11:14:08ID:HG7Vxq5Q
>>348
生産性どれぐらい変わるの?
0350名前は開発中のものです。2008/07/20(日) 17:16:46ID:pAh0QkoR
pygameはソースの暗号化は可能なんでしょうか?
暗号化というか、pycで動けばいいのだけども
0351名前は開発中のものです。2008/07/23(水) 02:13:06ID:QKTkYFrD
それって普通のPythonとしての動作じゃまいか
0352名前は開発中のものです。2008/07/26(土) 10:24:52ID:Ze2GinWO
スクリーン作るときにDOUBLEBUF|HWSURFACE|FULLSCREENを指定するとどれくらい速くなるんでしょう?あまり変わった感じしないんですが。あとこのオプションってWindowsでもMacでもLinuxでもグラフィックカード積んでれば動作しますか?
0353名前は開発中のものです。2008/07/26(土) 11:50:37ID:uQYBFi9z
うちのはオンボードだが、全然速くならない。むしろ遅くなってる気が。
Linuxは知らん。
0354名前は開発中のものです。2008/07/26(土) 12:52:05ID:Ze2GinWO
今別のプログラムで試しにやってみたんだけどやっぱり速くなってた。Macだけど。
0355名前は開発中のものです。2008/07/26(土) 15:57:48ID:Ij3mBeAm
>>352
HWSURFACEを指定したからといって実際にハードウェアサーフェスになるかどうかは環境依存。
スクリーンサーフェスのフラグチェックして確かめて見れ。(Surface.get_flagsだっけ?)

HWSURFACEからHWSURFACEへの転送は速いが、SWSURFACEからHWSURFACEへの転送は
遅くなることもある。だからスクリーンだけをHWSURFACEにするとプログラムの作りと環境に
よっては遅くなることもある。
0356名前は開発中のものです。2008/07/26(土) 21:28:21ID:Ze2GinWO
画像とかロードするときにつかうSurfaceってソフトウェア?
スクリーン以外のSurfaceでハードウェアにする方法ってあったけ?
0357名前は開発中のものです。2008/07/26(土) 22:46:35ID:HKB96kMP
うぉっ、こんなスレあったんだ
純粋に聞きたいのだけどパイ村でゲーム作るメリットって何?
あと速度は実用的なのだろうか?
0358名前は開発中のものです。2008/07/26(土) 23:10:11ID:uQYBFi9z
そういや全然ゲーム目的に使っていないな……。

速度は、どういうのを求めているのかによると思うけど。
試してはいないけどツクール程度の2D描画はできるんじゃないかな。
3Dは知らん。
0359名前は開発中のものです。2008/07/26(土) 23:21:51ID:HKB96kMP
あ、そうなんだ
ゲームには全く使えんと思いこんでいたから
じっちゃん、びっくりだ

しかし、スレ見てると3Dエンジンとかまであるから
結構本格的だね
期待しる
0360名前は開発中のものです。2008/07/27(日) 08:52:44ID:mRizMl2f
>>356
ロードされたものは必ずソフトウェアサーフェスになると思う。
でもスクリーンに描画するならスクリーンのフォーマットに合せるために
事前にconvert()するでしょ?スクリーンがハードウェアサーフェスならこのときに
画像もハードウェアサーフェスに可能ならなる。
0361名前は開発中のものです。2008/07/27(日) 09:29:17ID:eTFxbOCF
>>360
ありがとございます。
そういえばconvert()は必ずしてました。
ためしてみます。
0362名前は開発中のものです。2008/07/27(日) 09:30:28ID:eTFxbOCF
>>357
・pythonなのでコードがきれい
・pythonのネットワーク機能とかDBとか全部使える
・どのOSでも動く
かな。
0363名前は開発中のものです。2008/07/27(日) 09:32:16ID:eTFxbOCF
速度は2Dでも規模が大きくなると60fps維持するの大変になってくる感じ。
だから推奨されてないけどハードウェアサーフェスを使いたくなった。
とはいえfpsを落とせば余裕かも。

スーファミレベルだったら全部作れそうだね。
0364名前は開発中のものです。2008/07/30(水) 18:25:10ID:GEhhvzhs
python+pygameを学べる学校があれば入るんだけどさ
0365名前は開発中のものです。2008/07/30(水) 22:10:48ID:BmZar1J/
>>364
プログラミングって学校で学ぶもんじゃないと思うよ。
0366名前は開発中のものです。2008/07/30(水) 23:28:18ID:poZVbuZX
pygameを教えてもらえるのは幼稚園までだぜ
0367名前は開発中のものです。2008/08/03(日) 10:27:02ID:gczXbzT3
さっさと翻訳しろ屑
0368名前は開発中のものです。2008/08/03(日) 12:16:08ID:kdciSO+Q
英語勉強した方がはやいよw
0369名前は開発中のものです。2008/08/06(水) 14:13:23ID:gPFPBMRK
パイで3DしようとしたらPSレベルまでかな?
ogreってやつみたら結構きれいなのがあったけど、たぶん実用レベルには届かないだろう
0370名前は開発中のものです。2008/08/10(日) 10:15:33ID:7d7jLSYs
>>369
Pythonといったい何の関係が?w
OpenGL使えるんなら、>>369のレベルによるとしか
0371名前は開発中のものです。2008/08/10(日) 10:46:42ID:rBsfGzay
レンダリングのスピードじゃない?PyOpenGLってC言語のOpenGLラッパーしてるだけだからC言語でそのまま書くのとレンダリングスピード変わらないの?Python使うことでどれくらいオーバーヘッドあるのか気になる。
0372名前は開発中のものです。2008/08/10(日) 12:11:33ID:7d7jLSYs
あおりではないのだが、そんなの気にする暇あったら他のところ作りこんだほうがいいよ。
気にしたいのならPython使うのがそもそも間違っていると思うぞ

Panda3Dは確かOpenGLじゃなかったかな?
参考になるかも
0373名前は開発中のものです。2008/08/12(火) 19:02:50ID:cNXWY8Pf
python+pygameを学べる学校があれば入るんだけどさ
0374名前は開発中のものです。2008/08/12(火) 23:09:21ID:TOhWV1DL
そんな学校の卒業生を誰がとるんだ・・・
自力でやれよ
0375名前は開発中のものです。2008/08/12(火) 23:13:38ID:rb+7XCsx
月謝20万ぐらい出せば個人指導してやってもいい
0376名前は開発中のものです。2008/08/12(火) 23:17:42ID:WgRyIMLP
ぱいぱい学園なんて履歴書に書けないだろ…
0377名前は開発中のものです。2008/08/13(水) 00:12:02ID:0BBcKMdI
あやまれ!PyPy作ってる人にあやまれ!
0378名前は開発中のものです。2008/08/13(水) 04:05:05ID:FKBasCgf
Pychinko作ってた人にもあやまっとけ
0379名前は開発中のものです。2008/08/25(月) 06:39:59ID:m+nx+baU
pygameでマップチップを使いたいのですが、画像の切り取りはどうやるのですか?
03803792008/08/25(月) 12:57:15ID:m+nx+baU
自己解決しました
0381名前は開発中のものです。2008/08/26(火) 09:04:02ID:xH1Y2fJ3
>>375
都内ですけど、毎週一回の個人授業
月謝10万でお願い出来ないだろうか
0382名前は開発中のものです。2008/08/26(火) 13:54:31ID:Xl9YHViE
>>381
うほ
0383名前は開発中のものです。2008/08/26(火) 22:16:25ID:/FXNK3ig
丸4日で10万と考えれば、そこらの研修サービスに比べれば若干割安か。
相応のレベルのものだったらやる価値はあるかもしれん。
0384名前は開発中のものです。2008/08/27(水) 00:18:24ID:efMdC411
>>381
それは女でもいいんですかね?
0385名前は開発中のものです。2008/08/27(水) 10:16:27ID:WTzy8afw
>>384
男でないとダメ(うほ
0386名前は開発中のものです。2008/08/27(水) 19:06:36ID:mZQmQzfF
美少女なら15マソ出すからうちに
03873812008/08/29(金) 00:45:24ID:s5QQPaIM
>>384
女性でも問題ありませんが
私は男性です、、よ?
0388名前は開発中のものです。2008/08/30(土) 00:02:28ID:ZXVR4B87
pygameのドキュメント和訳プロジェクトだれか立ち上げろよ
0389名前は開発中のものです。2008/08/30(土) 00:14:56ID:Ja9uBM5W
>>388
金くれるなら
0390名前は開発中のものです。2008/08/30(土) 10:43:50ID:dgu6fiUZ
⊃D
0391名前は開発中のものです。2008/08/31(日) 00:36:39ID:q58JIhOP
pypyからswf生成、さらにpygameのAPIをエミュレーションしてくれるユーティリティがあるみたいだね

会社PCにpypyインスコできたから、月曜にでも試してみるか
0392名前は開発中のものです。2008/08/31(日) 11:56:54ID:tJeL3/AT
>>391
詳しく
0393名前は開発中のものです。2008/08/31(日) 13:32:51ID:bI/0k/Fi
教えるわけねーだろ屑
0394名前は開発中のものです。2008/08/31(日) 13:41:31ID:6v1WG2C/
flex-pypyのこと?
0395名前は開発中のものです。2008/08/31(日) 18:38:49ID:tJeL3/AT
>>391, 393
紹介したいのか秘密にしたいのかどっちだよ…

とりあえずflex-pypy試したらswf生成は出来た。
けどドキュメント少なすぎ&開発止まってるっぽいのが残念
0396名前は開発中のものです。2008/08/31(日) 19:26:18ID:q58JIhOP
>>395
ID見ろよw
0397名前は開発中のものです。2008/08/31(日) 19:27:08ID:JffuNVVZ
そりゃ自慢したいだけだろう。こういう手合いは

>>391
は? pypyでswfとか作れるわけねーだろ屑

というように適当に煽っておくと、後は勝手にべらべら喋ってくれる。定石的に考えて。
喋らなかったり無反応だったら、ただの虚言癖か誤情報だから無視していい。
0398名前は開発中のものです。2008/08/31(日) 21:22:22ID:tJeL3/AT
>>396
ID見てなかったw スマソorz
0399名前は開発中のものです。2008/08/31(日) 21:31:22ID:Q/T6qUuS
>>397
ダレもきいてないことに得意げになって回答してるお前は何?

あと、自作でもないものを自慢していると考えることができた理由は?
普段から君がやってることだからではないの?
0400名前は開発中のものです。2008/08/31(日) 22:05:50ID:JffuNVVZ
まぁまぁ、落ち着け。
そんな喧嘩腰にならなくったっていいだろうに。
04013912008/09/01(月) 21:02:27ID:q9XsawCR
仕事ふえて試す時間作れずorz
0402名前は開発中のものです。2008/09/01(月) 21:57:38ID:Cy2k4BKr
まあ人少ないんだし仲良くやろーよ
0403名前は開発中のものです。2008/09/02(火) 01:20:24ID:8H9DwsWp
何人くらいおるんやろなー
0404名前は開発中のものです。2008/09/02(火) 17:23:11ID:ZY1/Zpsj
397 :名前は開発中のものです。:2008/08/31(日) 19:27:08 ID:JffuNVVZ
そりゃ自慢したいだけだろう。こういう手合いは

>>391
は? pypyでswfとか作れるわけねーだろ屑

というように適当に煽っておくと、後は勝手にべらべら喋ってくれる。定石的に考えて。
喋らなかったり無反応だったら、ただの虚言癖か誤情報だから無視していい。

400 :名前は開発中のものです。:2008/08/31(日) 22:05:50 ID:JffuNVVZ
まぁまぁ、落ち着け。
そんな喧嘩腰にならなくったっていいだろうに。

ちょっとワロタ
0405名前は開発中のものです。2008/09/04(木) 01:03:57ID:tNEgq/42
>>397



は天才
0406名前は開発中のものです。2008/09/04(木) 09:31:24ID:56ChGgLK
>>391
"PCにpypyインスコ"になぜかグッと来た俺は変態
0407名前は開発中のものです。2008/09/05(金) 01:29:11ID:ots/fAKI
>>406



は変態


>>406



は変態
0408名前は開発中のものです。2008/10/13(月) 20:23:25ID:oGDJW7p8
age
0409名前は開発中のものです。2008/10/13(月) 23:47:18ID:xR7aPqOS
sprite.RenderClearなんかに入れたスプライトって
描画順コロコロ変わるな・・・当然か
描画順を固定したい場合はGroupを複数に分けるしかないのかな
0410名前は開発中のものです。2008/10/14(火) 16:07:27ID:VGKWNGYe
オナニー!オナニー!オナニー!が口癖wの創価学会員の30代の逝き遅れキモデブ婆さんは
欲求不満の●性犯罪常習犯●なのでオナニー!とかエロ!とか性的な事が異常に好きwww
脳内妄想で犯罪者を作り出して偉そうに説教したがってるのは基地外すぎるw
現実世界で盗聴とか盗撮とかやるなよwwwww

熊本隆談www
0411名前は開発中のものです。2008/10/14(火) 17:47:07ID:raEfLzTb
>>409
pygame.sprite.OrderedUpdates
または
pygame.sprite.LayeredUpdates

ならスプライトの順番は固定される。
0412名前は開発中のものです。2008/10/16(木) 00:51:19ID:+q2s1csH
>>411
おお、ほんとだ
これで多重ウィンドウが作れる
ありがとう!
0413名前は開発中のものです。2008/10/18(土) 10:37:50ID:PQKIjUo0
多重ウィンドウってドラクエのウィンドウみたいなやつ?
後ろから順番に表示させるのかな
■ このスレッドは過去ログ倉庫に格納されています