Articles of 统一

2.5d游戏角度自上而下的透视摄像头

我有一个使用Unity的2D工具和正交相机创建的2D游戏: 通过以编程方式生成网格,为每对三角形分配纹理,并将法线设置为-Vector3.forward来创建瓦片。 我现在想切换到一个透视摄像机,为瓦片添加3D感觉,同时仍然使用精灵(以及跟随玩家): 我该如何设置这种types的相机,还有可能保留玩家在我的游戏逻辑中大量使用的x / y坐标。 提前致谢! 更新:我已经意识到,就我原来的网格和精灵而言,我只需要交换vectorY和Z坐标,以便在场景中很好地定位拼贴和精灵,但是我仍然不确定如何很好地定位相机并将其置于播放器上。

我皮肤模型中的法线不是animation的

我有一个与animation混合皮肤模式。 法线看起来像是搞砸了。 这是Unity3D在animation之前和之后的外观。 正如你所看到的,我的模型应该像旁边的立方体一样点亮。 当我在混合器中应用电枢修改器时,我的模型松动了animation并将其locking在特定的位置,但是该模型中的光线起作用。 我的问题是:法线设置为静态模型,而不是animation。 为什么法线不是animation?

改变CharacterController的速度?

我试图改变第三人控制器上的字符控制器组件的速度,但是当我尝试改变它时,控制台说速度是只读的。 这是我的代码。 P.GetComponent(CharacterController).velocity = 0; (P是我的玩家GameObjectvariables) 那么,关于如何改变这个问题的想法呢? 谢谢,克里斯。

我如何创建一个击退运动?

我是一个新兴的游戏开发networking开发人员,math知识有限。 我正在Unity编写角色移动控制器。 游戏有一个等距暗黑相机。 角色在有限的区域内点击鼠标。 现在这个角色像这样移动: 我希望它像这样移动: 我不需要你为我写代码:我只是想了解这个math是什么样的。 一个Unity和C#特定的解释将是伟大的,但不是必要的。

在GUIElement(Unity)之上生成粒子效果

我正在使用C#在2D项目上工作。 为了创造一种生命计,我有许多心灵的东西。 我想当玩家失去了一颗心,在一口烟中变成一个头骨。 我目前已经把心灵正确地变成了头骨,并且产生了一团烟雾,但是烟雾产生在错误的位置。 烟雾目前由以下产生: GameObject smokeObj = (GameObject)Instantiate (smoke, transform.TransformPoint(transform.position), Quaternion.identity); 我也试过了: GameObject smokeObj = (GameObject)Instantiate (smoke, transform.position, Quaternion.identity); 我知道,烟雾被创造到错误的位置的原因是由于GUIElements使用不同于其他gameObjects的坐标系统。 我如何在正确的位置创建烟雾? 这是一个2D项目,我目前正在使用Windows 8.1的Unity 4.5of6。 感谢您的帮助,如果您有任何问题,请不要犹豫,问。 编辑:我也尝试了以下,但它也工作不正确: Vector3 worldPos = cam.ViewportToWorldPoint(transform.localPosition + Vector3.forward); worldPos.z=0; GameObject smokeObj = (GameObject)Instantiate (smoke, worldPos, Quaternion.identity); Debug.Log(worldPos); //smokeObj.layer = 5; smokeObj.transform.parent = this.transform;

我如何绘制一个特定的游戏对象到Unity中的纹理?

我只需要将一些特定的对象绘制到纹理中(使用它们的材质),然后使用RenderTexture作为另一个对象的纹理。 我认为Graphics.DrawMesh()和Graphics.SetRenderTarget()会有帮助,但我不确定。 最终,我试图创建折射水,它将折射只有指定的GameObject ,而不是图层。 我怎样才能做到这一点?

在运行时更改纹理

我怎样才能在运行时改变纹理。 我已经在运行时更改了标签(文本)。 下面的代码被使用 using UnityEngine; using System.Collections; public class switchtime : MonoBehaviour { // Use this for initialization private bool showLabel = false; private bool showLabe2 = false; private bool showLabe3 = false; private bool showLabe4 = false; public void Start() { Invoke("ToggleLabel", 1); Invoke("ToggleLabel2", 3); Invoke("ToggleLabel3",6 ); Invoke("ToggleLabel4", 9); } public void ToggleLabel() { […]

在编辑器中听取资产修改

我想听一个事件,一些资产(预制,确切)已被修改。 令我惊讶的是, AssetModificationProcessor没有这样的事件。 Unity有没有办法做到这一点?

简单的正方形撞墙,不停地转身

我正在编写和制作我的第一个在Unity 4.5 2D平台前的游戏。 基本上我想让我的角色在两面墙之间乒乓球。 我已经建立了一个GroundCheck和CeilingCheck。 我想在角色的左侧和右侧添加一个WallCheck来检测墙壁,但是我会在空中有平台,如果角色没有跳跃并且撞到平台上,我不会希望它转过来,但只需滑下,继续按当前的方向,直到再次撞到墙上。 在C#中编码1.从墙到墙获取字符乒乓2.了解击中墙壁和击中平台侧面的区别。

沿滑动移动一个球体?

我正在尝试基于滑动来获取球体curl。 我知道这已经被问了很多次了,但仍然渴望得到回答。 我已经成功地增加了轻扫方向的力量,并且接近完美。 我也有所有的滑动位置存储在一个列表中。 现在我想知道如何实现curl。 我相信滑动的曲线可以通过Vector点积来计算 如果theta是0,那么不需要添加滑动。 如果不是,则添加curl。 也许这个条件是多余的,如果我设法find如何沿滑动位置curl球体 基于滑动方向向球体添加力的代码如下: using UnityEngine; using System.Collections; using System.Collections.Generic; public class SwipeControl : MonoBehaviour { //First establish some variables private Vector3 fp; //First finger position private Vector3 lp; //Last finger position private Vector3 ip; //some intermediate finger position private float dragDistance; //Distance needed for a swipe to register […]