Heim  >  Artikel  >  Backend-Entwicklung  >  Python, OpenGL-Spiel des Lebens

Python, OpenGL-Spiel des Lebens

高洛峰
高洛峰Original
2017-02-13 17:52:042208Durchsuche

Anfänger, der Python und OpenGL lernt, life.py ist das erste kleine Programm zum Üben. Dieses kleine Programm wird in Zukunft kontinuierlich angepasst, indem Klassen hinzugefügt und Urteilsvermögen und Operationen optimiert werden

Ausführungseffekt:

Gemäß den Regeln des regulären Lebensspiels:

1. Wenn das umgebende Leben gleich 3 ist, wird Leben erzeugt

2. Wenn das umgebende Leben gleich 2 ist , es bleibt unverändert

3. Rote und grüne gegenseitige Erosion (neu hinzugefügt)

4. Tod in anderen Situationen

Neu hinzugefügte Grenzschleife (13.02.2017)

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>Ausführungs-Screenshot: </p><p><img src="https://img.php.cn/upload/article/000/000/013/c279f9a8ca8d2f1e78c7adf5c6c1ce00-0.png" alt="Python, OpenGL-Spiel des Lebens"    style="max-width:90%"  style="max-width:90%" title="Python, OpenGL-Spiel des Lebens"></p><p> Weitere Artikel zu Python und OpenGL Game of Life Bitte achten Sie auf die chinesische PHP-Website! </p>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Python-Lernen (2) ---StringsNächster Artikel:Python-Lernen (2) ---Strings