`
tank2308635
  • 浏览: 191581 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

unity中js脚本与c#脚本互相调用

 
阅读更多

test1.js

  1. function OnGUI()  
  2. {   
  3. if(GUI.Button(Rect(25,25,100,30),"JS Call CS" ))  
  4. {  
  5. var c = gameObject.GetComponent("test2");  
  6. c.PrintTest();  
  7. }  
  8. }  
  9. function testPrint()  
  10. {  
  11. print("CS Call JS");  
  12. }  

 

test2.cs

  1. using UnityEngine;  
  2. using System.Collections;  
  3. public class test2: MonoBehaviour {  
  4. void OnGUI()  
  5. {  
  6. if(GUI.Button(new Rect(25,70,100,30), "CS Call JS"))  
  7. {  
  8. test1 c = (test1)gameObject.GetComponent("test1");  
  9. c.testPrint();  
  10. }  
  11. }  
  12. void PrintTest()  
  13. {  
  14. print("JS Call CS");  
  15. }  
  16. }  

這里必須要注意的是JS文件必須是在 "StandardAssets"、 "Pro StandardAssets“和 "Plugins"這三個目錄中的任何一個里,而CS文件不能與JS文件在一個目錄中。原因是,這三個目錄里的腳本被最先編譯,"Editor"目錄里的稍后編譯,其他的腳本最后編譯。如果在一個目錄下則CS文件無法讀取JS里的方法,也就無法編譯通過了。而JS調用CS方法則無此限制。

分享到:
评论

相关推荐

    Unity 3d C#和Javascript脚本互相调用 解决方案

    在Unity 3D开发环境中,有时我们可能需要在C#脚本和JavaScript脚本之间进行交互,例如在C#中触发JavaScript函数或者反之。要实现这种互调用,需要了解Unity的编译过程以及特定的目录结构规则。下面将详细讨论如何在...

    unity3d中脚本调用

    本文将详细介绍Unity3D中不同语言(JavaScript与C#)之间如何进行脚本调用,并通过具体的示例来加深理解。 #### 一、Unity3D脚本间通信的重要性 在Unity3D项目开发中,通常会涉及多个脚本协同工作的情况。例如,一...

    Unity3D C#脚本中文教程

    本教程主要介绍了Unity3D中C#脚本的基础使用方法,包括脚本的基本结构、常用函数、时间控制、物体操作以及组件访问等方面。掌握这些基础知识可以帮助开发者更好地理解和运用Unity3D中的脚本功能,为后续更复杂的游戏...

    Unity3D脚本:如何调用更改其他脚本中的变量2

    在Unity3D游戏开发中,使用C#编写脚本是常见的做法。在多个脚本之间共享数据或控制其他脚本中的变量是常见的需求。本文将详细介绍如何在Unity3D中调用并更改其他脚本中的变量,以实现不同组件间的交互。 首先,我们...

    解决Unity不能调用shell脚本传递参数的问题

    在给出的Unity脚本示例中,可以看到如下关键代码: ```csharp [MenuItem("Tools/1")] static void tools() { string shell = Application.dataPath + "/shell.sh"; string arg1 = "unity"; string arg2 = ...

    unity3D C#脚本中文教程

    Unity3D C#脚本中文教程主要针对初学者,内容涵盖了Unity3D中的C#脚本编写基础、常用操作、事件处理、时间控制以及如何访问和操作游戏对象组件等方面的知识点。 首先,Unity3D脚本主要通过将自定义的脚本对象附加到...

    Unity3D C#脚本中文教程.rar

    - **MonoBehaviours**:这是Unity中C#脚本的核心,每个脚本都是一个继承自MonoBehaviour的类。 - **生命周期方法**:如Awake、Start、Update、LateUpdate等,这些方法在游戏对象的不同时间点被调用。 - **事件与...

    Unity3D中文脚本

    标题“Unity3D中文脚本”表明本资源是一套教程,旨在帮助学习者掌握Unity游戏开发中的脚本编写技能,特别强调使用javascript语言进行Unity脚本编程。描述中提到的“对javascript代码能够详细的介绍”意味着教程将从...

    WebToUnity2020.1(网页通过JS调用unity中的函数)

    4. **Unity调用JavaScript**:在Unity的C#脚本中,可以使用Application.ExternalCall()方法来调用JavaScript函数。该函数同样需要传递函数名和参数。例如,`Application.ExternalCall("JavaScriptFunctionName", arg...

    Unity3D脚本:脚本调用1

    在C#中,如果你想从一个C#脚本调用另一个C#脚本的变量或方法,你需要确保被调用的变量是`static`且`public`的。这样,你就可以在另一个脚本中直接通过`ScriptName.StaticVariable`来访问这个变量。同样,对于静态...

    Unity3D脚本之间互相调用2

    在Unity3D中,脚本是使用C#或JavaScript编写的代码,用于实现游戏逻辑和交互。 Unity3D脚本可以添加到游戏对象上,并且可以与其他脚本进行交互。 二、Unity3D脚本之间的调用方式 Unity3D脚本之间可以通过多种方式...

    Unity 3D脚本编程-使用C#语言开发跨平台游戏1

    另外,Unity的UI系统(Unity UI或UGUI)用于创建用户界面,包括按钮、文本、图像等元素,可以与C#脚本紧密结合,实现动态交互。 最后,持续学习和实践是提升Unity开发技能的关键。通过阅读官方文档、参与社区讨论、...

    unity js调用cs 和cs调用js demo

    这个"unity js调用cs 和cs调用js demo"是关于在Unity中如何在JavaScript与C#脚本之间进行交互的一个示例。理解这种交互机制对于Unity开发来说至关重要,因为这能帮助开发者充分利用这两种语言的优点。 在Unity中,...

    Unity 脚本示例_C#_代码_下载

    1. 类定义:Unity脚本通常以`public class`开头,类名应与脚本文件名相同。 2. 组件方法:如`Start()`、`Update()`、`OnCollisionEnter()`等,它们在特定时间或事件发生时被调用。 3. 公共变量:使用`public`关键字...

    Unity C#与JS互调.rar

    Unity引擎是一款广泛应用于游戏开发的跨平台工具,它支持多种编程语言,包括C#和JavaScript(Unity中的JS称为UnityScript,但与Web开发中的JavaScript有较大差异)。在Unity项目中,有时开发者可能需要在C#脚本和...

    unity动态添加和删除脚本

    给定的部分内容中的代码展示了如何使用JavaScript(实际上是在Unity中使用的旧式JavaScript语法)动态添加脚本组件。这段代码首先定义了一个`GameObject`类型的变量`obj`和一个`GUISkin`类型的变量`myskin`,然后在`...

    Unity与Js之间交互

    例如,如果我们有一个JavaScript函数叫做`jsFunction`,在Unity中调用它的代码如下: ```csharp #if UNITY_WEBGL && !UNITY_EDITOR WebGLInvoke WebGL = new WebGLInvoke(); WebGL.InvokeJS("jsFunction();"); ...

    unity多个物体间的脚本执行顺序

    在Unity中,每个GameObject都可以挂载一个或多个脚本组件(Script Component),这些脚本组件包含了不同的C#脚本。Unity按照特定的规则来决定这些脚本的Update方法(以及其他与时间相关的回调函数)的执行顺序。主要...

    unity 脚本学习资料

    此外,Unity中的JavaScript还可以与其他脚本进行通信,通过公开变量(public)和函数(function)来进行数据交换和功能调用。例如,你可以在一个脚本中定义一个公共变量,然后在另一个脚本中访问并修改这个变量的值...

Global site tag (gtag.js) - Google Analytics