Unity3D实践系列03,使用Visual Studio编写脚本与调试
2015-06-19 10:20
846 查看
在Unity3D中,只有把脚本赋予Scene中的GameObject,脚本才会得以执行。添加Camera类型的GameObject。Unity3D默认使用"MonoDevelop"编辑器,这里,我想使用Visual Studio作为编辑器。依次点击"Edit","Preferences","External Tools",在"External Script Editor"项下选择"Visual Studio"作为编辑器。在"Project"窗口下的"Asserts"中,创建名称为"_MyScripts"的文件夹。一旦创建名称以下划线开头的文件夹,该文件夹将排在默认文件夹的上方。开始运行时执行脚本右键"_MyScripts"文件夹,点击"Create"中的"C# Script",取名为"HelloWorld"。双击"HelloWorld"类文件,将在"Visual Studio"中打开此文件。在Visual Studio中编写如下:
using UnityEngine;
using System.Collections;
public class HelloWorld : MonoBehaviour {
// Use this for initialization
void Start () {
print("Hello World");
}
// Update is called once per frame
void Update () {
}
}保存。如果在Unity3D软件界面中,暂没有"Console"窗口,依次点击"Window"菜单下的"Console",并把"Console"窗口移动至"Game"窗口的右侧。此时,点击Unity3D软件上的播放按钮,"Console"窗口还没有显示任何信息。因为,现在还没有把脚本赋予给Scene中的GameObject。点击"Hierarchy"窗口中的"Camera",随之"Inspector"窗口出现所有有关Camera的信息。把"HelloWorld"这个类文件拖动到Camera对应的"Inspector"窗口的最下方,再次运行,可以看到脚本信息生效。在Unity3D中,还有一种方法可以在控制台输出调试信息。那就是Debug.Log方法。修改HelloWorld类如下:
using UnityEngine;
using System.Collections;
public class HelloWorld : MonoBehaviour {
// Use this for initialization
void Start () {
print("Hello World");
Debug.Log("Hello World from Log");
}
// Update is called once per frame
void Update () {
}
}保存。先清空控制台内的调试信息。再次运行,可以看到通过Debug.Log方法生成的调试信息生效。当然Debug还有其它静态方法,比如Debug.LogWarning, Debug.LogError,等等。每过一帧执行脚本在Update方法中,游戏每经过一帧都会执行这里的方法。修改HelloWorld类文件如下:
using UnityEngine;
using System.Collections;
public class HelloWorld : MonoBehaviour {
// Use this for initialization
void Start () {
//print("Hello World");
//Debug.Log("Hello World from Log");
}
// Update is called once per frame
void Update () {
print("Hello World");
}
}保存。运行,看到print("Hello World")被执行了很多次。
相关文章推荐
- 【Unity快速实现小功能】声音控制三部曲之(三)—— 声音、音效开关以及音量大小控制
- 【Unity快速实现小功能】声音控制三部曲之(二)—— 音效与背景音乐的叠加及控制
- 【猫猫的Unity Shader之旅】之Lambert光照
- 在编写unity各项功能的时候出现一些编码无误却不能执行的问题
- 【Unity3d】在Unity3d中调用外部程序及批处理文件,写自动化编译脚本需要注意的地方
- 【Unity3d】如何解决错误:A script behaviour has a different serialization layout when loading
- Unity3D之协程(Coroutines & Yield )
- Unity教程之手把手教你实现弹框
- Unity3D:NGUI Srollview子对象中有Button时,点击不能滚动
- 在桌面版 Ubuntu 中安装 Unity Tweak Tool
- Unity--ngui的UIEventTrigger使用
- unity3d Awake和 Start 区别
- 这几天在搞UNITY3D,感觉回到了AS2
- unity www读取本地视频文件和外部视频文件 播放视频动画和视频声音
- Unity中基于RPC机制实现摄像头视频传输
- UNITY与HTML通讯
- Unity3D实践系列02,查看Scene窗口物体
- Unity学习疑问记录之触屏
- Unity压缩图片
- Unity 5光照贴图烘焙