Unity 3D怎么与JavaScript语言结合起来实现交互效果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 3D怎么与JavaScript语言结合起来实现交互效果相关的知识,希望对你有一定的参考价值。

在U3D中怎么使用javascript代码,我知道一般与U3D结合的都是C#,但是这个没学过,不太懂,现在想问问广大的朋友U3D怎么与JavaScript结合使用,有专门关于U3D与JavaScript交互相关连的社区吗?还有就是JavaScript代码的引用要像C#那样子的开头吗,希望有大佬能给说说,非常感谢!

Unity的新版本已经放弃JS了,所以之后还是得慢慢往C#转吧,不然哪天Unity的旧版本不能用之后再转型就痛苦了。C#也没那么难学,到paws3d上看看就能入门了 参考技术A #include <reg52.h>

#define uint unsigned int

/* ********************************************* */
// 函数名称: delay()
// 函数功能:毫秒延时
/* ********************************************* */

void delay(uint z)

uint x,y;
for(x = 0; x < z; x++)
for(y = 0; y < 113; y++);


/* ***************************************************** */
// 函数名称:main()
// 函数功能:实现流水灯效果
// 入口参数:无
// 出口参数:无
/* ***************************************************** */

void main(void)

int i; //循环变量
while(1)

P2 = 0xff; //设定LED灯初始值
delay(1000);
for(i = 0;i < 8;i++)

P2 = P2 << 1; //移位、依次点亮
delay(1000); //延时

Unity 自动编译后启动Unity

Unity 自动编译后启动Unity

需求由来

  • 因为项目特别大所以关闭了Auto Refresh自动刷新
    • 防止代码还没写完Unity就自动加载
  • 每次写完代码都需要
    • 手动Ctrl+R刷新资源(耗时1分钟左右)
    • 手动运行Unity
    • 需要2个操作 中间容易出小差
  • 系统响应时间太长 效率很低

解决方案

  • 用代码刷新资源后立刻启动Unity

使用方式

  • 快捷键:Ctrl+Alt+R
  • 菜单栏:ZQFramwork/自动编译后启动Unity

源码

using UnityEditor;
using UnityEngine;

public class AutoCompilePlay : EditorWindow
{
    [MenuItem("ZQFramwork/自动编译后启动Unity %&r", false, 0)]
    public static void Open()
    {
        AutoCompilePlay me = GetWindow<AutoCompilePlay>();
        me.titleContent = new GUIContent("自动启动工具");
        me.minSize = new Vector2(200, 100);
        me.maxSize = me.minSize;

        EditorApplication.isPlaying = false;//停止运行
        AssetDatabase.Refresh();//刷新资源
    }

    //每秒10帧调用
    private void OnInspectorUpdate()
    {
        Repaint();//重绘
    }

    private void OnGUI()
    {
        EditorGUILayout.Space();
        EditorGUILayout.Space();
        EditorGUILayout.Space();
        EditorGUILayout.Space();
        EditorGUILayout.Space();

        if (EditorUtility.scriptCompilationFailed)
        {
            Debug.LogError("编译报错");
            Close();
            return;
        }

        if (EditorApplication.isCompiling)
        {
            EditorGUILayout.LabelField("正在编译");
            return;
        }

        if (Application.isPlaying == false)
        {
            EditorGUILayout.LabelField("正在启动");
            EditorApplication.isPlaying = true;
        }
        else if (Application.isPlaying == true)
        {
            Close();
        }
    }
}

以上是关于Unity 3D怎么与JavaScript语言结合起来实现交互效果的主要内容,如果未能解决你的问题,请参考以下文章

如何用unity3d编写javascript

unity3d5.4c盘满了怎么办

unity3d中shader cg程序的自发光怎么写

C++/JavaScript Unity3D 与 Java

unity怎么学

怎么规划一个零基础学习Unity3D的“方法”或者“流程”