位置: 编程技术 - 正文

Unity3D游戏开发 脚本入门(六)(unity3d游戏开发笔记本推荐)

编辑:rootadmin

推荐整理分享Unity3D游戏开发 脚本入门(六)(unity3d游戏开发笔记本推荐),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Unity3D游戏开发 电子版,unity3d游戏开发 第3版,unity3D游戏开发,unity3d游戏开发简历,unity3D游戏开发,unity3d游戏开发 第3版,unity3d游戏开发 招聘,Unity3D游戏开发 电子版,内容如对您有帮助,希望把文章链接给更多的朋友!

前面几张我们讲解了unity的基本使用, 知道了如何去建立一个简单游戏。 但这不不够, 因为这些需要给游戏添加更多的行为.

unity 支持javascript,C#, boo script 语言 但官方推荐使用 javascript 语言, 对于初学者来说 ,最好使用javascrip 语言,因为简单 易学 ,更容易入门,到了后期推荐使用C# 因为c# 语言更贴近于面向对象的编程思想. 我们先用javascrip来学习吧.

下面我们先来了解下unity 脚本的命名规范

变量 - 首写为小写字母.变量用来存储游戏状态中的任何信息. 函数 - 首写为大写字母.函数是一个代码块,在需要的时候可以被重复调用.

类 - 首写为大写字母.可以被认为是函数的库.

当阅读范例时注意首写字母,将有助于你更好的理解对象之间的关系.

这一章 我们来做一个 如何使用脚本 让一个游戏组件移动的demo 通过学习这一章来让我们的游戏更加完善,新建项目 -> 场景,这一步可以不需要导入什么 资源包(不导入是因为在这个示例里面用不上)。新建一个项目后 默认会有一个新的场景 并且在场景里面还有一个摄像机组件.

1:首先创建一个用于行走的 plane 菜单栏 GameObject->Create Other ->Plane

把Hierarchey 中的plane和摄像机的组件的Inspector属性的 position 的x,y,z 属性的&#;都设置为0 方便在编辑框编辑。

2:创建一个用于移动的 cube 菜单栏 GameObject->Create Other ->Cube

把Hierarchey中的cube组件的Inspector属性的 position 的x,y,z 属性的&#;都设置为0

这里如果觉得场景不好看 可以给场景的plane 和 cube添加上图片纹理,和灯光,这边不在阐述了 , 前几章有讲过,呵呵

现在我们来 开始我们第一个脚本。

在Project 中点右键 create ->javascript 创建一个js 脚本 如图

重命名该js为MovePlayer.js 并双击该js unity会自己启动 MonoDevelop 编辑器并打开该js 在脚本中 我们看到一个Update()函数 这个函数中的代码将在游戏中的每一帧调用 所以我们将移动的代码放到这个函数中.

在unity 中移动一个对象需要使用 transform 来改变位置(transform 表示游戏组件本身), 那我们就需要通过transfrom的Translate函数 修改 的x,y,z 坐标, 我们先来个简单的哈 使用键盘的 a s w d 这几个键来移动箱子 看看 下面的Update函数代码

function Update()

{

transfrom.Translate(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));

}

Input.GetAxis() 函数返回-1到1之间的一个&#; 例如 上面代码Translate函数中的第一个参数 往左移动键映射为-1 右移动键映射为1

在上面的代码中 参数0 代表着y 轴 因为我们不需要cube 上下移动

Horiaontal和Verical 为 unity 输入按键映射 这几个按键映射是 unity 默认给我们预制的 在菜单 edit->Project Settings->input 的inspector 窗口下面 axes 下面可以很清楚看到按键映射关系 同样你可以修改它.

3: 连接脚本

Unity3D游戏开发 脚本入门(六)(unity3d游戏开发笔记本推荐)

我们想移动那个游戏组件,在这里当然是cube 啦 那我们就把刚刚写的那个MovePlayer.js连接到我们要移动的那个游戏组件上 ,那这个游戏组件就拥有了这个脚本的行为了 ,那如何连接呢.

在Hierarchy 中选中想要拥有这个脚本行为的的游戏组件 然后在菜单栏中 Componect-> scripts 就可以看到你刚写的脚本文件了 如图

如上图 scripts 下面的move Player就是我们刚刚写的脚本文件了 点击它 就可以附加到 游戏组件上了

还有种方法是 可以直接把Project 中的Move Player脚本文件 直接选中拖到Horiaontal 下面的游戏组件上 这种方法更方便 直观 快捷

如下图

给游戏组件添加脚本行为后 就可以再这个游戏组件的inspector 窗口看到我们添加的脚本文件了

小提示: 上图中 右下侧那个方框内 script 后面的那个 小三角形 点击它可以选择别的脚本文件哦 那个齿轮样的 图标可以 移除脚本文件和重置这个脚本文件的&#;等.

到这一步 可以就可以使游戏组件 cube 动起来了 运行游戏 使用 a,d,w,s 来控制方向 看看效果吧 但我们发现 貌&#;这个组件运行的太快了,那我们有办法处理吗? 当然有了 各位盆友继续往下看哈.

上面我们 是 按帧数去移动 现在我们按秒去移动 即每秒移动 多少个距离

如果按这种方式去实现 我们需要将Input.GetAxis()函数的返回&#;乘于Time.deltaTime 在乘于 一个移动距离 重新编辑MovePlayer.js

代码如下

var speed=5.0;

function Update ()

{

var x=Input.GetAxis("Horizontal")*Time.deltaTime*speed;

var z=Input.GetAxis("Vertical")*Time.deltaTime*speed;

transform.Translate(x,0,z);

}

上面的代码就实现了 每秒 移动的多少距离 这样就和帧数无关了保存上面代码 重新运行游戏 试试效果是不是看着顺畅很多

注意:移动的速度除了 在代码中修改, 还可以再这个脚本所连接的游戏组件的检视面板中修改 , 这就称为变量暴露 这种方式修改会比直接在代码中修改方便的多 如下图

如何调试脚本

Log()函数允许用户向控制台发送信息

例如: 把 Debug.Log("show cube"); 这断代码放到Update() 函数中 允许游戏就可以再 unity 的下边看到 show cube 字样 双击字样就可以看到控制台日志了。

Unity multiplayer usingUnityEngine;usingSystem.Collections;publicclassmultiplayer_Button:MonoBehaviour{voidOnGUI(){constintbuttonWidth=;constintbuttonHeight=;//Determinethebutton'splaceonscreen//CenterinX,2/3ofthe

完美世界3D格斗手游[格斗宝贝]今日公测 欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多Unity3D资源、Unity3D培训视频、Unity3D教程、Unity3D常见问题、Unity3D项目源码,【狗刨学习

Unity3d内置浏览器 uWebKit是一个Unity3d插件,个人认为比较强大,得收藏啊有图有真相:安装以及破解说明:1、导入资源包2、将破解目录里的Editor复制到工程项目的Assets目

标签: unity3d游戏开发笔记本推荐

本文链接地址:https://www.jiuchutong.com/biancheng/383629.html 转载请保留说明!

上一篇:Unity UGUI——概述、优点(unity的gui)

下一篇:Unity multiplayer

  • 多交了企业所得税,下年度退税,需要更正撒意思
  • 汽车保养 美容
  • 资产交换的涉税处理
  • 税法规定固定资产最低价格
  • 补交土地使用税到大厅怎么申报
  • 微信支付宝收入计入科目
  • 红字发票重复提交了数据该怎么处理
  • 广告制作可以开什么发票
  • 2019小规模纳税人免征增值税政策
  • 捐赠的固定资产账务处理
  • 服务性单位从事的是餐饮中介服务
  • 客观原因导致的没见过世面
  • 掌握无形资产核算方法
  • 企业所得税分公司先报还是总部先报
  • 增资后调减资本怎么计算
  • 公司阅览室布置图片
  • 共同开发无形资产怎么算
  • 外购烟叶税进项税额的扣除率
  • 环境保护税税率
  • 季度企业所得税可以弥补以前年度亏损吗
  • 增值税开票资料没有电话可以吗
  • 质保金的税务处理
  • 税控设备维修费怎么算
  • 小规模纳税人需要每月清卡吗
  • 境外所得税收抵免政策
  • 利润表本月金额指的是什么
  • 应付票据属于什么类账户
  • 临时工的个人所得税怎么算
  • 计提长期借款利息会计分录
  • 利息调整摊销的经济意义
  • 不动产投资包括哪些
  • 固定资产的财务处理方法
  • 推广费开票属于什么费用
  • 房地产企业按揭款到账后增值税
  • 存货分类账目录填写样本图片
  • win11预览版dev改beta
  • 计提未支付的费用
  • 跨省不动产登记
  • 怎么配置tomcat服务器
  • 建行E信通贴现需要什么资料
  • vscode2010下载
  • 待抵扣进项税额和进项税额的区别
  • 慈善组织接受股票捐赠流程
  • 一台设备可以分开开票吗
  • 怎样从对公账号查询账单
  • 第一次购买金税盘会计分录
  • 受托代销商品的手续费计入什么科目
  • 城建税减免性质代码是什么意思
  • 哪些情况不能开专用发票
  • 年末财务报表是什么
  • 资产负债表期末余额是累计数吗
  • 公司注销前的资产负债
  • 行政单位现金管理
  • 增值税税率调整后,合同价应该调整吗
  • 跨年的施工项目成本
  • 国家对民办幼儿园审批的条件有哪些?
  • 建账的基本原则是什么
  • ios 数据库版本升级
  • xp系统开机按什么还原
  • win8如何调整电脑屏幕亮度
  • 搜索功能使用方法
  • 自动保存怎么恢复
  • mac隐藏菜单栏
  • win102020h2怎么样
  • win10任务快速切换
  • Linux运维工程师工作内容
  • ie6浏览器兼容模式怎么设置在哪里
  • 慎用小儿百部止咳糖浆
  • jquery链式操作原理
  • log4j 日志文件太大
  • vue.js有哪些组件
  • python pygame模块详解
  • python开发的程序怎么运行
  • flask框架官方文档
  • python 判断字符串编码
  • 跨区域提供建筑安装服务
  • 新车购置税最低多少钱
  • 5种方式教你如何查询
  • 固定资产折旧的影响因素
  • 武汉代账公司一般怎么收费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设