|
|
最近越来越发现,程序开始动态化了
其实听说动态语言(脚本语言)已经很久了。可一直没有去学习它,我想最大的原因应该是不知道这个东东到底有什么好处吧!
最近,在看一本叫PYTHON的书,英文版的。也就漫漫接触了一下,看了一下,停简单的,解释执行,还必须安装一个SHELL。有点和BASIC差不多。
初看以为这是为小学生研究的语言,和那个有名的LOGO差不多,但一些大师级别的人老是在那里说PYTHON有多么多么的好,可以提高开发效率,但一直没发现它到底有多大威力。
因为,我一直在想如何将原来用C++写的东西全部脚本化,这是这几年的趋势,你可以环顾一下四周,几乎任何一个游戏引擎都有多个脚本接口。
并且还出现了全部用脚本实现的游戏,比如传说中的《大话西游》,听说全部由LUA实现。Luxinia,用OPENGL,OPENAL和LUA实现,pygame 用SDL,PYTHON实现。
现阶段最流行的动态语言有LUA,PYTHON,PEER等,但在游戏中使用的最多的是LUA,看了一下介绍,LUA本来就是适合嵌入式的,但中文文档较少,而PYTHON就不一样了,可以说是最通用的脚本语言,在任何应用中都可以见到他的身影。
所以就选择这个开刀,毕竟运用面广,不象LUA。
安装好PYTHON环境后,下载了PYGAME。(这一切的安装都很简单,所以就不介绍了)
按照PYGAME的教程实现第一个程序,一个流动的图片,让你侃侃PYTHON的语言有多简单:
import sys,pygame
pygame.init()
size = width,height = 800,600
speed = [2,2]
black = 255,0,0
screen = pygame.display.set_mode(size)
ball = pygame.image.load("c ython25examplemy.jpg")
ballrect = ball.get_rect()
while 1:
for event in pygame.event.get():
if event.type == pygame.QUIT: sys.exit()
ballrect = ballrect.move(speed)
if ballrect.left < 0 or ballrect.right > width:
speed[0] = -speed[0]
if ballrect.top < 0 or ballrect.bottom > height:
speed[1] = -speed[1]
screen.fill(black)
screen.blit(ball,ballrect)
pygame.display.flip()
效率是挺高的,看来以后要好好的学习学习!
|
-
|