Unity基础 C# 游戏间物体间的访问

脚本语言:C#

1、在Unity工程中新建两个物体:Cube和Sphere

2、分别为Cube和Sphere添加脚本CubeScript和SphereScript:

在SphereScript这两个定义一个函数DoSomething(),脚本具体代码如下:

using UnityEngine;
using System.Collections;

public class SphereScript : MonoBehaviour {

    public int radius = 5;

    // Use this for initialization
    void Start () {
    }

    // Update is called once per frame
    void Update () {
    }

    public void DoSomething(){
        Debug.Log("Hello ~");
    }
}

3、在CubeScript脚本中实现对物体Sphere的访问,使它的颜色变为红色,和脚本SphereScript中DoSomething函数的访问,具体代码如下:

using UnityEngine;
using System.Collections;

public class CubeScript : MonoBehaviour {

    // Use this for initialization
    void Start () {

        SphereScript a = null;
        // 获取SphereScript脚本
        a = GameObject.Find("Sphere").GetComponent<SphereScript>();
        Debug.Log ("SphereScript‘s a = " + a.radius);
        Debug.Log("SphereScript‘s function Domething :");
        //调用SphereScript脚本的函数
        a.DoSomething ();
    }

    // Update is called once per frame
    void Update () {
        GameObject target = null;
        //访问Sphere引用物体
        target = GameObject.Find ("Sphere");
        //使球体颜色变为红色
        target.renderer.material.color = Color.red;
    }
}

4、运行效果:

Unity基础 C# 游戏间物体间的访问

时间: 2024-10-19 19:11:22

Unity基础 C# 游戏间物体间的访问的相关文章

unity基础开发----unity游戏速度更快的简易检查表

让游戏速度更快的简易检查表 保持顶点数在 200K 下面,针对 PC 时每帧应为 3M,主要取决于目标 GPU. 若使用内置着色器,请在移动 (Mobile) 或未点亮 (Unlit) 的类别中选择.它们对非移动平台相同有效,可是是更复杂的着色器的简化和限制版本号. 每一个场景中不同材质的数量尽可能少 - 不同对象之间尽可能共享相同的材质. 在非移动对象上设置静态 (Static) 属性,同意静态批处理 (static batching) 等内部优化. 切勿在不必要的情况下使用像素灯 - 选择仅

Java基础教程:多线程基础(2)——线程间的通信

Java基础教程:多线程基础(2)--线程间的通信 使线程间进行通信后,系统之间的交互性会更强大,在大大提高CPU利用率的同时还会使程序员对各线程任务在处理的过程中进行有效的把控与监督. 线程间的通信 思维导图 等待中 等待/通知机制 不使用等待/通知机制 我们可以使用使用sleep()与 whle(true) 死循环来实现多个线程间的通信. 虽然两个线程实现了通信,但是线程B必须不断的通过while语句轮训机制来检测某一个条件,这样会浪费CPU资源. 如果轮询间隔较小,更浪费时间间隔.如果轮训

Unity基础 Time的使用

脚本语言:C# 1.deltatime: deltatime它表示距上一次调用Update或FixedUpdate所用的时间,调用deltatime可以使物体的旋转以一种恒定的速度来运行,而不受帧速率的控制或计算机性能的影响. 2.time变量的使用: 表示自游戏开始以来所经历的时间. 3.实例: 创建一个脚本TimeShow,添加到主摄像机物体Main Camera中,脚本代码如下: using UnityEngine; using System.Collections; public cla

Unity基础 随机数的使用

脚本语言:C# 一个比较常用的例子是游戏中的主角碰到场景中的NPC时,NPC会随机做出反应,例如有50%几率来友好的致敬,25%几率走开,20%几率反身攻击和%%的几率赠送礼物. 创建一个NPCTest脚本,用于模拟NPC动作: using UnityEngine; using System.Collections; public class NPCTest : MonoBehaviour { //NPC动作几率 float[] probArray = {0.5f , 0.25f , 0.2f

Unity 基础

Unity 基础是unity入门的关键.他将讲解Unity的界面, 菜单项,使用资源,创设场景,并发布版本. 当你读完这段,你将理解unity是怎么工作的,如何有效地使用它,并且完成一个基本的游戏. 学习界面 花点时间在编辑器界面上并且熟悉他,在unity视图中主界面由几个面板组成 Toolbar:工具栏 Scene:场景视图 Hierarchy:层级视图(当前场景的对象) Project:项目视图 Inspector:属性窗口(检查窗口) 原文 This section is your key

零基础unity3d游戏开发系列目录

零基础Unity3D游戏开发系列 第一章:游戏开发与游戏引擎(一) 零基础Unity3D游戏开发系列 第一章:游戏开发与游戏引擎(二) 零基础Unity3D游戏开发系列 第二章:Unity3D概览(一)界面... 零基础Unity3D游戏开发系列 第二章:Unity3D概览(一)创建与打开项目I 零基础unity3d游戏开发系列 第二章:unity3d概览(一)创建与打开项目II 零基础Unity3D游戏开发系列 第二章:Unity3D概览(一)创建与打开项目III 零基础Unity3D游戏开发

(转)CocosCreator零基础制作游戏《极限跳跃》一、游戏分析

CocosCreator零基础制作游戏<极限跳跃>一.游戏分析 无意中发现了小游戏<极限跳跃>感觉挺有意思的,正好这段时间和朋友讨论准备用js还是unity做小游戏,初定用js,使用CocosCreator,于是我拿这款游戏练手,准备一天时间做出来,结果一天只完成了四分之三,后面又用了几个晚上,加碰撞检测,加声音音效..把这游戏的制作记录下. 1.吐槽加游戏分析 http://www.byjth.com/CocosCreator/66.html 2.制作游戏开始场景 http://

Unity基础 用C#脚本读取JSON文件数据

读取JSON文件数据网上有很多方法吗,这里采用SimpleJSON,关于SimpleJSON的介绍参考以下链接:http://wiki.unity3d.com/index.php/SimpleJSON,使用之前要先导入SimpleJSON的相关文件. JSON文件名:achieve.json,文件内容: { "30002":{"achieve_id":30002,"achieve_name":"连胜","achiev

类似Unity的全新游戏引擎Godot

http://www.godotengine.org/wp/ Godot是一个全新开发的游戏引擎,其功能集类似知名的跨平台游戏引擎Unity,可用于开发PC.主机.移动和Web游戏.开发者声称引 擎的2D和动画支持要强于Unity,表示在功能和特性上没有其它开源游戏引擎能相媲美.Godot引擎内置了类似Unity的编辑器,GUI工具 包,2D/3D物理支持,支持OpenGL ES 2.0 功能集的3D渲染器,易于学习的语言和API,支持用ASM.js或Google Native Client输出