在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")被执行了很多次。

Unity3D实践系列03,使用Visual Studio编写脚本与调试的更多相关文章

  1. Unity3D实践系列04, 脚本的生命周期

    Unity3D脚本生命周期是指从脚本的最初唤醒到脚本最终销毁的整个过程.生命周期的各个方法被封装到了MonoBehaviour类中.具体来说如下: 1.In Editor Mode 编辑模式 当在编辑 ...

  2. Unity3D开发必备神器(Visual Studio Tools for Unity)

    Unity3D开发必备神器(Visual Studio Tools for Unity) 开发Unity3D程序你用的什么IDE呢? 1.MonoDevelop 2.VS 可能你的回答是这样的,我用的 ...

  3. Visual Studio 2017 通过SSH 调试Linux 上.NET Core

    Visual Studio 2017 通过SSH 调试Linux 上.NET Core 应用程序. 本文环境 开发环境:Win10 x64 Visual Studio 2017 部署环境:Ubuntu ...

  4. 2.[WP Developer体验Andriod开发]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  5. 2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  6. Visual Studio 2010无法启动调试

    现象:Visual Studio 2010点击调试或者按F5.Visual Studio 2010没有什么反应,但又不报错. 而点击运行不调试(Ctrl+F5)却没有问题. 解决的方法:打开项目属性, ...

  7. Unity3D实践系列07,组件的启用或禁用开关,物体的的可见或不可见开关,以及相应事件

    创建一个Unity项目. 在"Project"窗口中,在"Asserts"中,添加"_MyScene"文件夹. 点击"File&q ...

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

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

  9. 用Xamarin和Visual Studio编写iOS App

    一说开发 iOS app,你立马就会想到苹果的开发语言 Objective C/Swift 和 Xcode.但是,这并不是唯一的选择,我们完全可以使用别的语言和框架. 一种主流的替换方案是 Xamar ...

随机推荐

  1. springboot创建一个可执行的jar

    让我们通过创建一个完全自包含的可执行jar文件来结束我们的示例,该jar文件可以在生产环境运行.可执行jars(有时候被成为胖jars "fat jars")是包含你的编译后的类和 ...

  2. selenium用jquery改变元素属性

    一.jQuery 语法 jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作. 1.基础语法: $(selector).action() 选择符(selector)即," ...

  3. String,StringBuffer和StringBuilder的区别

    (1)String类的API概述是这样的:String类代表字符串,Java程序中的所有字符串字面值都作为此类的实例体现.字符串是常量,它们的值在创建之后不能更改.可见,String是对象且为不可变对 ...

  4. vue.js 解决空格报错!!!

    当我们初入vue.js的时候.使用cli脚手架快速创建项目的时候: 如果语法格式错误(这里主要指的是:空格多少引起的问题)!! 找到  webpack.base.config.js文件注释掉下面的东西 ...

  5. Connect to DB2 database in eclipse via jdbc

    https://stackoverflow.com/questions/23801841/connect-to-db2-database-in-eclipse-via-jdbc

  6. Linux 下crontab 详解转

    http://yaksayoo.blog.51cto.com/510938/162062 Linux计划任务工具cron用法详解 linux下大名鼎鼎的计划任务工具crontab的使用介绍baidu. ...

  7. 【AtCoder】AGC022

    A - Diverse Word 不到26位就加上一个最小的 到26位了就搜一下,最多回溯就一次,所以复杂度不大 #include <iostream> #include <cstd ...

  8. Windows下调用caffe的matlab接口

    一.编译caffe的matlab接口 在我的这篇博客windows-caffe配置已经说了怎么编译了,这里就略过了. 编译成功后,会得到如下图所示文件: matlab接口就在matcaffe文件夹里. ...

  9. Java8 Lambda 之 Collection Stream

    Lambda 之 Collection Stream Collection.stream() 测试实体类 class Demo { private Long id; private String na ...

  10. Eclipse中从svn中检出maven项目

    相信很多初学者都遇到过Eclipse中从SVN检出Maven项目之后看到的目录结构并不是Maven目录结构:或者只能先用SVN将Maven项目签入到本地,然后再用Eclipse导入Maven项目,但是 ...