opengl安裝教程(手機查看opengl版本)

  • 科技
  • 2023-04-25 13:18

多條告白如次劇本只需引入一次

1證明:

1.1運用python的pygame和OpenGL創造動靜正方體cube。

1.2安置python3.8和pygame(簡略)。

1.3安置OpenGL:

pipinstallPyOpenGLPyOpenGL_accelerate2功效圖:先看。

3完備代碼:

#---導出模塊---importpygamefrompygame.localsimport*fromOpenGL.GLimport*fromOpenGL.GLUimport*#---初始化pygame和設置窗口巨細---pygame.init()#OPENGL|DOUBLEBUF=DOUBLEBUF|OPENGL#DOUBLEBUF:雙緩沖形式(引薦和HWSURFACE或OPENGL一道運用)#創造一個OPENGL襯托的表露pygame.display.set_mode((640,480),OPENGL|DOUBLEBUF)#---元組設置---#設置正方體的xyz坐圈點CUBE_POINTS=((0.5,-0.5,-0.5),(0.5,0.5,-0.5),(-0.5,0.5,-0.5),(-0.5,-0.5,-0.5),(0.5,-0.5,0.5),(0.5,0.5,0.5),(-0.5,-0.5,0.5),(-0.5,0.5,0.5))#設置RGB臉色CUBE_COLORS=((1,0,0),(1,1,0),(0,1,0),(0,0,0),(1,0,1),(1,1,1),(0,0,1),(0,1,1))#設置面,四個點形成一個面CUBE_QUAD_VERTS=((0,1,2,3),(3,2,7,6),(6,7,5,4),(4,5,1,0),(1,5,7,2),(4,0,3,6))#設置線,兩個點形成一個線CUBE_EDGES=((0,1),(0,3),(0,4),(2,1),(2,3),(2,7),(6,3),(6,4),(6,7),(5,1),(5,4),(5,7),)#---設置畫正方體因變量---defdrawcube():#"繪制正方體",zip和list法allpoints=list(zip(CUBE_POINTS,CUBE_COLORS))#畫表面積---發端---中斷---glBegin(GL_QUADS)forfaceinCUBE_QUAD_VERTS:forvertinface:pos,color=allpoints[vert]#在第2個for底下glColor3fv(color)glVertex3fv(pos)#與第1個for對齊glEnd()#邊線臉色玄色glColor3f(0,0,0)#繪制線---發端---中斷---glBegin(GL_LINES)forlineinCUBE_EDGES:forvertinline:pos,color=allpoints[vert]glVertex3fv(pos)glEnd()#---主因變量---defmain():glEnable(GL_DEPTH_TEST)#初始化攝像頭glMatrixMode(GL_PROJECTION)gluPerspective(45.0,640/480.0,0.1,100.0)glTranslatef(0.0,0.0,-3.0)glRotatef(25,1,0,0)#啟用輪回---whileTrue:#事變檢驗和測定event=pygame.event.poll()#設置退出體制,在pygame的while輪回中,這一步必備樹立ifevent.type==QUITor(event.type==KEYDOWNandevent.key==K_ESCAPE):break#廢除屏幕glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)#攝像機回旋glRotatef(1,0,1,0)drawcube()#革新畫面pygame.display.flip()if__name__=='__main__':main()4元組的設置和推導式:

#---元組設置---#設置正方體的xyz坐圈點CUBE_POINTS=((0.5,-0.5,-0.5),(0.5,0.5,-0.5),(-0.5,0.5,-0.5),(-0.5,-0.5,-0.5),(0.5,-0.5,0.5),(0.5,0.5,0.5),(-0.5,-0.5,0.5),(-0.5,0.5,0.5))#設置RGB臉色CUBE_COLORS=((1,0,0),(1,1,0),(0,1,0),(0,0,0),(1,0,1),(1,1,1),(0,0,1),(0,1,1))#設置面,四個點形成一個面CUBE_QUAD_VERTS=((0,1,2,3),(3,2,7,6),(6,7,5,4),(4,5,1,0),(1,5,7,2),(4,0,3,6))#設置線,兩個點形成一個線CUBE_EDGES=((0,1),(0,3),(0,4),(2,1),(2,3),(2,7),(6,3),(6,4),(6,7),(5,1),(5,4),(5,7),)#"繪制正方體"allpoints=list(zip(CUBE_POINTS,CUBE_COLORS))#print(allpoints)#print(allpoints[0])forfaceinCUBE_QUAD_VERTS:forvertinface:pos,color=allpoints[vert]#print(allpoints[vert])print(pos)print(color)5簡化少許:如許很熟習少許。

#---元組設置---#設置正方體的xyz坐圈點a=((0.5,-0.5,-0.5),(0.5,0.5,-0.5),(-0.5,0.5,-0.5),(-0.5,-0.5,-0.5),(0.5,-0.5,0.5),(0.5,0.5,0.5),(-0.5,-0.5,0.5),(-0.5,0.5,0.5))#設置RGB臉***=((1,0,0),(1,1,0),(0,1,0),(0,0,0),(1,0,1),(1,1,1),(0,0,1),(0,1,1))#設置面,四個點形成一個面c=((0,1,2,3),(3,2,7,6),(6,7,5,4),(4,5,1,0),(1,5,7,2),(4,0,3,6))#設置線,兩個點形成一個線d=((0,1),(0,3),(0,4),(2,1),(2,3),(2,7),(6,3),(6,4),(6,7),(5,1),(5,4),(5,7),)#"繪制正方體"all=list(zip(a,b))#print(all)#print(all[0])forjinc:foriinj:pos,color=all[i]#print(all[i])print(pos)print(color)5.1元組的元組

5.2zip因變量

5.3list因變量:從來是列表的道理,創造仍舊元組,是元組的列表打包法。

5.4推導式嵌套推導式和元組推導器?

猜你喜歡

主站蜘蛛池模板: 《调教办公室》在线观看| WWW国产精品内射熟女| 欧美乱大交XXXXX疯狂俱乐部| 国产AV无码专区亚洲AV漫画| 97大香伊在人人线色| 扒开双腿疯狂进出爽爽爽动态图 | 国产精品美女久久久久AV福利| 久久99精品久久久久久水蜜桃| 欧美超强性xxxxx| 国产AV一区二区三区传媒| 骚包在线精品国产美女| 快点使劲舒服爽视频| 久久综合久久久久88| 波多野吉衣在线电影| 啊灬啊灬啊灬快灬别进去| 免费看v片网站| 在线精品小视频| 一级黄色a级片| 日韩一卡2卡3卡4卡| 亚洲成a人片在线观看中文动漫| 精品国产亚洲AV麻豆| 国产午夜鲁丝片AV无码| 2022天天操| 奇米影视在线观看| 久久99久久99精品免观看| 欧洲成人在线视频| 亚洲精品乱码久久久久久蜜桃不卡| 糟蹋顶弄挣扎哀求np| 国产恋夜精品全部护士| 2020夜夜操| 大荫蒂女人毛茸茸图片| 两个人看www免费视频| 日韩一区精品视频一区二区| 亚洲人成人网站在线观看| 特级aaaaaaaaa毛片免费视频| 可以免费观看的一级毛片| 香蕉视频亚洲一级| 国产精品久久一区二区三区| 97人洗澡人人澡人人爽人人模| 开心久久婷婷综合中文字幕| 久久久久免费精品国产|