我正在尝试为统一的电影制作免费的漫游相机。这主要是为了学习C#脚本的基础知识。
if(Input.GetButton("Vertical"))
{transform.position = Vector3.forward * speed * Time.deltaTime;}
现在,当我使用相机将脚本放置在游戏对象上后,在Update中运行该功能时。相机无法在Z轴上移动超过0.07。该数字在游戏运行时会有所不同,这意味着脚本正在运行。但是我不明白为什么它没有超越游戏引擎世界的范围。我对统一引擎或Visual Studio感到困惑。
答案 0 :(得分:3)
这是因为您正在将位置设置为一个值,而不是将值添加到当前位置。
尝试一下:
XamDataGrid
(而不是代码格式。使用反斜线将<igDP:XamDataGrid RenderTransformOrigin="0.146,-3.629" DataSource="{Binding Path=Wavelets}" GroupByAreaLocation="None">
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AutoGenerateFields="False"
AutoFitMode="Always"
AddNewRecordLocation="OnTopFixed"
AllowAddNew="True" />
</igDP:XamDataGrid.FieldLayoutSettings>
<igDP:XamDataGrid.FieldLayouts>
<igDP:FieldLayout>
<igDP:FieldLayout.Fields>
<igDP:Field Name="AngleFile" Label="Anglestack file"/>
<igDP:Field Name="WaveletFile" Label="Wavelet file "/>
<igDP:Field Name="DataField" Label="Data file"/>
</igDP:FieldLayout.Fields>
</igDP:FieldLayout>
</igDP:XamDataGrid.FieldLayouts>
</igDP:XamDataGrid>
和if(Input.GetButton("Vertical"))
{
transform.position = transform.position + Vector3.forward * speed * Time.deltaTime;
}
分开,这更易读,也是一种好习惯)
答案 1 :(得分:0)
您可以尝试:
transform.Translate(Vector3.forward * speed * Time.deltaTime)