2016-02-03 52 views
2

我试图做简单的2D转轮。移动过程中抽动摄像机图像。在Unity 2D

我正在使用Windows 7旗舰版(SP1),Unity 5.3.2(同时测试过5.3.0,5.3.1,5.2.4)。

我在编辑器,独立版本,Android版本中导致了一个错误。

我已经在2D中创建了新项目。并把一个运动脚本放到摄像机上:

private float m_speed = 0; 
void Update() 
{ 
    transform.Translate(m_speed * Time.deltaTime, 0f, 0f); 
    if (Input.GetAxis("Horizontal") > 0) //RIGHT 
    { 
     m_speed = 5f; 
    } 
    else if (Input.GetAxis("Horizontal") < 0) //LEFT 
    { 
     m_speed = -5f; 
    } 
    else //STOP 
    { 
     m_speed = 0f; 
    } 
} 

我已经添加到摄像机前的一个sceene简单的立方体。 因此(在播放模式下),当我移动相机时(它以稳定的速度移动) - 图像(立方体)正在抽搐。 在项目的质量设置中 - V同步计数Don't SyncEvery V Blank中的更改没有任何可见性,但Every Second V Blank增加了抽搐。

我试图在一个类似的问题在forum (with video)

添加刚体和使用插值设置,如不解决这个问题。

+0

嘿德米特里 - 我真的觉得你必须上传项目,并有一个链接(使用免费的一个您可以托管一个zip文件的网站)。如果你发布它,我会看看它。 (只要你喜欢,就删除任何私人信息。)PS请不要忘记使用Unity,只有在压缩或使用源代码控制时才包含Assets /和ProjectSettings /文件夹。干杯! – Fattie

+0

注意,VSync等是完全无关的,你可以肯定:O – Fattie

+0

@JoeBlow,我在[unity3d.forum]找到了合适的主题(http://forum.unity3d.com/threads/gfx-waitforpresent.211166/ ),并且202个帖子使抽搐几乎察觉不到,但是对于Andriod设备来说存在抽搐。 –

回答

-1

你尝试使用transform.poisition代替transform.translate它应该给平滑运动AFAIK

+0

Thnaks,但'transform.position = new Vector3(transform.position.x + m_speed * Time.deltaTime,transform.position.y,transform。 position.z);'没有解决问题 –