问题标签 [unity5]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
240 浏览

unity3d - 在 2 个游戏对象之间拖放

我的场景中有 2 个球体。我希望能够将鼠标从一个球体拖放到另一个球体,并在拖动时有一个指示器(例如直线)。释放鼠标按钮后,我想在第一个球体中存储另一个球体(作为游戏对象)。

我在 UnityScript 中需要这个,但我可以接受 C# 的想法。

到目前为止,我已经考虑过onMouseDown第一个球体上的事件,然后onMouseEnter到另一个球体,我会将数据存储在一些全局变量中(我还不知道如何做),如果 onMouseExit我只是把全局变量为空。

然后onMouseUp在第一个球体上,我将全局变量存储在按下的对象(球体)中。

关于如何做到这一点的任何提示和技巧?

0 投票
1 回答
250 浏览

unity3d - 我可以在 Unity 5 中知道谁实例化了对象吗?

是否可以从实例化对象那里获取信息?

例如,假设我们有 objectA:

有没有办法在objectB中做这样的事情:

其中“父母”是发起人。

0 投票
1 回答
708 浏览

c# - Unity 5 Windows phone 8 游戏在 wp8 设备中启动时崩溃

我有一个要为 wp8 构建的 unity 5 项目。它只有一个 C# 脚本。它还导入了我创建的一个自定义包。该软件包有一些默认的 5 个 dll,我希望应用程序强制拥有这些 dll。我还有一些额外的 10 个 dll 可以选择引用。在游戏中提到的所有 10 个 dll 中,一个人可以拥有最少 0 个和最多 0 个。使用这些 dll 不是强制性的。只有在您需要一些额外功能的情况下,您才能将它们添加到项目中。

现在发生的是::

如果我在项目中获得了带有 5 个 dll 的自定义包,请构建它,打开 VS soln 并运行它,它会崩溃。这是异常跟踪::

{System.TypeInitializationException:“WinRTBridge.WinRTBridge”的类型初始化程序引发异常。---> System.TypeInitializationException:“WinRTBridge.TypeInformation”的类型初始化程序引发了异常。---> System.IO.FileNotFoundException:无法加载文件或程序集“Windows,版本=255.255.255.255,文化=中性,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。在 UnityEngineInternal.BootstrapHelpers.FillTypeMaps(Dictionary 2& typeToTypeIdMap, List1& typeIdToTypeMap) 在 WinRTBridge.TypeInformation..cctor() --- 内部异常堆栈跟踪结束 --- 在 WinRTBridge.TypeInformation..ctor() 在 WinRTBridge.WinRTBridge..cctor() --- 内部异常堆栈跟踪结束 --- WinRTBridge.WinRTBridge。
在 Unity5Sample.MainPage..ctor()}

我的 windows phone 8 sdk 安装正确,我肯定可以在我的 Visual Studio 中创建、构建和运行示例 wp8 项目。所以毫无疑问,wp8 缺少一些 sdk。

但是,如果我引用我的自定义包以及它,我还会引用所有其他 10 个 dll,然后统一构建它并在设备上的 Vs 中运行它,那么它工作得非常好。

我的自定义包中的 dll 与我们稍后手动添加的 dll 之间没有关系。但这仍然是正在发生的事情。此外,这仅在 Unity 5 中发生。对于 unity 4.5+ 和 < 5.x,无论我是否引用任何非强制性的 10 个 dll,它都可以完美运行。

0 投票
1 回答
877 浏览

unity3d - 在 Unity 2D 中管理拖放

我是 Unity 的新手,并试图在 Unity 2D 中实现一个示例游戏,该游戏由几个动物精灵和一艘船组成。我必须将动物拖放到船上。只固定放置在固定位置的动物数量。

我已经创建了动物精灵和船精灵,并使用 Raycast2D,我能够通过其中存在的对撞机检测动物游戏对象,并且还能够通过不断改变其位置来拖动它。

现在我必须在船上创建几个放置点并将动物放在上面。我不能那样做。你们能提出一些想法吗?怎么做?

我没有使用任何 UI 组件,因此内置的拖放功能不起作用。有什么办法可以使它工作吗?

0 投票
0 回答
710 浏览

unity3d - 程序地形生成不复制 splatmap

我正在开发一个游戏,它使用基于 Unity 块的程序地形生成。我的地形必须在运行时进行 splatmapped,所以我开发了一种算法来做到这一点。

我使用“块”预制件,每次世界生成器决定创建新片段时都会实例化。每个块都有一个地形组件以及我的脚本来执行 splatmapping(以及未来的高度生成)。问题是,当我实例化预制件时,预制件仍然使用相同的包含高度和 splatmaps 的TerrainData对象,因此一个块中的每一个变化也会影响其他块。

我发现我可以从预制件中实例化地形数据来克隆它,它解决了一半的问题。现在我可以独立更改高度图,但 splatmaps 似乎仍然连接。

不幸的是,这段代码不起作用。alphamapTextures 是一个只读数组,更改其元素似乎无济于事(我在两个调试 .pngs 中得到相同的输出文件)

我知道我可以使用反射并强制 alphamapTextures 重新分配,但我希望有更好的方法来做到这一点。如果不是,那就是统一设计缺陷或错误。

感谢您的任何回复。

0 投票
0 回答
1227 浏览

ios - unity iOS app 因 iAd 被拒绝

我正在努力提交我的 iOS 应用程序。我正在使用 Unity 5.1.1f1 版本来构建我的 iOS 应用程序,但由于广告而被拒绝。我使用 Unity 内置的ADBannerView来展示广告。即使我在我的设备上看到了测试广告,Apple 仍然拒绝它说:

我们仍然发现您的应用使用了 iOS 广告标识符,但不包含广告功能。这不符合 App Store 审查指南所要求的 iOS 开发者计划许可协议的条款。具体来说,iOS 开发者程序许可协议第 3.3.12 节规定:..

有人说将您在itunesconnect中的答案更改为NO此应用程序是否使用广告标识符(IDFA)?)有人说修改xCode中的某些功能 (我做了,但我的应用程序仍然没有通过)

注意:我没有尝试更改 itune 答案(看起来很吓人)

我怎样才能克服这最后一个障碍?任何帮助将不胜感激:)

0 投票
1 回答
34 浏览

web-services - 想要一个用于 Unity 游戏和网站的通用数据库

我正在统一 5 中制作游戏,我需要从数据库中加载描述和项目,当我们在网站中输入值时,这些项目会更新。我需要知道一些在 unity 5 中使用 asmx webservices 的方法。

有人可以详细告诉我我该怎么做。

0 投票
1 回答
3094 浏览

c# - 组件.GetComponent() 导致大量错误

我正在尝试使用 unity5 在线学习太空射击教程,但我遇到了刚体问题。

我意识到刚体已被替换为 Component.GetComponent() 但我想创建一个变量而不是全部输入。

我使用 Component.GetComponent() 收到大量错误,但不明白出了什么问题。

这是我的代码片段,我试图用夹子限制运动:

这是它给我的大量错误:

我觉得我错过了一些重要而明显的东西,因为这不是很多代码来保证这么多错误。

0 投票
2 回答
4910 浏览

c# - FindGameObjectWithTag(Tag tag) 与在 Unity 中为游戏对象使用公共变量的性能

基本上,我正在尝试为移动设备优化 Unity 游戏。因此,必须控制 CPU 使用率。由于这是一个复杂的游戏,许多脚本相互引用(以及它们的 GameObjects)。目前,我正在使用GameObject.FindGameObjectWithTag(Tag tag)引用其他游戏对象、组件和脚本。我也知道这可以通过使用编辑器中的拖放来使用公共变量来完成。但是我知道哪个 GameObject 会被放入每个关卡,我发现第一个选项使用起来更简单,因为拖放会导致多次错误并且使用起来很乏味。但是,这不是问题,我觉得其中一个或另一个的表现胜过这些后备。我想知道这两种方法在性能方面是否存在差异,哪一种更适合高性能、移动方面。

0 投票
2 回答
1072 浏览

c# - 跟踪游戏对象变换 - 为什么使用 FindGameObjectWithTag 不起作用?

我正在学习一个教程(确切地说是生存射击游戏),并且我正处于实现 NavMesh 的阶段。他们的原始脚本是这样的:

到目前为止没有什么特别的。我按下播放键,奇怪的是敌人(我现在场景中只有一个)只到达玩家的初始位置(0,0,0),而不是在玩家移动时跟随它。我意识到玩家的位置在_player场上没有更新,它保持在0,0,0.

我尝试了一种不同的方法:我将 Player 的游戏对象拖放到 UI 中的属性上(我先将属性设为 public,然后将其更改为GameObject)。在这种情况下,它可以完美运行:

在这个阶段,我想知道:

方法是否FindGameObjectWithTag复制对象而不是返回对GameObject? 为什么它在第一个实例中不起作用。顺便说一句,我使用 Unity 5。