在网页中交互unity3d

原创 2013年12月05日 11:19:00

1、在unity3d中调用网页js函数

       如果在html中有脚本函数,则在unity3d中我们可以使用Application.ExternalCall调用js函数,改方法只适合在web3D环境下使用。

该方法支持基本类型的传递和数组传递,任何类型都会转换成字符串类型使用。


例子代码

        Application.ExternalCall("SayHello","hello world");    //调用SayHello,传递一个字符串


2、在网页脚本中调用unity3d函数

        <script type="text/javascript">
        <!--
             var unityObjectUrl = "http://wp-china.unity3d.com/download_webplayer-3.x/3.0/uo/UnityObject2.js";
             if (document.location.protocol == 'https:')
             unityObjectUrl = unityObjectUrl.replace("http://", "https://ssl-");
             document.write('<script type="text\/javascript" src="' + unityObjectUrl + '"><\/script>');
        -->
        </script>


<script type="text/javascript">
        <!--
            var config = {
                width: 960,
                height: 600,
                params: { enableDebugging:"0", disableContextMenu: true,            
                logoimage: "__ROOT__/3D/3D_Login.png",
             progressbarimage: "__ROOT__/3D/front.png",
             progressframeimage: "__ROOT__/3D/black.png",
         baseDownloadUrl: "http://wp-china.unity3d.com/download_webplayer-3.x/",
         autoupdateURL : "http://wp-china.unity3d.com/autodownload_webplugin-3.x",
         autoupdateURLSignature : "02a5f78b3066d7d31fb063186a2eec36fdf1205d49c6b0808eb37ef85ed9902e2e1904d87f599238a802ba0abbfe4f18aa82dd2eb5171e99ba839a5cea9e6ea9c1be9eae505937b56fe4a5fd254cffe08958d961f42d970136b5eab9e6c2cd08b81bc8a11e5ade57dc63dcfef2248d89689e4d4feed3cdfe7374c848fd57ebd4"
                }
                
            };
            var u = new UnityObject2(config);

            jQuery(function() {

                var $missingScreen = jQuery("#unityPlayer").find(".missing");
                var $brokenScreen = jQuery("#unityPlayer").find(".broken");
                $missingScreen.hide();
                $brokenScreen.hide();
                
                u.observeProgress(function (progress) {
                    switch(progress.pluginStatus) {
                        case "broken":
                            $brokenScreen.find("a").click(function (e) {
                                e.stopPropagation();
                                e.preventDefault();
                                u.installPlugin();
                                return false;
                            });
                            $brokenScreen.show();
                        break;
                        case "missing":
                            $missingScreen.find("a").click(function (e) {
                                e.stopPropagation();
                                e.preventDefault();
                                u.installPlugin();
                                return false;
                            });
                            $missingScreen.show();
                        break;
                        case "installed":
                            $missingScreen.remove();
                        break;
                        case "first":
                        break;
                    }
                });
                u.initPlugin(jQuery("#unityPlayer")[0], "__ROOT__/3D/myUnity.unity3d");
            });
        -->


function State(msg) {
            
                if (msg == "ok") {
                    
                    var result;
                    
                    if(username==""||userpass=="")
                        result = "";
                    else
                        result = username + "|" + userpass;
                    var senceresult = oldSenceName + "|" + SenceName;
                    var page = myPage;

                    //alert("用户名密码:" + result + "场景:" + senceresult + "来源" +page)
                    u.getUnity().SendMessage("Login", "LoginSenceFromWebpage", senceresult);
                    u.getUnity().SendMessage("Login", "LoginFromWebpage", result);
                    u.getUnity().SendMessage("Login", "LoginYesOrNoFromWebpage", page);
                }
            }
        </script>


<div id="unityPlayer">
            <div class="missing"> <a href="http://unity3d.com/webplayer/" title="Unity Web Player. Install now!"> <img alt="Unity Web Player. Install now!" src="http://wp-china.unity3d.com/installation/getunity.png" width="193" height="63" /> </a>
            </div>
            <div class="broken"> <a href="http://unity3d.com/webplayer/" title="Unity Web Player. Install now! Restart your browser after install."> <img alt="Unity Web Player. Install now! Restart your browser after install." src="http://wp-china.unity3d.com/installation/getunityrestart.png" width="193" height="63" /> </a>
            </div>
      </div>

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Unity3D和网页数据交互的基本原理

简介: 1、Unity3D的游戏引擎是和编辑器集成在一起的,所有它也是一个制作/开发平台。 2、Unity3D是使用JavaScript、C#作为核心脚本语言来驱动事个游戏引擎。 ...

unity3d和网页数据交互

介绍:  1. u3d是一个3D游戏引擎由于和编辑器集成在一起 所以也可以理解为一个制作/开发平台 2. u3d使用javascript C#作为核心脚本语言 来驱动整个游戏引擎  3. 平台可...

unity3D与网页的交互

由于项目需要,要求用unity来展示三维场景,并在三维中能够方便的查询数据库等。一开始尝试在unity中直接连接数据库,当时连的xml,然而每次发布成网页后都会出现路径找不到等问题,所以迫不得已采用了...

Unity3D和网页数据交互的基本原理

简介: 1、Unity3D的游戏引擎是和编辑器集成在一起的,所有它也是一个制作/开发平台。 2、Unity3D是使用JavaScript、C#作为核心脚本语言来驱动事个游戏引擎。 3、平台可以发布Ex...

unity3d和网页数据交互的基本原理

unity3d和网页数据交互的基本原理 介绍:  1. u3d是一个3D游戏引擎由于和编辑器集成在一起 所以也可以理解为一个制作/开发平台 2. u3d使用javascript C#作为...

unity3D与网页的交互

由于项目需要,要求用unity来展示三维场景,并在三维中能够方便的查询数据库等。一开始尝试在unity中直接连接数据库,当时连的xml,然而每次发布成网页后都会出现路径找不到等问题,所以迫不得已采用了...

Unity3D和网页数据交互的基本原理

简介: 1、Unity3D的游戏引擎是和编辑器集成在一起的,所有它也是一个制作/开发平台。 2、Unity3D是使用JavaScript、C#作为核心脚本语言来驱动事个游戏引擎。 3、平台可以发...

Unity3D游戏及交互设计

  • 2016-09-15 15:43
  • 20.49MB
  • 下载

Unity3d与iOS交互开发——接入平台SDK必备技能

开发手机游戏都知道,你要接入各种平台的SDK。那就需要Unity3d与iOS中Objective-C的函数有交互,所以你就需要用到如下内容: 一、Unity3d  To  iOS: 1、创建一个C#文...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)