Unity3D开发:Unity3D中的脚本概述_普通网友的博客-程序员信息网

技术标签: U3D技术  

和其他的3D软件一样,Unity3D作为一个类播放器的3D集成软件,具有良好的时间层级关系。

比如Start()里面的语言,总是在播放器初始化时执行一次,而后就不再执行。例如下面用JS写的一个例子。在菜单栏上选中 38.JPG ——> 39.JPG ——> 40.JPG ,将下面这段代码拖拽给Hierarchy【层次清单栏】中任意一个对象。
41.JPG
您就会在播放器刚开始播放的时候,在左下角的控制台面板中看到 42.JPG 这句话,证明您的Game播放器已经开始工作了。如图5.1所示:

43.JPG
图5.1
(注:这个控制台买那般以后在大家使用的时候会经常用到它,因为它可以用作您代码片段的调试,以及您程序出错了的提示框,详细的提示您出错的原因所在。)
当然有了初始化函数,就一定会有刷帧函数Update(),该函数内所有的代码会在播放器每播放一帧时执行。例如下面用JS写的一个例子,在菜单栏上选中 未命名.JPG ——> 未命名2.JPG ——> 未命名3.JPG ,输入如下代码:
44.JPG
该代码会在播放器每播放一帧的时候,显示游戏开始到现在所消耗的时间值。
Unity3D中有着非常强大的接口处理功能,您可以在代码中为对象制定任意一个空接口用于和对应类型的对象进行交互,例如下面用JS写的一个例子,在菜单栏上选中 未命名.JPG ——> 未命名2.JPG——> 未命名3.JPG ,输入如下代码:

45.JPG
该代码为对象添加了一个在Z轴方向上的初始速度,如果在没有其他外力的作用下,物体将一直沿着Z轴方向以5的速度运动。并且当您将这段代码拖拽给一个物体对象后,它的这个初始速度可以作为一个接口在它的属性面板中进行修改。如图5.2所示:
46.JPG
图5.2
除了数字作为接口外,接口还可以是对象,例如下面用JS写的一个例子,在菜单栏上选中 未命名.JPG ——> 未命名2.JPG ——> 未命名3.JPG ,输入如下代码:
47.JPG
您可以将这段代码拖拽给Hierarchy【层次清单栏】中任意一个对象,因为它在这里定义了一个Transform类接口对象cubeGO,所以它几乎与拖拽的对象无关。拖拽成功之后来到该物体的属性面板中,您可以看到这样一个属性卷展栏 48.JPG,cubeGO的后面有个很明显未定义对象填写栏 49.JPG ,然后我们把想要使之运动的物体拖拽到这个上面来,当我们运行游戏时,只要按下“G”键就可以看到被拖拽的物体作为“cubeGO”的指代对象,朝着Z轴方向运动了。

Unity3D中的C#Script编程的注意事项

也许您在学习Unity3D之前,已经是一位C#的编程高手了。但在Unity3D中的C#并不像真正的C#那般强大,在Unity3D的C#中必须全部继承自MonoBehaviour。下面为一段C#Script的完整代码:
1.JPG
除此之外它不支持空间命名,但官方说他们很有可能会在以后的版本中支持这一功能。
在Unity3D中,JavaScript和C#Script的编程效果近乎一样。只是为了不同程序爱好者设立了不同的编程模式。并且JavaScript所编写的代码对象可以和C#Script编写的代码对象交叉使用,并不发生任何冲突。

修改MonoDevelop编辑器为Unity3D的默认编辑器

通常情况下Unity3D默认的编辑器都是“UniSciTE”,它用起来十分轻巧快捷,就像记事本一样。
但如果要开发一些大型的项目, 显然“UniSciTE”简单的功能就不足以支撑它的工作了。但如果您每次在编辑脚本的时候,都去用“MonoDevelop”一个个的打开,又会显得很 麻烦。所以我们就要在Unity3D中做一些设置,让“MonoDevelop”成为默认的脚本编辑器。具体的步骤是:在菜单栏中找到 2.JPG ——> 3.JPG ,在弹出的 未命名.JPG 对话框中找到 4.JPG 并将它后面的下拉框选中为 5.JPG ,浏览到我们“MonoDevelop”可执行文件存放的地方。这个路径一般都和您的Unity3D文件夹在一起。
设置好之后,重新再Unity3D中点选脚本文件,就会发现已经能用“MonoDevelop”软件打开了,但一次打开的时候会稍显慢一点,因为“MonoDevelop”需要加载很多东西。
当然,如果您是一个C#和Visual Studio忠实的编程爱好者,您也可以用同样的方法来设置Visual Studio软件的路径,让Visual Studio成为您Unity3D脚本的默认编辑器。


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weini_xiong/article/details/24603519

智能推荐

ISO 14443 Type A卡的交互过程_杨江的博客-程序员信息网

sent REQA and received ATQA.I sent SEL without UID and received UID.I sent SEL with UID and received SAK=08.R: 26                                    => Welcome (REQA) (or use WUPA = 0x52)T: 44  03

给你的Potplayer设置老板键_自渡2021的博客-程序员信息网

PotPlayer是KMPlayer的原制作者进入Daum公司后的新一代作品,它具有强大内置解码,是最为常用的播放器之一。可遗憾的是其默认的快捷键设置中并不具备有老板键功能,这给某些上班族带来了些许不便。这里就来教大家怎么给你的PotPlayer设置老板键。工具/原料 PotPlayer播放器 方法/步骤 1 打开你的PotPlayer,右键,选择〖参数设置〗,或按F5弹出参数设置对话框,如下图所示: 2 在弹出的设置对话框中,点开〖基础〗结点,选..

centos7的mysql登录_HELLO! WORLD;的博客-程序员信息网_centos7 登录mysql

安装完mysql后会有个临时密码去日志查看,但是查看登录修改密后还是不行ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes)于是 1,停止mysql服务systemctl stop mysqld 2,修改配置文件无密码登录 vi /etc/my.cn...

Vue el-date-picker 日期组件的使用_JhonXie的博客-程序员信息网

一:显示年月<el-date-picker v-model="selectMonth" type="month" placeholder="选择月" @change="jobSearch" value-format="yyyy-MM"></el-date-picker>js代码:<script>export default {...

做成才还是做许三多——反思程序员职场生涯规划_mingxunzh的博客-程序员信息网

一部《士兵突击》让众多的中国电视观众重新燃起了对国产电视剧的信心,最让我震撼的不是它的高收视率,不是饰演许三多的王宝强的火爆,而是我成天捧着韩国泡沫剧看的老婆,居然把这样一部中国制作的没有男女关系的军事题材连续剧看了三遍!前两年韩国拍了个女版药匣子大长今着实风靡了不少中国同胞,这次,咱终于出了这口鸟气,也让俺对中国导演又有了信心。 记得有一期《程序员》杂志,一个哥们借用

Idea中使用git 命令窗口__星曦的博客-程序员信息网_idea git 命令窗口

step1 依次打开idea->file->tools->Terminal 在shell path 选择git安装目录bin中的bash.exe,就把idea默认的命令窗口切换为了git命令窗口 step2 如果使用过程中碰见中文乱码问题,检查自己电脑环境下git命令行窗口中文是否乱码,如果本地中文没有乱码,idea下中文乱码。 解决办法如下: 找到 自己安装目...

随便推点

微信小程序--(智障机器人聊天)_一心萝卜的博客-程序员信息网

本着一贯以练习项目带动学习的方式,近两天入坑微信小程序。先是练手一个智障聊天机器人,我使用了免费的青云客api青云客:http://api.qingyunke.com/准备工作:1.注册微信小程序2.准备微信开发者工具,版本根据个人喜好(这里下载稳定版)3.没接触过微信小程序的小伙伴还是要先大概看下开发者文档。(结构和语法还是要了解的)开始搭建项目:1.新建一个微信小程...

阿里acp认证所需具备的知识有哪些_qq_42667516的博客-程序员信息网

了让我们更好的立足于社会,我们可能需要考取一些证书,才能更好的发展下去,但是有些考取的证书是有时效性的,阿里acp认证所需具备的知识有哪些?小编下面道来阿里acp认证所需具备的知识有哪些1、熟悉阿里云云计算相关产品的基本概念,包括云服务器ECS、负载均衡SLB、弹性伸缩(Auto Scaling)、对象存储OSS、内容分发网络CDN、专有网络VPC、云盾和云监控。2、了解阿里云云计算相关产品的主要应用场景及组合使用的应用场景。3、掌握阿里云云计算的相关产品的基本操作,包括开通、创建、配.

java中静态块与非静态块以及自由块与构造函数执行顺序分析_陌陌天使的博客-程序员信息网

 首先,让我们用一个简单的程序来引入主题:***********************程序*********************package cn.kml.forserver20130730;/** * 定义一个用于测试自由块以及构造器执行顺序的父类 * @author 柯美玲 QQ:794950040 */public class Detail{...

libjsqlite-spatialite-android下载与使用_yGIS的博客-程序员信息网

1.下载从github上面下载libjsqlite-spatialite-android并解压,进入到archive目录。2.解压20190707.libspatialite-5.0.0.ta目录如下图所示的lib目录3.android项目中配置3.1在项目app,下面创建lib文件夹,不是src目录下的jniLibs目录,否是会与其他第三方一起使用报错。3.2配置jni支持。4.JAVA调用(需要使用spatialite-android-libra.

android: 高德地图_weixin_33943347的博客-程序员信息网

分为地图,定位,搜索(我还没做导航功能)建议采用gradle方式集成添加依赖在project/build.gradle文件下添加jcenter的仓库地址allprojects { repositories { jcenter() // 或者 mavenCentral() } }在app/buil...

matlab坐标轴axes显示问题_tianwenzhe00的博客-程序员信息网

有时一些造成坐标轴或界面中全部坐标轴的显示颜色和3D旋转设置有问题,这些问题不好排查。所以在指定特定坐标轴的颜色、旋转等属性时,一定要指明坐标轴。如:    rotate3d(handles.axes3D,'on');   %指定坐标轴handles.axes3D可以旋转,不能简单写为rotate3d on;          colormap(handles.axes3D,'jet');

推荐文章

热门文章

相关标签