经过上一篇的学习,我相信开发环境您已经搭好了,如果还没有搭好可以百度一下。

今天主要讲的有以下几点:

第一:Unity3D中的C#脚本与.net中的C#写法的区别

1.Unity3D C#脚本不支持命名空间.

2.Unity3D C#脚本初始化不要放到构造函数中,而是放到Start()方法中。

3.Unity3D C#脚本 get/set写法属性不被识别,直接public字段就能当属性用,private或者不写修饰符就是私有字段。

 

4.脚本中文问题:代码中有中文的话会有乱码问题。到资源管理器中打开项目的Assets文件夹(或点右键Show In Explorer),用unity3d目录下的Editor\Data\Tools\UniSciTE下的UniSciTE.exe打开cs文件,File→Encoding改为UTF-8 with BOM,敲个空格造成修改,然后保存即可(可以修改cs文件打开方式更简单)。最好一开始就修改编码,否则会很麻烦。

完整的代码:

第二:这里基本讲解一下当您打开一个脚本自带的两个函数Start、和Update的用法和意思

1.Start

  对于这个函数我想不用多讲,大家从字面意思就能理解,程序开始执行时调用的函数。上面提到Unity3D中初始化不能放在构造函数中要放到Start函数中。从某种意义上讲可以理解为Unity3D吧传统的构造函数用这里的Start来替换了(这里完全属于个人理解如果不理解不正确希望大神指出)。所以我们把Start理解为构造函数自然就容易理解为什么初始化要放到Start中了。这个函数主要用于对一些游戏资源的初始化用的。我相信这个函数大家容易理解,这里都不多讲了。重点看下面一个。

2.Update

  这个函数可以说是一个核心函数。这里先问一下?您知道什么是帧的概念吗?如果处理过视频、弄过ps、flash之类的做动态的视频或者动画的朋友可能对这个帧比较了解。我这里简单描述一下帧的概念。大家先回想一下很久以前的那种电影是怎么做的?

没错就是你看到的这样一张一张连接而成的,然后快速浏览每一张就形成了动画。我们现在看到的视频、Gif等等一些都是类这种电影的胶片一张一个图像一个图像拼接的,然后每秒播放不低于24张(为什么是24如果我没记错的话24是视觉什么的最低帧数低于这个就是放幻灯片了)就会形成动画。讲了这么多那什么是帧呢?帧就可以形象的理解为这电影胶卷的每一个图片。

我这里引用一下百度百科

帧——就是影像动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。 一帧就是一副静止的画面,连续的帧就形成动画,如电视图象等。

你这时就会问讲这么多废话,Update到底是怎么回事还没说呢?先别忙,如果您对帧这个概念不熟悉那么你对这个函数的理解就会还停留在.net中的事件驱动的那个机制。从字面理解Update就是刷新、更新的意思,那它刷新什么更新什么呢?我们用的Unity3d程序可以看作就是一个电影,当你一运行它,他就开始一帧一帧开始放映,没播放一帧就会调用一下这个Update函数。可能这里有点空洞,没关系大家先按自己当前理解的意思去做做练习,下一次会给大家一个实例来讲解一下咯函数。(为什么这里不讲我怕直接给例子先入为主了,当你按自己的理解去练习了才发下达不到效果,而后我再给出原因这样理解深刻一点)

跟我从零基础学习Unity3D开发--U3d脚本注意事项及两个基本函数的简单介绍的更多相关文章

  1. 跟我从零基础学习Unity3D开发--NGUI入门基础

    英雄联盟(撸啊撸) QQ飞车 魔兽世界等等相信大家都玩过游戏吧,玩过那UI知道是什么吧?UI可能说得有点专业的话那么游戏中那些属性面板例如: 现在对UI有一定认识了吧!回想一下您玩过的游戏就一定知道什 ...

  2. 跟我从零基础学习Unity3D开发--初识U3D

    首先声明,我也是才开始学,把自己学的记录下来也供一些想要学习的朋友参考,一起努力.希望大家能给我指点一下.切莫喷我. 什么是Unity3d呢? 百度百科------Unity是由Unity Techn ...

  3. 跟我从零基础学习Unity3D开发--Unity3D开发必备神器(Visual Studio Tools for Unity)

    开发Unity3D程序你用的什么IDE呢? 1.MonoDevelop 2.VS 可能你的回答是这样的,我用的vs写代码MonoDevelop来做调试.这时有同学就会反驳了傻X不知道用unityVS吗 ...

  4. 跟我从零基础学习Unity3D开发--资源打包篇(AssetBundle)

    好久没更新了,一直在加班敢项目进度.这里和关注我的博客的童鞋表示一下歉意!这里有我录的Unity3D从零开始的视频教程大家可以关注一下:http://www.imooc.com/view/555  视 ...

  5. [iOS]关于零基础学习iOS开发的学习方法总结

    关于零基础学习iOS开发的学习方法总结 最近很多零基础来参加蓝鸥培训的学生经常会问到一些学习方法的问题,就如下我自己见过的好的学习方法一起讨论一下. 蓝鸥iOS开发技术的学习路线图 程序员的主要工作是 ...

  6. 【零基础学习iOS开发】【转载】

    原文地址:http://www.cnblogs.com/mjios/archive/2013/04/24/3039357.html 本文目录 一.什么是iOS 二.主流手机操作系统 三.什么是iOS开 ...

  7. 李洪强iOS开发之【零基础学习iOS开发】【01-前言】01-开篇

    从今天开始,我就开始更新[零基础学习iOS开发]这个专题.不管你是否涉足过IT领域,也不管你是理科生还是文科生,只要你对iOS开发感兴趣,都可以来阅读此专题.我尽量以通俗易懂的语言,让每个人都能够看懂 ...

  8. 【零基础学习iOS开发】【01-前言】01-开篇

    本文目录 一.什么是iOS 二.主流手机操作系统 三.什么是iOS开发 四.学习iOS开发的目的 五.学习iOS开发的前提 从今天开始,我就开始更新[零基础学习iOS开发]这个专题.不管你是否涉足过I ...

  9. 零基础学习iOS开发

    零基础学习iOS开发不管你是否涉足过IT领域,只要你对iOS开发感兴趣,都可以阅读此专题. [零基础学习iOS开发][02-C语言]11-函数的声明和定义 摘要: 在上一讲中,简单介绍了函数的定义和使 ...

随机推荐

  1. JS学习笔记10之Math对象

    -->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.P ...

  2. IE8兼容模式设置

    设置---兼容性视图设置--添加此网站--在IE8中调试(防止调整IE内核后浏览器崩溃,360可通过设置极速模式-兼容模式  点击地址栏绿色图标)

  3. XcodeiOS模拟器安装相关

    模拟器下载 注意: Xcode 7 Beta 不支持 iOS 8.4 及之前的 SDK. 现在的Xcode 6.x 似乎只支持iOS 7.0及之后的版本,早期的模拟器运行时不支持新的CoreSimul ...

  4. 【代码笔记】iOS-向服务器传JSON数据的两种方式

    一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...

  5. 关于web页面性能测量指标与建议

    首先看一个图: 注:右图在我们工作中经常用到 我们专注的web性能指标有那些? 1.页面加载时间 从页面开始加载到页面onload事件触发的时间.一般来说onload触发代表着直接通过HTML引用的C ...

  6. JQuery,C#,sqlServer 实现无极限多级树形控件

    最近好忙,好长时间没有更新博客了.......... 先看效果图: 此控件利用了 JQuery 插件: treeview google直接搜索就可以找到,这里就不提供链接了. 下载下来的压缩包包括了源 ...

  7. C#的HTTP开发包 HttpLib

    HttpLib 可以用来简化在 C# 应用中异步的访问 Web 服务的操作.同时包含文件上传和访问网页的方法. 支持: GET POST Form Encoded Multipart File Upl ...

  8. yii2实战教程之第一个Yii程序

    之前考虑过要不要砍掉该章节,直接上手教你搭建简单的博客系统.出于实战基础加之自C语言的书籍出版以来,几乎所有的编程书籍都讲述了一个Hello World的例子作为开始.虽然我们仅仅是学习Yii2,但是 ...

  9. js自动完成

    源代码来自于: http://down.51cto.com/data/921955  我做了一下修改. 要做一个自动完成的功能,又不想依赖一大堆的js脚本库,我要的是定制的,代码尽可能简洁,方便修改和 ...

  10. #研发中间件介绍#定时任务调度与管理JobCenter

    郑昀 最后更新于2014/11/11 关键词:定时任务.调度.监控报警.Job.crontab.Java 本文档适用人员:研发员工   没有JobCenter时我们要面对的:   电商业务链条很长,业 ...