Articles of 统一

我怎样才能以编程的方式改变一个精灵的轴心,而不影响游戏对象的当前位置和旋转?

由于职位的复杂性,我使用了我的游戏对象精灵的中心点。 我可以改变主轴而不影响游戏对象的当前位置和旋转吗? 或换句话说,我可以改变主轴,而精灵保持不变明显? 我最好喜欢用c#脚本来做到这一点。

固定两个Vector3位置之间的距离增量

我有两个Vector3职位: Vector3 start = new Vector3(1f, 1f, 1f); Vector3 target = new Vector3(5f, 5f, 5f); 如何将gameobjects从开始到目标转换为固定的数量,例如.1f? 这很容易用百分比来完成,因为你可以这样做: var dist = target – start; var d = 5f; // 5 increments var step = dist / d; while (start != target) { start += step; } 你如何做到这一点固定,而不是百分比的步骤。 假设我想在某个方向增加。 var dist = target – start; var step […]

设置和维护Unity的旋转方向

我试图做一个分为6个部分的旋转轮。 每个部分都标有一个以该部分为中心的游戏对象。 玩家旋转车轮后,它会旋转,直到开始减速。 然后,轮子根据随机select的部分在中心移动并停止。 我使用下面的代码在x轴上向0方向旋转​​轮子。 此代码工作正常,轮子旋转正常,但只有当选定的部分在x轴上超过0。 float rotateFloat = (((randomReward + 1) * 60) – 30) – transform.rotation.z; Quaternion targetRotation = Quaternion.Euler(new Vector3(0, 0, rotateFloat)); transform.rotation = Quaternion.RotateTowards(transform.rotation, targetRotation, f_difX * Time.deltaTime); 我做了一些挖掘,发现Quaternion.RotateTowards()find最接近目标的方向,并使用该方向旋转(这导致旋转方向的问题)。 例子(见图):玩家滑动旋转,randomReward设置为旋转轮上的#5,当轮子慢下来时,轮子开始旋转,开始向中心移动。 然后它将停止沿着滑动的方向旋转,并将向另一侧旋转(因为到中心的距离更靠近左侧)。 无论哪个靠近中心,我怎样才能将它设置为按照相同的方向滑动? 而且,如果有更好的方法来做到这一点,请赐教。 谢谢。

PrefabUtility.InstantiatePrefab以recursion方式禁用gameObjects

我正在开发一个编辑器脚本,我不得不使用PrefabUtility.InstantiatePrefab方法,因为我不想丢失与实例化对象的预制连接。 但是,如果我设置了新实例化的gameObject的父对象,那么它的父对象就会被recursion地禁用。 我不知道为什么会这样。 默认实例化方法与父母gameObjects一起工作,但我不能使用它,因为它失去了与预制的连接。 任何解决这个问题? 谢谢..

有没有办法在手机上使用后期处理效果?

我试图使用内置的统一后处理堆栈,我只是想为我的游戏添加一个小插曲效果,但是当我在手机上testing它时,它的运行速度<25 fps,这在我看来太低了。 有没有办法重新创建效果以获得更好的性能?

如果玩家在现实世界中移动,游戏对象也想移动

我正在创建一个IOS游戏。 这是我在IOS的第一次经历。 我正面临玩家运动的一个问题。 如果玩家在现实世界中移动,则意味着游戏对象(游戏中的角色)也想要移动。 所以我试图访问计步器采取步骤计数。 但不更新。 它只显示步数为0。 价值不变。 这是我的脚本。 任何人请帮助。 private float loLim = 0.005F; private float hiLim = 0.3F; private int steps = 0; private bool stateH = false; private float fHigh = 8.0F; private float curAcc= 0F; private float fLow = 0.2F; private float avgAcc; public Text stepCountTxt; public void Update(){ stepDetector(); } […]

如何使用Unityanimation设置默认值?

我偶尔在animation中用这个设置默认值,我用它将不同的位置精灵移动到相同的位置。 如何设置这个默认值?

在运行时统一导入在Cinema4D中制作的fbx模型

在我的应用程序,我有要求,我会给一个url,并使用此url,我必须下载一个fbx模型,然后在场景中显示它。 我可以使用下面的代码从url下载模型。 IEnumerator loadModel(string modelName) { if (!isDownloaded) { string targetUrl = "http://XXX.XXX.X.XX:3000/" + modelName; Debug.Log("targetUrl" + targetUrl); WWW www = new WWW(targetUrl); yield return www; if (www.isDone) { Debug.Log("downloaded " + www.bytesDownloaded); var path = System.IO.Path.Combine(Application.dataPath+"/Resources", modelName); System.IO.File.WriteAllBytes(path, www.bytes); isDownloaded = true; LoadAndAttachModel(imageTargetTransform, modelName); } else { Debug.Log(www.bytesDownloaded); } } } 在下面的代码中,我尝试在场景中加载模型 public void […]

如何使用统一的Aforge / Bitmap库?

我正在开发一个简单的image processing应用程序游戏unity.I运行应用程序没有任何错误,但是当我构建移动平台的游戏,它总是崩溃和logcat(在Android)说, “找不到gdiplus.dll”。 我想这是因为System.Drawing.Imaging库,Unity不支持这个库。 我读了很多文章和答案,但没有人解释这一点。 有没有其他的方式来使用/导入位图或等? 我试过用Aforge,EmguCV,opencvsharp库,但他们都需要位图类或这个库。

获取在Unity中实例化的GameObject

我怎样才能从另一个游戏对象获得一个游戏对象? 如果我知道,GameObject我想要实例化(使用函数Instantite())我想从中获取它的GameObject。 如果没有解决scheme,我怎么能find应该移动实例化子弹的方向? 我的意思是应该是1或-1。