繁体   English   中英

如何在C#项目中使用Unity

[英]How to use Unity in a C# project

我刚刚开始使用unity3d。 我用第一个视图控制器,脚本等创建一个小场景。 但是我想知道如何在C#代码项目(Visual Studio)中加载和播放场景。 让我解释。

我已经制作了一个C#项目,其中包含许多变量,接口等。如何使用Unity库以及c#代码中的某些方法来加载和播放统一场景。

这种代码是否存在? 喜欢 :

using System.Unity.Scene;

......
{
 loadScene(myscene);
playScene(myscene);
...
}

....

虽然您可以从Unity API中的代码加载Scene的场景(请参阅Application.LoadLevel ),但您无法在unity之外完全使用Unity API。 虽然您可能会导入库的运气,但是由于Unity IDE / Editor的工作方式,实际的功能将不存在。

可能我建议将您的非统一项目构建到一个库中(确保将Target框架设置为3.5或更低版本,因为Unity使用mono 2.0库而不是.NET),然后在您的统一项目中使用它。

您可能还希望看看UnityVS ,这是统一性最好的扩展:它为那些喜欢VisualStudios而不是MonoDev的人提供了很多扩展和可用性。

要使用C#加载Unity场景:

using UnityEngine;
using System;

class YourClass
{
    // ...

    public void LoadScene( string sceneName )
    {
        Application.LoadLevel( sceneName );
    }

    // ...
}

http://docs.unity3d.com/Documentation/ScriptReference/Application.LoadLevel.html

但是,正如其他人提到的那样,您应该真正开始使用Google基本的一些Unity C#教程。

我认为您看错了方向,Unity3D是一个开发环境,并提供了在它们提供的框架内工作所需的许多工具和结构,幕后的元数据启用了其许多功能,可以进行链接对象从场景到C#类。

我的建议是着眼于将其他库集成到Unity3D项目中,而不是相反,这会很好地工作。

我之前做过类似的事情,例如集成一些序列化库和API。

您可能会看到的一个选择是将Unity3D项目挂接到Web服务上,并以此方式进行控制,从而使您可以将某些逻辑包含在Unity3D项目之外

我建议在这里作为学习Unity3D的一个好的开始:

https://www.assetstore.unity3d.com/#/content/5087

尝试改用monodevelop。 Unity与Monodevelop集成得很好,并且与Unity打包在一起。

在编辑器的顶部菜单中,资产->创建-> C#脚本

双击新创建的C#脚本,它将在monodevelop中打开。

然后将代码删除!

每个C#脚本都应使用

using UnityEngine;

要访问该框架,通常默认情况下会自动进行设置。

加载场景:

Application.LoadLevel("Level Name");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM