ホームページ >バックエンド開発 >Python チュートリアル >Python、OpenGL 人生ゲーム
私は Python と OpenGL を学ぶ初心者で、最初の小さなプログラムは life.py です。この小さなプログラムは今後も継続的に調整され、クラスを追加し、判断と操作を最適化します
実行効果:
ルールによる。通常の人生ゲームの:
1、周囲の生命が3に等しいとき、生命を生成
2、周囲の生命が2に等しいとき、変化しない
3、赤と緑は相互に侵食し合う(新規)
4. 他の状況での死
境界サイクルを追加 (2017 /2/13)
from OpenGL.GL import *from OpenGL.GLU import *from OpenGL.GLUT import *import random'''全局参数开始'''life_down_p = 2 #竞争参数下限 life_up_p = 3 #竞争参数上限 life_die_time = 5 #死亡时间 life_begin = 1000 #开局生成时间 map_size = 100'''全局参数结束'''num = 0 #golbal life_map = [0]*map_size*map_size #golbal life_new = [0]*map_size*map_size #golbal all_c = [0]*map_size*map_size green_c = [0]*map_size*map_size red_c = [0]*map_size*map_size w = 2/map_size #width pre h = 2/map_size #height pre RED = 1GREEN = 2def draw_point(color,p) : #画点 x = int(p%map_size) y = int(p/map_size) glColor3f(color[0],color[1],color[2]) glBegin(GL_QUADS) glVertex2f(x*w-1,y*h-1) glVertex2f((x+1)*w-1,y*h-1) glVertex2f((x+1)*w-1,(y+1)*h-1) glVertex2f(x*w-1,(y+1)*h-1) glEnd() def god() : global life_map,num,font_map,all_c,green_c,red_c if num red_c[i] : life_map[i] = GREEN draw_point([0,1,0],i) elif green_c[i] life_up_p or all_c[i] <p></p><p>実行スクリーンショット: </p><p><img src="https://img.php.cn/upload/article/000/000/013/c279f9a8ca8d2f1e78c7adf5c6c1ce00-0.png" alt="Python、OpenGL 人生ゲーム" style="max-width:90%" style="max-width:90%" title="Python、OpenGL 人生ゲーム"></p><p> Python、OpenGL Game of Life 関連の記事については、PHP に注目してください。中国語のサイトです! </p>