如何将Unity 3D应用程序转换为Flash(* .swf)?

时间:2014-09-07 06:14:10

标签: unity3d flash

有一个文件扩展名是* .unity3d。如何将此文件转换为* .swf,我可以在自己的计算机上玩这个游戏?

1 个答案:

答案 0 :(得分:1)

.unity3d个文件来自Web Player builds

它们意味着嵌入在网页中,Unity3d Web Player插件在浏览器中运行它们。

.unity3d文件不打算打开,下载或编辑,而是用来保护专有资产(实际上我看到的只有.unity3d个文件的人没有匹配的项目文件的人是从网站中提取文件以供不允许的反编译的人。

从最新的开发周期开始,Unity3D确实支持Flash builds。但是这种支持是somewhat limited,并且它已经从许可证销售阵容中退出,并且不会出现在various reasons的5.x周期中,包括整体下降Flash发布。

如果您的目的只是运行游戏,您可以创建一个引用.unity3d文件的本地html文档,以在浏览器中播放游戏。这是Unity为Web Player构建生成的默认html文档。它假定您已将.unity3d文件命名为WebPlayer.unity3d

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Unity Web Player | WebPlayer</title>
        <script type="text/javascript" src="http://webplayer.unity3d.com/download_webplayer-3.x/3.0/uo/UnityObject.js"></script>
        <script type="text/javascript">
        <!--
        function GetUnity() {
            if (typeof unityObject != "undefined") {
                return unityObject.getObjectById("unityPlayer");
            }
            return null;
        }
        if (typeof unityObject != "undefined") {
            unityObject.embedUnity("unityPlayer", "WebPlayer.unity3d", 960, 600);

        }
        -->
        </script>
        <style type="text/css">
        <!--
        body {
            font-family: Helvetica, Verdana, Arial, sans-serif;
            background-color: white;
            color: black;
            text-align: center;
        }
        a:link, a:visited {
            color: #000;
        }
        a:active, a:hover {
            color: #666;
        }
        p.header {
            font-size: small;
        }
        p.header span {
            font-weight: bold;
        }
        p.footer {
            font-size: x-small;
        }
        div.content {
            margin: auto;
            width: 960px;
        }
        div.missing {
            margin: auto;
            position: relative;
            top: 50%;
            width: 193px;
        }
        div.missing a {
            height: 63px;
            position: relative;
            top: -31px;
        }
        div.missing img {
            border-width: 0px;
        }
        div#unityPlayer {
            cursor: default;
            height: 600px;
            width: 960px;
        }
        -->
        </style>
    </head>
    <body>
        <p class="header"><span>Unity Web Player | </span>WebPlayer</p>
        <div class="content">
            <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://webplayer.unity3d.com/installation/getunity.png" width="193" height="63" />
                    </a>
                </div>
            </div>
        </div>
        <p class="footer">&laquo; created with <a href="http://unity3d.com/unity/" title="Go to unity3d.com">Unity</a> &raquo;</p>
    </body>
</html>

将其插入到一个空的html文档中,并且.unity3d文件名称正确,应创建一个文件,您可以在浏览器中打开并运行游戏。

但是,请记住,原始网站可以为游戏与页面的交互提供更复杂的界面,在这种情况下,它将无法运行(尽管它可能不会立即失败)。

Unity3d允许游戏通过javascript与其嵌入的页面进行通信。您通常无法在不深入了解原始项目的情况下复制原始页面在本地提供的代码(这意味着您可以访问项目,这使得这一切都不必要)。