课程概况
——玩游戏的最高境界是什么?
——当然是设计一款属于自己的游戏!
——设计游戏不是目的,从游戏看道理,从道理看人生,人生何尝不是属于自己的游戏。
本课程面向各类编程学习者,讲解利用Python语言设计和开发单机2D游戏的技术和方法,帮助学习者掌握理解、设计和开发2D游戏的基本能力。
即使在3D、虚拟现实和互联网对战广泛应用于游戏的今天,单机2D类游戏仍然以其策略性和最接近游戏本质的方式吸引大批休闲玩家。本课程将以一款濒临失传的、经典鼻祖型游戏Torus为实战项目,讲解有趣好玩的单机2D游戏的设计和开发。
本课程介绍Python计算生态中最优秀的2D游戏开发框架,包括必修内容和选修内容两部分。
必修内容包括:
(1)Python第三方库Pygame,讲解单机2D游戏设计和实现的基本概念和开发方法;
(2)以Torus游戏为实战项目,讲解游戏的事件、位图处理、计时声音、精灵动画、冲突解决等机制,并最终实现一个完整的单场景Torus游戏。
选修内容包括:
(1)介绍设计精彩游戏的游戏逻辑之道;
(2)介绍从单场景游戏到多场景游戏的扩展方法。
该课程希望传递“理解和运用计算生态,培养集成创新思维”的理念,重点培养学习者运用当代最优秀第三方专业资源,快速分析和解决问题的能力。
“人生苦短,不要刀耕火种”,嵩老师教你直面问题和需求,用最好的工具解决它!
课程大纲
根据课程内容特点,课程共分8个内容模块:
模块1:游戏编程的基本概念和Pygame库基础知识
模块2:游戏场景构建和事件处理机制
模块3:位图的基本使用
模块4:用精灵实现动画、精灵冲突机制
模块5:基本游戏逻辑的理解和设计
模块6(实战):Torus游戏实战项目的设计与开发
模块7(选修):多场景游戏逻辑及联网游戏的开发
模块8(选修):Torus游戏实战项目的联网对战扩展
预备知识
本课程需要学习者具备Python语言编程的基本知识和初步技能,建议Python零基础学习者先修嵩老师的“Python语言程序设计”课程。具体地,学习者需要预先掌握Python的数字类型、字符串类型、分支、循环、函数、列表类型、字典类型、文件和第三方库使用等概念和编程方法。
本课程需要学习者具备面向对象程序设计的基本概念(专题内提供速成材料)。
本课程与嵩老师的“Python云端系统开发入门”课程一起学习,将能够开发网络游戏哦!
证书或学分
本课程采取百分制,客观题和主观编程题各占50分。60分-79分可获得合格证书,80分以上可获得优秀证书,满分者将获得嵩老师的额外神秘大礼。
参考资料
Python集成开发环境(IDE)
[1] PyCharm:http://www.jetbrains.com/pycharm/ (推荐)
[2] IDLE: Python解释器默认工具
[3] Anaconda: https://www.continuum.io/
参考教程
[1] Python零基础入门教程:《Python语言程序设计基础(第2版)》,嵩天、礼欣、黄天羽著,高等教育出版社,2016.12。
[2] 专题参考资料:课内资料。
[3] 专题参考资料:《游戏设计快乐之道(第2版)》,Raph Koster著,O’Reilly & 人民邮电出版社,2015.10(此书是游戏设计经典之作,内容不包含PyGame开发)。
参考网站
[1] Python Pygame: http://www.pygame.org/
常见问题
Q1:除了Python,这个课程需要其他编程语言基础吗?
A1:不需要。
Q2:Python 2.x和Python 3.x,这个课程采用哪个版本?
A2:Python 3.x已经足够成熟,这是Python语言的现在和未来,嵩老师所有Python课程都采用Python 3.x系列版本。
Q3:在线开放课程看不到老师,有问题谁来解答?
A3:为了更好服务同学们,本课程教师和多名助教会每天在线答疑,尽快解决与课程相关的各类问题。
Q4:课程里面除了视频有什么新的形式吗?
A4:大学老师都是一本正经的,但你见过大学老师玩儿游戏吗?课间,嵩老师讲讲那些玩游戏的光辉岁月...