Articles of 统一

FPS使用鼠标移动而不是按键

嗨,我正在开发第一人称游戏,但希望使用鼠标移动点击移动而不是按键。 我还需要禁用Y移动并将X移动限制为180.我input到input管理器中的任何值,似乎忽略它们,因为当我运行游戏时,我仍然有x和y。 我涉足标准的统一FPS,但看起来非常参差不齐,从我所看到的作为新用户的角度来看,他们似乎不是一种限制运动的方法。 有人可以帮助这个或建议这种types的运动一个很好的教程。 谢谢

如何从另一个C#脚本调用一个方法使用调用?

我想从我的脚本中的另一个脚本使用Invoke()调用一个方法,但无法运行它。如何实现这一点? 以下是我的代码 – void Start () { int randNum; randNum = Random.Range(0,2); Debug.Log("random number == " + randNum); if(randNum == 0) Invoke("PositionScript.instance.MAttack",5f); if(randNum == 1) Invoke("PositionScript.instance.SAttack",5f); }

Unity导入文本或JSON

似乎无法find在Unity3d中将文本导入C#的明确方法。 我正在寻找导入大量不同的文本文件或一个大的JSON文件来表示游戏中的所有文本。 谢谢你的帮助

检查对象是否重叠

我有两个对象,他们都与多边形碰撞器。 当我点击其中一个对象时,我想让玩家把它拖到另一个对象的顶部(没有碰撞)。 如果在丢弃物体时发生重叠,则会与另一个物体捕捉到相同的位置。 否则,它重置其位置。 我如何:1)使对撞机不阻止移动2)使它检测,当我放手时它们是否重叠3)使它捕捉到一个非常特定的地方,取决于它们是否重叠

WWW下载大型AssetBundle是否可靠?

我有一个非常大的AssetBundle。 超过200MB。 WWW从我的服务器上下载合理吗? 我听说你不能告诉它有超时。 我打算将它用于iOS和Android。 由于显然下载会持续超过5分钟,对于很多人来说,它是可靠的还是会超时? 我应该在我的服务器上创建自己的应用程序来使用套接字传输包的字节数?

Unity UI InputField不消耗键盘input

统一用户界面:我有一个input字段,我可以键入。 不幸的是,当我敲打任何一个移动键时,比如空格键,我在打字时移动,这不是我想要的效果。 有没有办法强制input字段消耗键盘input,所以它也不会被游戏拾起? 或者我必须在我的游戏中编写代码来为我做这个。 (至less应该是可configuration的)。

Spriterenderer在油画之上

我有两个canvas。 一个带有背景图像,另一个带有文本等所有重叠元素。 背景canvas的顺序为0,重叠canvas为1。 现在,我想在这些canvas的顶部创建一个animation精灵,但是我不能在我的生活中将精灵放在其他图像的顶部。 我可以看到舞台上的精灵,但是当我切换到游戏视图时,它已经消失了! 没有附加到精灵的脚本。 只有一个animation师(当我玩它时工作正常)。 注意: 我的canvas有一个屏幕空间的渲染模式 – 叠加。 我已经设置了sorting第9层的spriterenderer,顺序为300.虽然它是唯一的精灵。 虽然第1层或第1层没有任何不同。 canvas中的其他元素是UI文本或图像 canvas中的所有元素都在BackgroundLayer或OverlayLayer上 canvas本身在UI层上

Unityinput如何与触摸屏一起使用

我正在尝试使用统一在Android上制作赛车游戏。 当我触摸如下图所示的图像button时,我想使汽车向前移动。 我已经使用键盘工作。 我怎样才能在屏幕上的button和触摸input在Android?

在三维体素世界中去除水平世界切片的方法

最近我最近在做一个爱好体素的世界。 我目前对想法或解决scheme感兴趣,这些想法或解决scheme可以使我基本上一次一步地上下Y轴1水平块切片,有效地使所有上面的水平切片透明,以便我可以看见下面的对象/地形/单元地球。 [描述问题的快速视觉尝试] 我已经做了一些关于这个主题的search,但也许我没有正确描述问题,因为我找不到任何满意的东西。 目标: 1)我不想在每次上下Y轴块的时候重新创建整个世界的块网格。 这会破坏性能,可能会导致Unity崩溃。 2.)合理优化快速升降Y轴,即不发生性能下降。 我知道有几个select必须在那里,因为我已经看过其他引擎和游戏的例子(Byte56的哥布林时代的技术演示和侏儒等)。 我猜测algorithm通过一些神奇的着色器math将是完美的。 所有的想法非常感谢!

Unity3D使用顶点数据在着色器中设置混合模式

我正在从iOS / Obj-C / OpenGL ES 2.0移植到Unity。 我有一个程序化的网格脚本,生成一批需要混合在一起创建游戏板的四边形。 一些四边形增加了一个突出的效果,其他人在那些变暗的场景之上。 这是用混合模式和对象的颜色来处理的。 在旧版本中,我做的东西效率不高,只是单独绘制每个四元组,根据需要设置混合模式(glBlendFunc)和颜色统一。 我尽可能地分配了类似的东西。 在Unity3D中,而不是有500个精灵游戏对象,哪个国际海事组织将难以管理。 我有一个gameObject与mesh =一个绘制调用。 我使用每顶点颜色属性,而不是统一设置每个四/精灵的颜色。 但我也想通过使用顶点数据来设置每个四元组的混合模式。 我将混合模式作为uv2数据发送。 我发现这个问题。 看到第二个答案: http : //answers.unity3d.com/questions/399074/change-blend-mode-from-outside-shader.html 哪个说你可以做到这一点: Pass { Blend [MySrcMode] [MyDstMode] } 但在示例MySrcMode和MyDstMode是着色器属性(制服),并再次设置整个绘制调用的混合模式。 我想改变它每个四分之一,这将不得不每个片段完成。 我了解GLSL着色器。 他们对我有意义。 但是Unity着色器仍然有点神秘。 统一的文档没有得到我,我找不到任何好的教程真的如何工作,以什么顺序调用什么。 我试过了: Blend [texcoord1.x] [texcoord1.y] 但是这没有用。 (这意味着它没有得到texcoord1的价值。)我的Blend是在Pass{} 。 在Pass移动它是相同的,或者产生错误取决于它的位置。 我的另一个select是做一些像gl_LastFragData东西来获取当前的片段,并做我自己的每个片段混合。 或者,我必须将使用不同混合的四边形拉出到另一个游戏对象中。 这意味着将几何graphics根据其混合模式sorting到游戏对象中,而不是其行为或创建和管理它们的脚本。