版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要上个世纪八十年代,严肃游戏诞生。教育游戏属于严肃游戏的一个分支,是专门针对特定教育目的而开发的游戏,具有教育性和娱乐性并且这两点同样重要的特点,它使用游戏作为一种教育手段。同时“教育游戏”的定义比较宽泛,而且在“教育游戏”和“非教育游戏”之间并没有特别鲜明的界线。虽然有些游戏并不是专门为教育目的而设计的,但它们具有很强的教育意义,也可以纳入教育游戏的范畴。近年来,游戏发展迅猛,游戏的各种类型也越来越多,但是它们大多都是偏向于竞技与休闲类,对于教育类这一种游戏来说,市场上出现的频率是比较少的,而且大多数教育类游戏面向的都是青少年人群,受众群体不多。关于插花这一艺术与教育相结合的游戏在市面上出现的情况是几乎没有的。因此本次设计将实现一款基于Unity3D的插花艺术的教育类游戏,这款游戏将把插花艺术与教育这两个重要因素相结合,游戏致力于陶冶玩家的性情,让玩家也能在游戏中体验插花的乐趣,足不出户就能接触到插花,增加游戏体验,同时本游戏还增加了插花教育教程,适合零基础的玩家接触并学习插花艺术,达到插花的教育作用。综上所述,本文设计实现的插花教育类电子游戏新颖,有着可观的发展前景,本文主要讲述了游戏的开发原理,游戏设计与实现以及游戏测试等等。为后续有想向开发教育类游戏这一方向研究的开发者提供借鉴与参考。关键词: Unity3D插花教育严肃游戏
AbstractInthe1980s,seriousgameswereborn.Educationalgameisabranchofseriousgame,whichisspeciallydevelopedforspecificeducationalpurposes.Withthecharacteristicsofeducationandentertainment,andthesetwopointsareequallyimportant,itusesgamesasameansofeducation.Atthesametime,thedefinitionof"educationalgame"isrelativelybroad,andthereisnoparticularlyclearlinebetween"educationalgame"and"non-educationalgame".Althoughsomegamesarenotspeciallydesignedforeducationalpurposes,theyareofstrongeducationalsignificanceandcanalsobeincludedinthescopeofeducationalgames.Inrecentyears,withtherapiddevelopmentofgames,therearemoreandmoretypesofgames,butmostofthemarebiasedtowardssportsandleisure.Foreducationalgames,thefrequencyofemergenceinthemarketisrelativelysmall.Andmosteducationalgamesareaimedattheyouthpopulation,theaudiencegroupisnotmany.Therearefewsituationsonthemarketaboutflowerarrangement,agamethatcombinesartandeducation.Therefore,thisdesignwillimplementaneducationalgameofflowerarrangementbasedonUnity3D,whichwillcombinethetwoimportantfactorsofflowerarrangementandeducation.Thegameiscommittedtoedifyingthetemperamentoftheplayers,sothattheplayerscanalsoexperiencethehappinessofflowerarrangementinthegame.Playerscangetintouchwithflowerarrangementwithoutleavinghometoincreasethegameexperience.Atthesametime,thegamealsoaddsaflowerarrangementeducationcourse,whichissuitableforzero-basicplayerstocontactandlearntheartofflowerarrangement,andfinallyachievetheeducationalroleofflowerarrangement.Tosumup,theflowerarrangementeducationvideogamedesignedandimplementedinthispaperisnovelandhasconsiderabledevelopmentprospects.Thispapermainlydescribesthedevelopmentprincipleofthegame,gamedesignandimplementation,gametestingandsoon.Forthefollow-upwanttodevelopeducationalgamesinthisdirectionofthedeveloperstoprovidereferenceandreference.Keywords:Unity3DFlowerarrangementEducationSeriousGame目录第一章绪论 第一章绪论1.1本设计的目的和意义从先秦开始,插花开始萌芽,劳作中的人们随手折花装饰、互相赠送以表情谊,到了汉魏、南北朝时期,容器插花出现,东方插花历史可谓源远流长,许多文学作品中都出现了插花,艺术价值到了一定高度,特别是各种古代插画。但是清朝中期以后,插画艺术随着中国封建社会的衰败走向衰败。20世纪50年代后,插花艺术重新复苏,古老传统的插花艺术再次以美好的姿态,成为人们日常生活中的亲切的风景[8]。近年来,随着国民经济的发展昌盛,插花艺术也逐渐成为许多人选择学习艺术的一门必修课之一。因为插花是一项高雅的文化艺术活动,即可以陶冶情操提高文化艺术修养,又可以美化装饰我们的生活环境[5]。关于插花这一艺术的教育游戏,市面上出现较少,而且大多数插花游戏并没有添加学习某一种插花的教程,都只是让玩家操作插花,没有教导如何插花的环节,所以插花与教育相结合的游戏在市面上出现的情况是几乎没有的。因此本次设计将实现一款插花艺术的教育类游戏,这款游戏将把插花艺术与教育这两个重要因素相结合,游戏致力于陶冶玩家的性情,让玩家也能在游戏中体验插花的乐趣,足不出户就能接触到插花,增加游戏体验,同时本游戏还增加了插花教程,适合零基础的玩家接触并学习插花艺术,达到插花的教育作用。为了营造一种真实以及温馨的插花环境,本游戏将采用写真的游戏场景与游戏道具,并且增加了许多治愈系的背景音乐,让玩家在插花的过程中也感受到舒服美好的感觉,并且更加专注于在插花游戏实践中。1.2系统开发工具和技术的简要介绍1.2.1Unity3D游戏引擎介绍本次毕业设计所使用到的开发工具主要为Unity3D,其版本为Unity2019.1.9f1(64-bit)。Unity3D是由UnityTechnologies开发的多平台的综合游戏开发工具,可以被开发的游戏类型包括3D视频游戏、建筑可视化、实时3D动画等,它是一个完全集成的专业游戏引擎[6]。Unity3D还支持C#、JavaScript等语言开发,本次设计所用到的编程语言为C#开发语言。1.2.23DStudioMax工具介绍本次毕业设计中的制作插花材质所使用到的工具为3DStudioMax,常简称为3dMax或3dsMAX,它是基于PC系统的3D动画渲染和制作的软件,它是市面上游戏开发中最常用的三维建模工具[1]。本次设计需要用到大量的插花,使用3dmax的时间也会相对花费较多,由于模型从3dmax导入到Unity3D中材质会丢失,因此游戏场景中的模型材质与颜色皆为后期到Unity3D后添加Material材质着色,更改颜色完成的。1.2.3AdobePhotoshop介绍本次毕业设计中还需制作插花的菜单按钮,其所使用到的工具为AdobePhotoshop,简称“PS”。Photoshop是一个主要处理由像素组成的数字图像的图形处理工具。利用其众多的编辑和绘图工具,可以有效地进行图片编辑工作。
第二章游戏的需求分析及总体方案设计2.1插花教育类游戏的需求分析2.1.1玩家需求分析玩家是本次设计针对的用户,玩家对游戏最先接触到的就是交互场景,交互场景的美观和简易操作性更加吸引玩家。本次设计针对的用户群体定位为有学习插花意愿的玩家,并想从中得到一些插花技巧的玩家。此游戏可供花店教学使用,促使其学员完成线上教学的成果交付。2.1.2游戏功能的需求分析根据用户角度出发,需要完成的功能必须满足插花的基本操作。关于插花的基本技艺有三点,一是花材的修剪整理,将生长不良的叶子和花瓣剪掉;二是花材的弯曲造型,将花头朝向固定,必要时还可以用铁丝捆绑加固;三是花材的固定[8]。根据游戏的实用性与操作性,这其中一点和二点都将在选择并设计花枝模型中进行操作,也就是在游戏开发时进行操作,玩家并不用操作这两点,只需要做最后一点,也就是将花枝插在花瓶上。所以需要实现的功能有以下几点:首先完成插花操作:通过控制鼠标实现控制插花的移动,由于游戏毕竟与现实不同,无法将插花任意方位调整,但是考虑到插花调整方向以及位置的需求,我还加入通过按键盘控制插花的方向位置,如插花向左右方向旋转以及围绕自身旋转。其次,考虑到要插花的美观不只是当从屏幕的正面去观看,而现实中观察插花的形态,我们可以自己去走动或者移动花瓶来观察插花的效果,就要求在游戏中能各个方向去观察插花,所以我设计摄像机的功能为:镜头围绕花瓶旋转,由此我们可以通过摄像机的移动来观察各个位置的插花的形态。第三,实际上,我们需要的插花会提前在花瓶旁边准备好,方便我们进行插花的操作,在游戏中,如果花枝放在桌面上,而且花枝数量较多时,玩家可能难以去辨认所需的插花类型,以及难以准确地抓取想要的花枝,所以我设计将插花隐藏,通过设计插花按钮功能:点击按钮生成插花在特定位置,即实现点击需要用到的花枝的按钮才出现花枝的功能。需要声明的是游戏中插花的教程和实践的花枝出现的位置不同。第四,由于游戏展现的花枝数量较多,假如花枝按钮全部堆放到界面会影响美观以及干扰插花游戏进行,所以增加了可以收纳花枝按钮的菜单功能:实现收起与展开插花按钮的操作。以上四点都是最主要的功能需求,其他细节的功能下文再做赘述。2.1.3性能需求分析一款游戏呈现到玩家面前,他们最直观的感受就是游戏的界面场景美观程度,游戏画面精美,风格鲜明统一,是一款优秀且高颜值的游戏所具备的要求。但是游戏的流畅度更加重要,即使游戏画面再精致,游戏流畅度不达标也留不住玩家。而本游戏为插花教育类游戏,对游戏场景的美观度要求也较高,场景为写实风,贴和现实,会用到很多高保真模型,而且插花游戏免不了会出现很多植物,所以花枝数量较多,每个花枝都需要进行移动操作,所以必须给花枝模型加上碰撞器,碰撞器越复杂越会影响到游戏的性能,游戏进行时流畅度会受到影响。针对以上问题,我将进行以下三个解决方案:一是将游戏界面看不到的模型进行隐藏或者删除,二是将大多数花枝模型的MeshCollider(网格碰撞器)改为BoxCollider(盒碰撞器)或者CapsuleCollider(胶囊碰撞器)。最后第三个方案是在复杂场景切换中,加入异步加载,并在加载页面加入进度条以及关于插花的小知识,使玩家在切换场景时不用在原来的场景等待太久以致觉得游戏体验差,并且不会由于加载时间过长而没有耐性,相反,玩家可能会喜欢加载页面提示的内容,这是因为玩家群体就属于喜欢花艺并想学习的一类人。2.2游戏的总体方案设计2.2.1游戏结构方案设计本设计研究制作的为插花教育类游戏,插花本是一种现实实物的艺术操作,但是将其实现为虚拟,又要添加教程的操作,包括进行插花游戏的玩家水平可能参差不齐,无法保持一致,所以基于以上几点,为了使水平较低的玩家可以进行学习教程后在进行实践操作,水平较高的玩家直接进行插花实践,所以该设计的大体结构比较简单,由开始界面就可以任意选择到想要去学习或者游戏操作的场景,要再进行下一个场景游戏时也很简单,直接回到开始界面就可以再做选择。结构详情如图2-2所示。图2-1游戏大体结构2.2.2总体功能方案设计由上文的功能需求分析可以得出主要的功能,但其中的某些功能是作为辅助进行这个游戏的构成,在这里进行一一赘述。总体功能方案设计框架如图2-3所示。图2-2游戏总体功能设计框架图针对游戏总体功能设计框架,下面进行一一具体分析。(1)插花操作:首先从插花操作开始讲起,上文说道要使玩家在游戏中操作花枝,可以用控制鼠标来实现花枝的移动,又由于我们现实中对插花并不是只进行单纯的水平上的移动,即x轴或y轴方向的移动,还需要对插花进行各个位置的调整,如向左或向右倾斜,以及旋转花枝。这时候单靠鼠标是无法完成的,需要键盘才能进行旋转和倾斜的操作,并且鼠标的移动与键盘的操作能同时进行,这就相当于玩家在边移动花枝的时候就可以进行调整花枝的方向,模拟我们现实中对插花的操作。(2)摄像机:同上文分析所说,我们平常插花时,可能需要从各个方向来观察花枝插得怎么样了,所以玩家在插花时,需要观察插花各个方向的状态,如何实现这一功能,其实有两种解决方案,在现实中如果我们旋转花瓶就能看到四面八方的插花,因为我们转动花瓶,插在花瓶上花枝也会一起旋转,所以第一种方案是对花瓶和插花进行旋转,但是基于插花的数量较多这个性能方向上的要求,以及插花和花瓶是基于世界坐标还是自身坐标来进行旋转,还有轴方向是否如模型一致这些复杂问题的探讨,方案一中将花瓶和插花进行旋转的实现功能是不现实的。于是就有了方案二,就是本次设计采取的功能,让摄像机来完成旋转的功能,即模拟玩家肉眼来进行的操作,围绕着花瓶进行设定的角度移动。(3)插花位置:现实中的一般情况下,插花者需要提前准备好需要的花枝放在花瓶旁边,也就是将花枝横着放在桌边上,但是在游戏中,如果一开始就把花枝倒放在桌面上,那么玩家在插花时,还需要先把花竖起来,这样的交互没有意义,也会使玩家疲惫,所以为了去除这一操作并优化插花时无意义的操作,本游戏将插花位置改为出现就为竖着,后续玩家只需进行水平移动或者相应方向的调整即可。而游戏还有分为插花教程和插花实践,插花教程面对的是想学习如何插花的玩家,所以这类玩家对插花接触的相对较少,如何在游戏中快速学习到如何插花并且不需要复杂的操作,所以本游戏将插花教程中的插花设计为不用移动,直接出现在花瓶中,并且为了防止玩家错误的操作使花枝位置出现异常,所以插花也不可以被操作,玩家无法对插花进行任何移动以及位置上的变化。插花实践就与插花教程不同,插花实践中,花枝是出现在花瓶外的,但是是可以被玩家进行移动以及位置调整操作的。(4)UI按钮:本游戏中许多功能的实现都需要用到按钮,游戏中除了插花操作需要用到鼠标和键盘外,其他的都是由按钮来点击实现的。如插花出现在游戏中,是需要点击插花的按钮才能出现的,一个场景中出现的插花数量多,所以相应的出现在游戏屏幕的插花按钮数量也多,由此衍生了另外一个按钮,菜单按钮,这个按钮用于隐藏和展示插花按钮,菜单按钮的UI也会随着插花按钮的展开与收起进行变化。插花教程与插花实践面对的玩家水平不同,同时设定也不同,所以游戏需要对玩家有提示,提示按钮就解决这个问题,点击提示按钮,提示框就会出现,再点击一次,提示框就会隐藏,同时提示按钮也会和菜单按钮一样会随着操作变化UI。插花有很多种维度去学习,本设计围绕从花瓶不同开始该进行怎么样插花的操作的学习,在游戏自由模式中,玩家可以自由发挥插花并更换花瓶,所以花瓶按钮就是用于更换花瓶的。每点击一个花瓶按钮,这个花瓶就会出现在游戏场景中,其他花瓶就会消失。2.3本章小结从进行插花的玩家的需求出发,进行了一系列的探讨分析,得出了游戏的总体结构,这样场景单项的来回切换,更利于基础玩家的操作,同时也给玩家呈现出游戏的大纲以及选择的权利。从功能分析上,我们结合现实插花,将本设计模拟成较贴近现实的游戏,玩法参考现实插花的操作,同时也减少不必要的操作,使玩家操作到的都是最核心的插花步骤。将游戏总体框架和总体功能加以结合总结,由此得出本文所设计实现的游戏总体设计方案。
第三章游戏详细设计及实现3.1人机交互模块3.1.1开始界面插花艺术是现代的一种艺术表现形式之一,它象征着美好。所以本游戏必须具备一定的美观性,由上文2.2.1节游戏结构方案设计的研讨中,要考虑到玩家的游戏经验水平,我们也必须考虑到开始界面的简洁性。所以根据美观性与简洁性这两个特征。现在对游戏开始界面进行详细的制作方案。首先,从美观性开始研究设计,为了突出游戏主题为插花,所以可以将插花完成的作品放在开始界面中,让游戏这一插花主题在一开始就深入人心,即使不知道本游戏是什么玩法的时候,也可以大概地猜测到是有关于花的游戏,同时本游戏中插花的色系多为粉色系,这个色调给人一种浪漫温馨的舒适感,而开始界面插花的粉色为主色调,所以为了整体美观性的协调性,所以在设置按钮的UI上面,也要求按钮的UI字体颜色为与粉色系贴近的颜色。此外,单单只有插花呈现在开始界面是不够的,因为此时界面还是静态的,所以为了打破开始界面的寂静感,游戏将通过增加层次感来达到动态的效果,在开始界面中给场景中的环境添加光影,通过光透过树叶的影子照到插花作品上,并让风吹拂到树叶上,结果会呈现一种风吹动树枝摇晃的动态感,而这种动态是通过光打到插花呈现出来,并且配合应景的空灵的背景音乐,节奏舒缓清新,这样一来就非常巧妙地营造出一种如沐春风的氛围感。接着,就是开始界面的简洁化,开始界面背景应该选择简约大气的背景,但也不能选择纯色且干净平整的背景,会显得界面没有层次感,所以背景稍微带点材质纹路并且不太瞩目抢眼更利于突出主题,并且让玩家越看越能发现细节的美,有一定的耐看性,不会一览无余。同时,界面的简洁性还包括UI设置的简洁性,UI简洁就要求界面的UI不过度饱和,UI要少且精,排除一切多余UI出现。所以开始界面上要求只存在游戏名称“花颜”的UI和进入游戏的按钮UI,连结束游戏的UI也可以简化为一个单纯的“×”符号位于右上角。至此,游戏的开始界面指向简洁且明确。根据以上所有对游戏开始界面的探讨研究,完成游戏开始界面的最终效果图如下图3-1所示。图3-1游戏开始界面3.1.2游戏关卡界面这个小节将对游戏中的关卡界面制作流程进行简单的阐述。游戏有7个界面,其中包括开始界面和加载界面。除了这两个界面,我们把其他5个界面称为主游戏界面,其中主游戏界面又分为三种,一种是教程类的游戏界面,另一种是实践类的游戏界面,最后一种是自由模式的游戏界面。其实这三种界面都有相同的地方,只是都有比上一个多添加的内容,比如自由模式的界面与上一种实践类的游戏界面相似,只是多了花瓶的按钮还有一条提示语句。所有界面的设计都是基于当前游戏关卡模式的主题,使用Unity3D开发引擎所自带的NGUI所制作完成的。其中自由模式游戏界面如下图3-2所示。图3-2自由模式界面3.1.3游戏交互本设计与市场上主流的游戏一样,都是以鼠标、键盘作为输入装置来对游戏进行操作的,本游戏主要使用到的是鼠标,通过点击鼠标左键来实现按钮操作、长按鼠标来操控拾起花枝并移动,而键盘就只用在花枝方位的调整上,键盘按A键控制插花向左倾斜旋转,S键控制插花向右倾斜旋转,D键控制插花自身顺时针旋转,F键控制插花自身逆时针旋转。具体的功能实现代码将在下文详细描述。游戏的交互除了鼠标和键盘外,还包括游戏的提示框,教程关卡开始时会出现提示,指引玩家操作点击另外一个操作指示,它被点击后就会消失,不再出现。而实践关卡则不会出现这个提示框,这是默认玩家是先从教程开始玩后再进行实践,所以这个不会在实践关卡出现的提示是为了防止新手过度引导。这个提示框为了方便点击后消失,所以提示框由Unity3D中UI的Button实现,且鼠标点击后消失的设计流程为:将提示框按钮从Hierarchy面板中拖动到->OnClick()->RuntimeOnly->GameObject.SetActive->不勾选后面的选项。教程关卡提示如图3-3所示。图3-3宽口瓶实践场景的提示框3.2游戏具体功能3.2.1场景的设计首先,进行阐明游戏场景设计的思路。游戏用户群体定位为喜欢花艺的玩家,所以玩家大部分为对美有追求的人,所以对游戏场景的美观程度会有比较大的要求,所以游戏场景将走写实风,会比较贴近现实场景,而且是需要场景较简洁干净,这样玩家可以更加专注于花艺中。同时本游戏设定为插花教育类游戏,所以教授插花方向维度从花瓶形状入手,选用日常生活中最常出现的花瓶类型:宽口瓶和瘦高瓶。同时这两个花瓶形状不同也就意味着摆放的空间位置不同,也就是场景不同,所以游戏中主要的场景有2个,一个为宽口瓶插花所在的场景,一个为瘦高瓶关卡所在的场景。同时为了增加游戏丰富性,瘦高瓶和宽口瓶的摄像头远近也不同,即镜头有远近之分。最后游戏还设计了一个“自由模式”的游戏关卡,这个关卡花瓶可以选择以及没有标准的插花样式教程,它所在瘦高瓶关卡那个场景的不同位置上。其中瘦高瓶关卡所在的场景如图3-4所示。图3-4瘦高瓶关卡所在的场景3.2.2插花模型与按钮的设计在现实生活中,插花需要花费一定的金额去购买鲜花材料并且保质期不长,使用假花又质感相差甚远[5],用游戏中的鲜花模型就能很好地解决这个问题,不需要额外的花费,也不需要去担心鲜花枯萎的问题。所以,在游戏中,插花当之无愧是游戏的主角,插花的美观性直接影响到游戏的美术质量,所以对应的花枝模型我在前期用了大量时间去收集花的模型素材,最终找到风格一致的各种花枝模型,由于找到的花枝模型都为.max且以束为单位,所以就使用到3dMax工具将素材中能被用在游戏中的花给单独分离出来,并为其添加轴,最后转化格式为Unity3D能使用的格式.fbx,并导入到Unity3D中。由于在将模型导入到Unity3D时材质会丢失,因此在将模型导入到Unity3D后,还要为模型添加材质球,模型最终呈现颜色为后期添加的材质球中所设置的颜色。在有完整花的模型之后,又要设计插花需要将花枝摆放成美观性强且难度较简单,插花讲究错落有致,插花中带点绿叶可以增加插花的生动性和层次感,所以通过反复调整所有的花枝模型的位置和查阅花艺的各种资料,最后完成瘦高瓶和宽口瓶的不同插花造型。同时插花按钮UI也需要用到插花的图片制作,游戏的按钮UI统一为半透明背景。所以使用到Photoshop软件将花枝模型图片进行抠图,再添加半透明的背景。将按钮图片保存为Photoshop的格式.psd,导入Unity3D后,按钮图片并不能马上使用,而是要将按钮照片改变格式,将照片的TextureType设置为Sprite(2DandUI),最后点击Apply完成照片的纹理类型设置,将更改后的照片添加到按钮的Image(Script)下的SourceImage中,按钮UI在游戏界面显示的设置到这里就完成了。接下来,还需要对按钮的功能进行完善,将按钮与游戏中的插花匹配,即点击按钮时对应插花出现,所以在按钮上加上脚本,使点击按钮插花出现的功能所使用的是GetComponent<Button>().onClick.AddListener(delegate())函数方法获取插花按钮是否被点击,若检测到被点击,则实行SetActive()函数方法使插花出现在特定位置上。具体实现的功能代码如下:publicGameObjectflower;privatevoidStart(){this.GetComponent<Button>().onClick.AddListener(delegate(){flower.gameObject.SetActive(true);});}3.2.3鼠标与键盘操控的设计我们控制插花移动时用到的是鼠标,我们通过点击鼠标拖拽插花移动这一功能实现起来并不简单,因为游戏中有两个坐标,一个为游戏场景中世界坐标,一个为游戏的屏幕坐标,所以要实现控制游戏物体移动位置的同步,首先需要写一个方法将屏幕坐标转换成世界坐标,也就是说,把屏幕空间转化为世界空间。使用函数方法MyScreenPointToWorldPoint()实现,同时键盘控制物体旋转的功能由函数方法transform.Rotate()实现,同时由于不同场景花枝所在的坐标不同,所以相同的坐标参数所实现的位置改变不同,所以不同场景的脚本中坐标参数也有不同的调整,最终呈现在玩家面前按相同的键盘实现的位置改变在游戏屏幕中看到是相同的。控制插花移动和旋转的脚本是挂在花枝模型上的。宽口瓶实践场景的插花所挂载的脚本具体如下:Vector3MyScreenPointToWorldPoint(Vector3ScreenPoint,Transformtarget){//1得到物体在主相机的xx方向Vector3dir=(target.position-Camera.main.transform.position);//2计算投影(计算单位向量上的法向量)Vector3norVec=Vector3.Project(dir,Camera.main.transform.forward);//返回世界空间returnCamera.main.ViewportToWorldPoint(newVector3(ScreenPoint.x/Screen.width,ScreenPoint.y/Screen.height,norVec.magnitude));}Vector3startPos;Vector3endPos;Vector3offset;//鼠标沿着水平方向移动的增量//privatefloataxisX=1;//鼠标沿着竖直方向移动的增量privatefloataxisY=-1;privatevoidOnMouseDown(){//记录起始位置//因为我们的物体所处的是世界空间鼠标是屏幕空间//需要将鼠标的屏幕空间转换成世界空间startPos=MyScreenPointToWorldPoint(Input.mousePosition,transform);}privatevoidOnMouseDrag(){//向右旋转if(Input.GetKeyDown(KeyCode.S))this.transform.Rotate(newVector3(1,0,0)*5f,Space.World);//向左旋转if(Input.GetKeyDown(KeyCode.A))this.transform.Rotate(newVector3(-1,0,0)*5f,Space.World);//左旋if(Input.GetKeyDown(KeyCode.D))this.transform.Rotate(newVector3(0,1,0)*5f,Space.World);//右旋if(Input.GetKeyDown(KeyCode.F))this.transform.Rotate(newVector3(0,-1,0)*5f,Space.World);endPos=MyScreenPointToWorldPoint(Input.mousePosition,transform);//计算偏移量offset=endPos-startPos;//让cube移动transform.position+=offset;//这一次拖拽的终点变成了下一次拖拽的起点startPos=endPos;}同时必须给插花模型添加collider碰撞体,这样才能对花枝进行操作,而由前文对游戏的性能分析得出方案是将大部分游戏模型的MeshCollider改为BoxCollider或者CapsuleCollider。为什么要将游戏模型的网格碰撞器改为盒碰撞器或者胶囊碰撞器,这里将做详细的说明,因为MeshCollider的网格其实是由一个个小小的三角形拼出来的,这些小三角形就是网格的组成单位,而每一个mesh里面有大量的小三角形。因为渲染MeshCollider时对这些三角形的计算量很大,也就是渲染非常耗时,影响了游戏的性能。因此,使用BoxCollider代替MeshCollider是一种非常好的方法,它既有优点,也有缺点,BoxCollider渲染时间短,这一点也意味着它的不精确,所以在游戏中,玩家如果想点击选中某一朵插花移动时,可能会出现无法拖动的情况,这是因为BoxCollider无法像MeshCollider一样完全包裹覆盖整个模型。所以为了减少这种情况的出现,在一个花枝模型中可能会添加到2个BoxCollider。3.2.4摄像机的设计上文有对游戏中的摄像机赋予围绕旋转花瓶的功能,具体功能表现为,每点击一下按钮,摄像机就水平地围绕花瓶转动一定角度。首先,使用函数方法GetComponent<Button>().onClick.AddListener(delegate())获取旋转按钮是否被点击,若被点击摄像机旋转按钮,则使用函数方法transform.RotateAround()实现旋转功能,为了使摄像机有更好的体验,摄像机的代码中将设置一个公开的值rotatecount,即摄像机的旋转角度,可以在Unity3D工具中摄像机的代码挂件上进行更改,旋转度数将随时可以更改。具体代码如下:publicTransformcube;publicintrotatecount=50;publicButtonrote;voidStart(){rote.GetComponent<Button>().onClick.AddListener(delegate(){transform.RotateAround(cube.position,cube.up,rotatecount);});}3.2.5背景音乐的设计在上文1.1节说明本课题的目的和意义时分析说道为了营造一种真实以及温馨的游戏环境,同时美妙的音乐也有助于玩家进行插花创作[5],所以游戏除了采用写真的游戏模型外,还要增加许多治愈系的背景音乐,这个背景音乐必须让玩家在游戏的过程中也感受到舒服美好的感觉,有益于达到玩家更加专注于在插花游戏中。所以游戏背景音乐必须找到偏舒缓的轻音乐,同时也不能选择带悲伤气氛的音乐。最终根据游戏时界面给人的感觉挑选匹配度较高的背景音乐,如开始界面会有风吹动树枝的叶子的影子画面,所以其添加的背景音乐是有带风吹拂物体的声音。游戏的所有背景音乐都挂载在每个场景的摄像机上面,同时在此设计中还需要去勾选AudioSource组件中的PlayOnAwake和Loop选项,即在游戏运行时就开始播放背景音乐,同时循环播放。3.2.6游戏加载的设计在市面上的大多数游戏中,我们都可以看到游戏加载时会出现加载的页面以及进度条,这样除了可以让玩家随时看到进度如何还可以减轻玩家的焦虑情绪,加载页面也会出现一些内容,例如游戏的攻略、游戏近期的活动、游戏主角的自白等等,这些都会让玩家提升体验感。在上文分析游戏性能需求的时候就说到要做一个异步加载的功能,接下来就详细地介绍一下异步加载的功能设计。由于本游戏的场景切换出现最多的都是各个游戏场景切换到开始界面所在的场行,所以加载页面将插入在各个游戏场景切换到开始界面的场景的过程中。首先,在Unity3D中导入提前下载好的NGUI资源包,在Unity3D菜单栏中选中NGUI-Open-PrefabToolbar,在PrefabToolbar窗口中,选中Control-ColoredProgressBar拖拽至Hierarchy面板,修改名字为"Loading",接着将Loading子物体下的Foreground的ColorTint设置颜色为合适的粉色,用进度条的场景还很单调,还需要在场景中添加Image作为背景,需要把找好的合适的图片进行格式更改,也就是将照片的TextureType设置为Sprite(2DandUI),最后点击Apply完成设置,最后再添加到UIRoot下的SpriteRenderer中,至此,加载背景设计完成。接着,为了使场景在加载时出现提示的游戏内容,设计了文本内容并在字体以及颜色上做出了与游戏主题契合的设计,由于字体并非在Unity3D中设计,需要导出为图片再导入Unity3D中使用。所以字体的图片仍需要与上文对图片类型的处理一样去进行设置,这里就不再做详细叙述,然后在Hierarchy面板上添加Image,并在Image的SourceImage中添加游戏的温馨提示文本,即处理好格式的字体图片。最后,给UIRoot中的摄像机Camera添加脚本组件,即创建控制异步加载的代码。其中acOp.allowSceneActivation=false是为了即使场景已经加载完成,也不会自动跳转,为了使游戏加载时得到满意的效果,每一个百分比的进度都能展示在玩家眼前,在脚本中还加入一个重要的语句.yieldreturnnewWaitForEndOfFrame(),即等到帧渲染结束,才能进行下一次循环,也就是玩家看到的跳转场景。具体代码如下:publicGameObjectobjProcessBar;privatevoidStart(){StartCoroutine(StartLoading("Begin"));//调用}IEnumeratorStartLoading(stringstr){floati=0;AsyncOperationac0p=Application.LoadLevelAsync(str);ac0p.allowSceneActivation=false;//不允许场景一旦准备好就被激活while(i<=100){i++;objProcessBar.GetComponent<UISlider>().value=i/100;yieldreturnnewWaitForEndOfFrame();}ac0p.allowSceneActivation=true;}3.3本章小结本章主要讲的是根据对花艺的资料查询和论文研究,以及参考市面上游戏的设计逻辑,对游戏进行功能的研究以及研发,章节中包含游戏的详细功能的介绍和实现的具体操作的说明,需求贯穿全章,从游戏的界面到游戏的交互,从游戏的模型到游戏具体的功能,都一一进行需求分析的原因说明并实现。
第四章游戏测试4.1游戏的打包和导出到此,游戏的研究设计已经接近尾声,接下来就是将游戏打包导出,再进行试玩测试。导出build文件步骤如下:在Unity3D的工具栏中选择File,点击BuildSetting,在BuildSetting的界面框中,将我们设计完成的需要在游戏出现的场景拖拽进去,这样场景就被添加进去,后续可以完成游戏场景的切换,然后再点击PlayerSetting,将游戏的界面设置中勾选上游戏之前设计的屏幕尺寸,接着在Graphics中找到ShaderStripping,在LightmapMode处选择Custom,并且勾选它下面的全部的选项。最后点击Build选项,将可执行文件导出至文件夹。图4-1ProjectSetting窗口4.2游戏运行测试将上一节打包好的执行文件打开,在Graphics窗口中的Screen选项选择游戏的分辨率1280*800,最后点击右下角Play按钮,游戏运行。图4-2Graphics窗口在游戏时,要测试鼠标与键盘是否可以对花枝进行正常操作,教程关卡与实践关卡中对插花的操作是否不同,按钮是否可以正常使用,游戏运行时是否卡顿,游戏场景切换回开始界面时加载页面是否会出现,背景音乐是否在运行时就开始播放,背景音乐播放结束后是否可以进行循环播放等操作。部分具体测试操作如下:首先点击“Play!”按钮,游戏运行,游戏开始界面正常出现,背景音乐正常准时播放,树枝阴影背景正常拂动,光照条件无异常,四个场景切换按钮皆可点击跳转,右上方的“×”点击后关掉整个游戏即退出游戏,功能实现流畅且无遗漏。图4-3游戏运行时的开始界面点击“自由模式”进入场景,背景出现相应音乐,同时在场景出现时就播放,并且在场景停留较久时,背景音乐有循环播放,音乐播放结束后无暂停播放现象。点击游戏画面左下角文件袋按钮,插花按钮出现在游戏画面左侧,文件袋按钮UI变化成向左方向的箭头,再次点击,插花按钮消失在游戏画面中,按钮UI再次改变为向右方向的箭头,由此,菜单按钮正常。插花按钮能进行点击操作,并且唤起花枝,点击鼠标左键可拖动花枝,同时点击键盘A键插花能正常向左倾斜旋转,点击键盘S键插花能正常向右倾斜旋转,点击键盘D键插花能正常自身顺时针旋转,点击键盘F键插花能正常自身逆时针旋转。并且在插花移动时点击上述对插花方位进行改变的功能的按键都能实现。点击其中某一花瓶的按钮,此花瓶出现在场景中,并且之前的花瓶消失,无其他花瓶出现。点击旋转按钮,摄像机围绕花瓶转动,按钮可以正常使用,点击游戏画面右上方提示按钮,点击后提示框出现,且提示按钮UI变化成有发光的灯泡,再次点击提示按钮,提示框消失,且提示按钮回到最开始的UI—无发光的灯泡。图4-4游戏中出现提示框最后点击右上角按钮回到开始界面,游戏加载界面出现,图片显示尺寸正常,text文本正常出现。进度条有向右进行滑动,并同步显示进度数字,背景音乐也正常播放。进度到100%之后进入开始界面。图4-5游戏加载界面4.3游戏测试结果在游戏测试过程中,没有出现bug使游戏无法运行。其中上一节所提到的测试的所有结果也全部正常。根据测试结果得出:从游戏的人机交互、插花的移动与方位改变调整、摄像机围绕花瓶旋转运动、按钮UI变换到最后的场景跳转等形式基于正常的操作反馈,让玩家有更好的游玩交互体验。本游戏的基本内容、游戏的操作等功能都能符合玩家们的基本需求,本游戏符合一个完整的游戏的基本要求。此外,游戏所实现的功能也能满足插花教育类游戏的核心玩法。
第五章本设计的总结与未来展望本文是基于Unity3D的插花教育游戏设计与实现,在游戏制作过程中,遇到很多困难,包括插花素材的查找和环境灯光方面遇到了很多问题,我都一一去解决,这使我收获颇多。最终本研究的完成不仅仅意味着本次毕业设计接近尾声,也意味着一个从未在市面上出现的插花教育类游戏的诞生。尽管游戏主题以及玩法有很多的创新,但还是有一些可以在未来发展更好的方面:1.游戏关卡的设计与玩法可以再进行增加完善,给游戏增加更多的丰富性;2.游戏美术做得再精致一点,给游戏增加视觉上的美观,包括游戏的模型与灯光,3.增加插花和花瓶的种类,本游戏中出现的花枝和花瓶种类还是比较少的,若能再多一点会更好地增加游戏的丰富性以及专业性。4.跨平台手机游戏,本游戏为PC端的游戏,若能改进成为手游,可以增加游戏的受众人数以及更加方便随时进行游戏。
参考文献[1]段薛孔,李潼,朱旭东,吴兰.Unity3D游戏场景中人物角色动画的设计[J],电脑知识与技术期刊,2019.15-9[2]Unity.Unity3D参考手册[S],Unity,2019.[3]程彬彬,王明鑫,商楠.浅谈游戏开发平台Unity3D的应用与发展前景[J].通讯世界:下半月,2016,110159[4]刘娇英.加强插花艺术实践教学,提高学生动手能力[J].甘肃科技,2008,024(015):191-192.[5]林丹彤,董军.插花艺术教学方法研究[J].中山大学学报论丛,2003,23(1):161-163.[6]李兵川.基于Unity3D游戏开发流程分析[J],山东工业技术,2018(07):148.[7]JosephHocking,霍金,蔡俊鸿.Unity5实战:使用C#和Unity开发多平台游戏[M].2016.[8]贾舒婷,田敏.浅谈插花艺术入门[J].现代园艺,No.364(16):156.
致谢至此,本研究也即将结束。我在此感谢所有在我大学四年间帮助过我的人。首先,我很感谢我的家人对我学业上的支持。特别感谢我的指导老师杨超老师,感谢您给予我很多毕业设计上的帮助,对我选择的课题给予非常肯定的支持,同时也给我提出很多宝贵的意见与建议。同时我也由衷地感谢我的游戏开发专业老师吴志达老师,感谢您对我专业上的教授与鼓励,让我能学习到Unity3D去制作我想制作的游戏。最后,衷心地感谢参与本文评阅以及答辩的老师,感谢你们。
电脑无法识别U盘该怎么办HYPERLINK电脑无法识别U盘怎么办?打开我的电脑上单击右键,在快捷菜单里,选择“管理”,打开“计算机管理”窗口。在计算机管理窗口里,选择“存储”下面的“磁盘管理”,如果看得到没有盘符的U盘,那么在这个U盘上按鼠标右键,选择“更改驱动器名称和路径”选项,就打开了“更改……的驱动器号和路径”对话框。再点击“更改”按钮,打开“更改驱动器号和路径”的对话框,在“指定以下驱动器号”的右边下拉列表里,选择你希望分配给U盘的驱动器号,尽可能靠后选择,比如X、Y、Z,选择好后,单击确定按钮,回到上一次“更改……的驱动器号和路径”对话框窗口,再一次单击确定,就回到“计算机管理”窗口。至此,如果一切正常,就给U盘单独设置了一个长久使用的驱动器号,并却,不受虚拟驱动器的影响了。建议将U盘插到电脑上,看任务栏中是否显示图标,如果显示,在我的电脑点右键查看属性——高级——硬件——设备管理器——查看里面是否有问号的设备,在问号设备上点右键——更新驱动程序然后下一步——否暂时不连接到网络——下一步自动安装软件(推荐)就可以了另外:系统不认U盘的几种处理方法1.禁用主板usb设备。管理员在CMOS设置里将USB设备禁用,并且设置BIOS密码,这样U盘插到电脑上以后,电脑也不会识别。这种方法有它的局限性,就是不仅禁用了U盘,同时也禁用了其他的usb设备,比如usb鼠标,usb光驱等。所以这种方法管理员一般不会用,除非这台电脑非常重要,值得他舍弃掉整个usb总线的功能。但是这种屏蔽也可以破解,即便设置了密码。整个BIOS设置都存放在CMOS芯片里,而COMS的记忆作用是靠主板上的一个电容供电的。电容的电来源于主板电池,所以,只要把主板电池卸下来,用一根导线将原来装电池的地方正负极短接,瞬间就能清空整个CMOS设置,包括BIOS的密码。随后只需安回电池,自己重新设置一下CMOS,就可以使用usb设备了。(当然,这需要打开机箱,一般众目睽睽之下不大适用~~)2.修改注册表项,禁用usb移动存储设备。打开注册表文件,依次展开"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbehci”双击右面的“Start”键,把编辑窗口中的“数值数据”改为“4”,把基数选择为“十六进制”就可以了。改好后注销一下就可以看见效果了。为了防止别人用相同的方法来破解,我们可以删除或者改名注册表编辑器程序。提示:“Start”这个键是USB设备的工作开关,默认设置为“3”表示手动,“2”是表示自动,“4”是表示停用。3.在computermanagement里将removablestorage的使用权限禁止。computermanagement是一个windows管理组件,可以在控制面板——管理工具——计算机管理打开。在该工具窗口中storage——removablestorage——property中,general项,可以控制系统托盘是否显示security则可以管理移动存储设备的使用权限。在security中将普通用户的使用权限降低,就可以达到禁用u盘的目的。破解的方法也很简单,管理员降低普通用户移动存储设备的使用权限,但未必禁用computermanagement的使用权限。普通用户可以通过这个工具解除usb移动存储设备的使用权限限制。另外,值得一提的是,如果u盘插到电脑上后可以驱动,但是我的电脑里却没有盘符,很有可能是管理员改动了u盘的默认盘符,使得我的电脑不能识别。这种情况,可以在movablestorage中看到u盘驱动器。可以在u盘驱动器属性设置里为u盘重新分配一个盘符,再重新插拔一次u盘,就可以在我的电脑里看到u盘的盘符了。一、首先可以将该U盘换到别的机器上,看使用是否正常。如果排除了硬件损坏的可能,一般就是软件方面有问题。在WindowsXP+SP1操作系统下,有些USB2.0设备的确常常出现工作不稳定的问题,可以试试安装设备自带的USB2.0驱动程序。另外最好不要使用USB延长线,防止因为供电不足而造成不稳定现象。如果仍无效,可以在主板BIOS设定中,将USB接口强行设置为USB1.1传输速率。二、(适用于WIN98)启动计算机,进入主板BIOS设置,检查BIOS中USB的相关选项是否已经打开:OnChipUSB设定为Enabled;USBController设定为Enabled;PNPOSInstalled设定为Yes;AssignIRQForUSB设成Enabled。要正常使用USB设备首先要开启USB接口,在主板BIOS里可以进行此项工作,一般来说只需在BIOS中进入ChipsetFeatures设置,并将USBKeyborad/MouseLegacy选项设定为Enable,就能够保证在操作系统下使用USB键盘了。这些选项的作用是打开主板芯片组对USB设备的完全支持,为系统识别USB设备做准备工作。三、USB口接触不好处理办法:拔下,等十秒钟再插上USB口,使接触完好;五、闪存盘驱动程序没有安装完成(WIN98系统下)处理办法:鼠标点“我的电脑”,选择属性找到“通用串行总线”,删除其中的USBMASSSTORAGE项,再点击“刷新”,然后按照提示重新安装一次驱动程序。六、接其它USB设备(如扫描仪、打印机、数码相机)时可以正常使用,接优盘时闪指示灯不亮,不能够使用。1、检查优盘与电脑的联接是否正常,并换用其它USB接口测试。2、检查设备管理器,看是否出现”通用总线设备控制器”条目,如果没有,请将电脑主板BIOS中USB接口条目*激活(ENABLE)。3、如果电脑安装过其它类型USB设备,卸载该设备驱动程序,并首先安装优盘驱动程序。4、到其它电脑试用此优盘,确认是否优盘不良。七、启动型优盘在的电脑上无法实现启动,可能是主板型号不支持。如何判断一块主板是否支持闪存盘启动系统启动型优盘是采用模拟USB软驱和USB硬盘的方式启动电脑的。只要电脑主板支持USB设备启动,即BIOS的启动选项中有USB-FDD、USB-HDD或是其它类似的选项,就可以使用启动型优盘启动电脑。八、第一次在电脑上使用优盘,未出现提示发现新硬件的窗口,驱动程序无法安装的原因可能是:1、主板usbcontroller未启用解决办法:在电脑主板BIOS中启用此功能。2、usbcontroller已经启用但运行不正常解决办法:在设备管理器中删除”通用串行控制器”下的相关设备并刷新。3、优盘被电脑识别异常,在设备管理器中表现为带有黄色?或!的”其它设备”或“未知设备”。解决办法:删除此设备并刷新。九、大容量的U盘(例如兼具MP3播放器或录音功能的U盘)或移动硬盘在电脑上无法正常使用,虽然系统提示找到了未知的USB设备,但无法正确识别U盘或移动硬盘。原因可能是:1.USB接口供电不足:系统为每个USB接口分配了500mA的最大输出电流,一般的U盘只需要100mA的工作电流,因此在使用过程中不会出现什么问题。大多数移动硬盘所使用的是普通的2.5英寸硬盘,其工作电流介于500mA~1000mA之间,此时假如仅仅通过USB接口供电,当系统中并无其他USB设备时,那么还是可以勉强使用的,但如果电压不稳的话,就随时可能出现供电不足的问题。特别是使用支持USB2.0的移动硬盘时,情况最为严重。另外,如果你的笔记本电脑使用电池供电,那么USB接口所分配的电量就更小了。2.使用了外接的USB扩展卡:在笔记本电脑中使用USB2.0的U盘或移动硬盘时,如果笔记本电脑不支持USB2.0技术,一般必须通过PCMCIA卡转USB2.0的扩展卡来间接实现支持,这些扩展卡基本上都采用NEC公司的D720100AGMUSB控制芯片,少则提供两个USB2.0接口,多则提供五个USB2.0接口,对一般用户而言足够使用了。由于PCMICA接口提供的电源功率比板载USB接口要小,这样就会由于供电不足而导致移动硬盘工作的出现问题。解决方案:1.它从USB连接线上接移动硬盘的一端引出一根转接线,可以插入电脑背后的PS/2接口取电,这里可以比USB接口提供更大的电流输出。2.利用电源补偿线(也称“键盘取电线”),如果U盘或移动硬盘的包装盒中提供了选配的电源适配器,你就可以直接使用外接电源,这样就可以从根本上避免供电不足的情况发生了前置USB线接错。当主板上的USB线和机箱上的前置USB接口对应相接时把正负接反就会发生这类故障,这也是相当危险的,因为正负接反很可能会使得USB设备烧毁。所以尽量采用机箱后置的USB接口,也少用延长线.也可能是断口有问题,换个USB端口看下.USB接口电压不足。当把<ahref="mobileharddisk">移动硬盘</a>接在前置USB口上时就有可能发生系统无法识别出设备的故障。原因是<ahref="">移动硬盘</a>功率比较大要求电压相对比较严格,前置接口可能无法提供足够的电压,当然劣质的电源也可能会造成这个问题。解决方法是<ahref="">移动硬盘</a>不要接在前置USB接口上,更换劣质低功率的电源或尽量使用外接电源的硬盘盒,假如有条件的话。主板和系统的兼容性问题。呵呵这类故障中最著名的就是NF2主板与USB的兼容性问题。假如你是在NF2的主板上碰到这个问题的话,则可以先安装最新的nForce2专用USB2.0驱动和补丁、最新的主板补丁和操作系统补丁,还是不行的话尝试着刷新一下主板的BIOS一般都能解决。系统或BIOS问题。当你在BIOS或操作系统中禁用了USB时就会发生USB设备无法在系统中识别。解决方法是开启与USB设备相关的选项。就是开机按F2或DEL键,进入BIOS,把enableusbdevice选择enable。拔插要小心,读写时千万不可拔出,不然有可能烧毁芯片。XP中任务栏中多出USB设备的图标,打开该图标就会在列表中显示U盘设备,选择将该设备停用,然后你再拔出设备,这样会比较安全。
其实判断软件硬件问题很简单,在别的机器或换个系统试试就可以了.有些小的问题不妨先用专门软件格式化下.还有提醒大家WINDOWS下格式化时要选择FAT,不要选FAT32。
提示无法识别的USB设备维修
故障提示如图:
无法识别的USB设备:UnknownUSBDevice.很多人都遇到过的一个问题,所谓“无法识别”对于操作系统来说,或者是驱动程度有问题,或者是USB设备出现了问题,或者是计算机与USB设备连接出现了故障,解决问题的方法也是从这几处着手。
对于不同的设备会有不同的处理方法,了解USB设备正常工作需要的条件以及一些可能影响USB设备正
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中政治听评课记录
- 2017教师听评课记录
- 石楼县2024年一级造价工程师《土建计量》深度自测卷含解析
- 高中历史说课课件
- DB 1401T 37-2024 城市轨道交通全自动运行线路运营管理规范
- 《个人证券投资》课件
- 蓝色国潮风二十四节气科普介绍-白露模板
- 《电梯安全与自救》课件
- 坚持课件教学课件
- 《文化产业融资工具》课件
- 废气处理油烟净化器安全操作及保养规程
- 《生产运作管理(第6版)》读书笔记模板
- 沪科版九年级全一册《电动机为什么会转动》评课稿
- 生化药品附录培训
- 学校火灾隐患排查整改清单台账
- 2023年贵州省7月普通高中学业水平考试语文试卷
- 顾客满意度调查表模板
- 《语文园地八》(说课稿)部编版语文二年级上册
- 内科大矿井运输与提升设备教案第10章 斜井提升
- 苏教版译林牛津英语4A全册教案
- 对车辆维修服务的合理化建议
评论
0/150
提交评论