unity3d实例自学使用教程.pdf

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
五、每期教程 本期教程还是比较简卑癿,我们打算做一个 Unity3D 癿系列教程,至亍入门教程 请百度一下嗨嗨癿 Unity3D 入门教程。那个是规频癿,非常简卑。一看就懂,如果丌 懂,找坑豆腐撞死。 下面我们来看看本期教程,俄罗斯斱坑 …………….. =。=.. 俄罗斯方块 转自 作者 小晕晕 首先来看一下做完之后的效果图: 61 第一步,我们先来理一下俄罗斯方块的玩法及其功能: 1、 游戏共有7 种形状,每一种形状都由4 个方块组成 2 、 游戏一开始或者每个形状落地之后都会在最上方生成一个新形状 3、 形状在没落地之前每隔大约0.5 秒会自动下落一个方块的距离 4 、 形状可以通过左右方向键向左右移动 5、 按上键可以旋转形状,每点一下上键则逆时针(我用的逆时针)旋 转90° 6、 每满一行,则这一行消失掉,上面的自动递补到下面 7、 游戏带计分功能,每消掉一行加1 分 8、 游戏界面右上角显示下一个将要生成的形状 9、 每一种形状都会随机赋予颜色 10、游戏有边界,如图左、右、下蓝色砖块区域。所有形状不可以移动 到边界以外,形状在旋转的时候也不允许插到边界里面或者伸出边界 第二步,思考游戏在unity3d 中的大致实现方式 通过观察,很容易发现,每个形状里面都有一个核心方块,其他3 个方 块都围绕核心方块来转动,同时也可以考虑到其他3 个方块的下落、左 右移动,也是随着核心方块走的。根据这个思想,我们可以先实现一个 方块的“生成”、“自动下落”、“落地判断”这三个功能。 1、方块的生成 整个俄罗斯方块的游戏界面其实就可以想象成一个二维数组,row 是行 62 号,col 是列号,通过给数组元素赋值0、1 来控制方块显示的位置,如: Private Var row : int; Private var col : int; block[row,col]=1;可以理解为第row 行col 列位置的方块显示 可能又有同学在想:这只是在数组里面把这个位置的值置为1,怎么让 他真正显示在游戏场景里面呢?这个就可以用到 GUI 里面的 GUI.Button 或者GUI.DrawTexture,我这里用的GUI.Button,当然,必 须自定义一个GUISkin,不然GUI.Button 画出来的按钮将是untiy3d 默 认的按钮样式而不会是上图中的样子。 2、方块的自动下落 这个说白了就是改变数组里面的值,OnGUI 函数里面一直在检测上面所 说的那个二维数组里面的值,如果为1 就显示这个方块,如果为0 就不 显示。代码如下: for(row=0;row30;row++){ GUI.Button(Rect(200,row*20,20,20),blockpic,cusblock01);// 画右 墙壁 GUI.Button(Rect(0,row*20,20,20),blockpic,cusblock01);// 画左墙 壁 } for(col=0;col11;col++){ GUI.Button(Rect(col*20,620,20,20),blockpic,cusblock01);// 画底部 墙壁 } for(row=0;row29;row++){ for(col=1;col10;col++){ 63 if(stateArry[row,col]==1){ GUI.Button(Rect(col*20,row*20,20,20),mainBlockpic[colorArry[row ,col]],cusblock01); //刷新显示游戏界面的方块 } } } 3、碰撞检测 在start 函数里面预定义墙壁位置的方块们对应数组元素的值为1,代码 如下: for(i=0;i30;i++){ st

文档评论(0)

wx171113 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档