所以我对C#很新,我试图编写将MainCamera移动到pos 2的东西,如果它在pos 1中,并且如果在pos 2中则移动到pos 3但是只有在有按键的情况下
KEYPRESS(在pos1中)
V
Maincamera转移到pos2
V
KEYPRESS(在pos2中)
V
Maincamera转移到pos3
B = pd.Series([10,9,7,7,12,14])
# Getting first position of minimum value
minValueIndex = B[B == B.min()].index[0]
# Boolean list for condition 1
isAfterMin = B.index >= minValueIndex
# Boolean list for condition 2: whatever calculation you make, for entire series. Example:
myBoolean = [True, False, True, True, False, True]
# Final Boolean list
ser = isAfterMin & myBoolean
print (ser)
# [False False True True False True]
是我能得到的
答案 0 :(得分:1)
我已经起草了一个可行的答案,但你可能需要调整它。
首先我使用这些变量
Vector3[] vecArray;
int changer;
float speed = 20f;
在你开始时,你将把vecArray填入所需的位置。
vecArray = new Vector3[] {new Vector3(2,40,90), new Vector3(60, 44, 29) , new Vector3(30, 9, 42) };
现在更新
if (Input.GetKeyDown("space"))
{
changer++;
if (changer >= vecArray.Length)
changer = 0;
}
//If script is not attached the main camera will need to be found
//Camera.main works if it is the main camera you are moving
//first we will lerp toward object
if (Vector3.Distance(vecArray[changer], transform.position) > .1)
{
transform.position = Vector3.Lerp(transform.position,
vecArray[changer], speed * Time.deltaTime);
}//snap when close to stop camera lerp if it cannot get exactly to position
else
transform.position = vecArray[changer];
此代码可让您保持切换相机位置,但可以轻松更改。要快速解释什么事发生。您可以通过每次按下添加一个来更改索引如果它大于数组长度则返回零。 lerp if是一个快速解决方案,硬编码.1是快照防止不良lerp行为。如果您的代码变得更复杂,您甚至可以在列表中使用此代码。如果您仍然不确定会发生什么,只需添加评论。