《拼图游戏多面人》教学设计

2024-04-27

《拼图游戏多面人》教学设计(精选4篇)

篇1:《拼图游戏多面人》教学设计

教材版本:

岭南版 第九册

教学对象:

五年级

教学时数:

一课时

教学类型:

造型、设计

教学目标:

1、启发从多种角度观察事物的可能性。

2、发挥形象思维和想象思维,培养对形象的分解和重构能力。

教学重点:

多角度的解构

教学难点:

解构的运用

作业要求:

拼图游戏(从不同角度观察一个同学的面部,画下来再进行拼贴)

教与学的过程(教师与学生的互动过程):

课前准备:

教师:利用毕加索的画作和一些拼贴画等资料制作课件

学生:准备好绘画和手工制作材料

课堂导入:(创设情景)

展示学生优秀的头像写生画,再欣赏毕加索等大师的“多面”画,让学生谈谈之间在观察角度和表现手法上的区别。

课堂发展:

一、发现:原来在绘画中不仅可以从一个固定的角度去表现人的面部的表情特征,而且还可以把从不同角度观察到的面部的表情特征表现在一起,构成一个“多面人”。

二、如何制作“多面人”:

1、让学生思考、发表自己的设想

2、老师小结,制作方法多样,如:直接在画面组合(毕加索为例)、画与画的拼贴、画与照片的拼贴、照片与照片的拼贴等等。

3、制作过程:老师作简单示范。

三、学生作业:

要求:用拼贴游戏的手法把从不同角度观察并表现出来的面按一定规律地组合在一个画面上。

1、选出一位同学当模特。

2、每人从自己的角度观察和表现同学的面部表情特征。

3、分四人小组把各自画的不同角度的面拼贴起来,完成作业。

作业展示与评价:

要求:根据拼贴的规律性和趣味性进行评价。

1、展示作业,以小组为单位自评、互评。

2、老师评价。

3、师生谈谈对本节课的体会和收获。

课后反思: 针对学生对本课教学目标、重难点的掌握程度和反馈进行总结。

篇2:《拼图游戏多面人》教学设计

1、掌握“部分”与“全部”的关系

带宝宝玩拼图的过程中,教宝宝识别“部分”与“全部”的关系,引导孩子认知由“部分”到“全部”的过程,认识全部是由许许多多的部分组成。还可以结合生活给孩子讲讲道理,讲讲生活。如团队意识之类的。

2、熟悉平面组合的概念

拼图利用的是一种平面组合的概念,不同于积木。当然如果拼图和积木搭配玩耍效果也会很好。

3、传递顺序的意义

宝宝看到新事物会有一种自然的认知,比如很多小朋友知道从边缘部分开始拼起。但是还有很多小朋友突然接触到这么多拼图碎片,不知道如何做起。这就需要家长去引导,引导他们看示范图纸,引导他们从边缘拼起,教给他们顺序完成。拼图的过程也是宝宝们不断学习顺序的过程,树立一种完成一件事情要循序渐渐的意识。

4、增强手眼协调能力,培养耐心、专注的性格

能静静玩拼图的小朋友一般都是非常有耐心的。而拼图过程中不断的比较和尝试拼凑,可以锻炼宝宝的手眼协调能力。所以玩拼图还可以锻炼孩子的耐心,培养他们专注的精神,能玩拼图的孩子一定是可以做的住的孩子。

5、了解生活,锻炼解决问题思维

拼图的图案大多数来源于生活,所以玩拼图的过程是孩子了解生活的过程。同时孩子在生活中的观察能力也能在玩拼图的过程中发挥的淋漓尽致。同时玩拼图需要孩子面对难题的思考能力,必须将每一片放下去实践,推理,实践,假设,再实践,再思考……最终找到拼图单片的正确位置。

6、提高抗压能力

随着宝宝长大,我们也会选择更庞大的拼图给他们玩耍。刚开始可能孩子很有兴趣,但是之后就会有很多半途而废的孩子,因为老是拼错所以无法进行下去。

当孩子受到“老拼错”挫败感骚扰的时候,家长是最好的心灵导师,一定要陪伴孩子战胜困难,引导孩子换个角度,换个时间,换个环境,但是不允许半途而废,不可主张这种思想的出现。这种战胜困难的过程可以提高孩子的抗压能力,同时能让宝宝感受到母爱与他们同在的动力。

7、帮助孩子培养成就感

当凌乱的拼图被一块块拼在一起成为一幅美丽的画面时,是孩子们最快乐的时候。家长们一定要多表扬孩子,这会给予孩子前进的功力,让孩子有一种成就感。也是孩子们日后自信心的源泉。

篇3:《拼图游戏多面人》教学设计

拼图游戏是一款益智休闲游戏, 由于其游戏规则简单、 游戏结束时很容易满足玩家成就感而一直受到大家的喜爱。 通过对游戏软件开发思想和实现方法的研究, 不仅可以激发开发人员的学习兴趣, 还可以培养算法思维能力, 提高编程技巧。 借助Flash工具和Action Script脚本语言可以实现图片拼图游戏的基本功能[1,2,3]。 采用面向对象程序设计方法和MFC实现数字拼图游戏的设计与实现, 通过游戏设计可以加深对C/C++ 中的一些难点内容的理解, 比如指针的指针、 动态控件、 static成员和链表等, 从而提高软件开发能力。

2设计思想

拼图游戏过程是将若干个打乱的图片重新移动排序, 当组织为有序状态时即为完成游戏。 首先, 根据用户设置的游戏级别n (n≥3) 生成相应游戏界面, 即创建(n×n) -1个图片排成n行n列, 保留最后一个为空位用于图片的移动。 其次, 当游戏开始后随机打乱图片, 并启动定时器监控游戏状态。 然后, 用户通过单击与空位相邻的图片实现图片的移动。 图片移动的实现思想就是图片按钮与空位按钮交换属性。 当系统检测到当前所有图片已按序排好时计时结束, 并且弹出 “游戏成功” 消息窗。 该游戏设计的重点是如何随机打乱图片即进行游戏布局, 以及如何实现系统提示和自动完成功能。

3界面

为了重点说明拼图游戏设计的主要思想和实现方法, 游戏中的图片通过数字1~ (n×n) -1进行表示, 最后一个空白图片位置用于图片的移动。 对该游戏进行扩展时, 图片上的数字可以指向一个完整图片被切割后若干小图片的编号或储存路径, 甚至可以是组成一个逻辑推理故事的不同片断编号, 从而通过用户重新排列生成一个逻辑推理拼图游戏。 数字拼图游戏的参考界面如图1所示, 游戏开始前的图片排序位置也就是游戏完成时的位置。

玩家开始游戏前可以设置游戏级别, 即游戏的难易程度。 系统在 “选关” 组合框中的默认游戏级别为 “3×3”, 也就是说玩家要对8个图片借助一个空位进行移动重排。 在游戏过程中可以向玩家提示游戏用时和已操作步数。 另外, 本游戏提供帮助功能, 即当用户选择 “提示” 功能时,“下一步” 按钮就会被激活, 用户可以看到当前应该移动的图片数字和距离游戏完成的剩余步数, 并且通过 “下一步” 按钮实现图片的移动。 如果此时在进度条中滑块的位置值不为0时, 系统转为完全自动完成模式, 即系统自动移动图片来完成游戏, 图片移动速度随着进度条中滑块进度值的增大而变快。“放弃” 按钮可让用户中止当前游戏, 重新开局。“游戏记录” 按钮可以查看游戏历史记录的相关数据, 包括日期、 游戏级别、 用时和步数。

3.1自定义按钮类

本游戏设置图片的移动方式为单击与空位相邻的图片使其移至空位上。 为了响应图片对用户的单击事件, 使用按钮控件显示数字图片。 同时为了实现图片的移动功能, 需要确定下面几个属性并重新定义按钮的单击事件响应函数。

(1) 图片按钮所在位置 , 包括行号和列号 。

(2) 图片按钮的标题 , 取值为数字1~n×n-1。

为此, 在VC++中创建基于对话框的MFC App, 工程名为Game。 以CButton类为基类, 创建自定义按钮类CMove But-ton, 为其添加成员变量如下:

为类CMove Button添加成员函数Move(), 将该按钮移至空位中。 算法步骤包括:

(1) 判断当前按钮如果与空位相邻, 则执行下面步骤; 否则算法结束。

(2) 设置空位按钮属性 。 主要实现代码如下 :

(3) 使当前按钮为空位按钮。 主要实现代码如下:

(4) 记录游戏步数。 实现代码为: CMove Button::Steps++;

(5) 若该按钮标题不在链表尾结点中, 则将其添加到链表尾, 以便在向用户提供帮助或者自动完成游戏时按其逆序复原; 否则删除链表尾结点。 主要实现代码如下:

为了控制图片按钮的移动, 还需要对图片按钮重载鼠标左键单击事件的消息响应函数On LButton Up, 通过在On LBut- ton Up函数中调用Move函数完成单击图片实现移动功能。

3.2动态界面的创建

在系统启动、 用户重新选关和放弃当局游戏时, 需要根据游戏级别创建相应数量的数字图片按钮, 生成目的界面。 游戏区域大小是不变的, 随着游戏级别增加, 图片数量增加, 图片按钮的尺寸就相应减少。 为类CGame Dlg中定义成员函数: void Create Matrix (int dim); 用于动态生成游戏界面, 参数dim用于设置用户选关n。 该函数的主要算法思想为动态创建一个包含n×n个CMove Button类型的维按钮n方阵, 最后一个位置为空, 即设置按钮为不可见。 算法步骤包括:

(1) 定义游戏区域为CRect Field Rect, 以正方形为例, 边长为Field Edge, 确定按钮边长Button Edge=Field Edge/dim。

( 2) 定义动态指针数组CMove Button ** p But = new CMove Button* [dim*dim]; 指向n×n个动态按钮。

(3) 计算第i行第j列按钮的位置: top = Field Rect.top + Button Edge*i, left = Field Rect.left + Button Edge*j。

(4) 定义按钮矩形对象, 调用Create函数创建动态按钮, 依次设置按钮标题为1~n-1。 主要实现代码如下:

(5) 设置最后一个按钮为空位按钮 。 主要实现代码如下 :

4游戏初始化

开始游戏时需要打乱每个数字的顺序, 进行游戏布局。 在有些拼图游戏中采用了8数码问题用于图片的拆分[4], 保证每次游戏都有解。 本游戏采用逆向法实现图片的可重排归位, 即从游戏要完成的目的界面开始, 随机移动若干步数后, 以此时游戏界面中图片的排列顺序提供给用户作为游戏的开始布局。 可移动图片按钮必须与空位按钮位相邻, 空位按钮最多有4个移动方向。 每次移动图片就是图片按钮在与空位按钮进行交换, 包括交换标题、 行列位置和可见性。

为了便于实现后面的游戏提示和自动完成功能, 需要记住每次移动的按钮属性, 为此定义链表数据结构用于存储图片按钮的位置和数字。 游戏出题算法为:

(1) 通过p But获取每个按钮的标题, 并存储在二维数组Matrix Map中。 实现代码为:

Matrix Map[i][j] = p But[i*dim+j]->m_Title Num;

(2) 获取空位按钮的行列位置, 随机确定一个与空位相邻的按钮, 与该按钮交换位置。 主要实现代码为:

(3) 定义成员函数CGame Dlg::Move Map (int row, int col) ,首先记录移动轨迹, 若该按钮标题与链表尾结点的标题相同, 则从链表中删除尾结点; 否则为该按钮生成新结点并加入链表中, 并且记录结点数即游戏步数。 其次在Matrix Map中设置空位标题为当前[row, col] 位置按钮的标题, 并更新Erow值和Ecol值即实现数字图片的移动。 主要实现代码为:

(4) 重复执行第(2) 步若干次后, 将Matrix Map值映射到p But中, 并设置按钮标题和可见性。 实现代码为:

(5) 更新p Empty Button, 设置空位按钮不可见。 实现代码为:

(6) 启动定时器 。

5游戏提示/自动模式

当游戏开始时会启动一个定时器, 用于监控游戏状态, 包括: 是否完成、 游戏用时、 游戏步数、 剩余步数、 游戏模式等。 用户在游戏过程中可以随时选择 “提示” 模式, 这样系统会提示当前应该移动的数字。

为了确定当前应该移动哪张图片, 系统就得从游戏布局开始跟踪图片的移动轨迹。 具体实现方法是在游戏初始化和用户游戏过程中, 会把每次移动的按钮的行列位置和数字存储在链表中。 如果只是向用户提供当前应该移动的图片, 只需要访问链表, 获取尾结点中的数字并显示, 即采用逆向操作便可使图片的排列顺序恢复到游戏布局前的完成状态。 此时用户既可以单击图片按钮移动图片, 也可以单击 “下一步” 按钮实现自动移动图片。 同样, 只要是用户直接单击图片的移动操作, 就需要被记录在链表中。

在提示模式时, 当定时器检测到进度条当前的进度值不为0时, 即转为游戏自动完成模式, 并且根据进度值Rate Pos控制图片自动移动的频率Auto Second。 主要实现代码为:

定义成员函数CGame Dlg::Move Next() 实现图片自动移动, 算法步骤如下:

(1) 访问链表尾结点, 获取当前要移动的图片按钮的位置, 从而通过p But使其不可见。

(2) 通过p Empty Button设置空位按钮可见, 并将当前图片按钮的属性赋值给p Empty Button, 即完成当前图片与空位的交换。

(3) 更新游戏步数。

(4) 从链表轨迹中删除链尾结点。

当定时器依次检测到每个图片按钮标题为数字1~ (n×n) - 1时便可确定拼图成功, 也可以采用两个数组分别存储原始图片位置和游戏当前位置, 通过比较后判断游戏是否完成[5], 从而销毁定时器。

6结语

本游戏的开发采用面向对象程序设计方法, 系统采用图片打乱方法可保证游戏完全有解, 并且通过记录图片移动轨迹和采用逆向移动法实现了游戏提示/自动完成功能。 在游戏开发中将相对独立的知识点融会贯通, 可以提升开发人员的计算思维能力, 达到事半功倍的效果。 本研究需进一步完善之处是游戏轨迹优化。 虽然在游戏初始化时对某个图片直接进行重复移动的情况进行了处理(见游戏出题算法第(3) 步), 但还存在间接重复移动, 例如转圈循环移动。 由此而造成游戏轨迹臃肿, 使得游戏在提示/自动模式时系统完成效率不高。 因此该系统还可进一步考虑如何采用优化算法对移动轨迹进行简化。

参考文献

[1]彭杰.基于Action Script拼图游戏的开发与实现[J].科技创业家,2012,8:62-63.

[2]李枫,夏敏捷.Flash AS3实现拼图游戏[J].电脑编辑技巧与维护,2014,17:80-85.

[3]陈银凤.利用Flash制作拼图游戏[J].现代计算机,2012,6:51-52.

[4]史月美,王宏武.拼图游戏生成器的设计与实现[J].电脑开发与应用,2013,26(10):63-65.

篇4:VB编程实现滑板拼图游戏

1 窗体设计

(1) 添加一个窗体, 设置caption属性为滑板拼图;设置borderstyle属性为1;设置backcolor为任意颜色。

(2) 在窗体中加入一个图片框picture1。

(3) 在已经加入的图片框上面又加入一个图像框image1。

(4) 选中picture1进行复制, 然后进行粘贴, 建立picture1控件数组和image1控件数组。连续粘贴9次, 使窗体中共有10个图片框和10个图像框。

(5) 再加1个命令按钮command1, 选择它, 进行复制, 再进行粘贴, 建立command1控件数组。

(6) 在窗体中加入一个标签label1, 设置autosize属性为true;设置backstyle属性为0。

(7) 在窗体中加入一个时钟timer1。

2 窗体加载

3 添加全局变量

4 命令按钮

5 图像框

6 时钟响应

7 自定义两个函数

(1) 交换图片框位置函数:jiaohuan (pic1, pic2)

(2) 空位处理函数:empty_do (pic1, pic2)

8 运行效果图

如图1所示。

9 结语

本程序代码精简短小, 控件属性设置几乎均在代码中实现, 准确快速, 图片框中加载图片框, 实现图片剪裁效果, 动态改变图片框属性, 实现图片移动效果。从以上实例可看出, VB功能很强大, 用不着写很多代码, 便可实现很好的编程效果。

本文来自 360文秘网(www.360wenmi.com),转载请保留网址和出处

【《拼图游戏多面人》教学设计】相关文章:

拼图游戏课程设计05-19

会推荐拼图游戏04-15

拼图与设计05-01

拼图形,比创意教学设计04-16

《最后一块拼图》04-22

数学三角拼图05-20

大班拼图案例反思06-25

拼图大赛活动方案07-11

拼图比赛活动方案07-11

拼图与人生作文04-19

上一篇:童心是小鸟作文下一篇:二公司职代会消息