本文整理汇总了C#中UnityEngine.Rigidbody.IsSleeping方法的典型用法代码示例。如果您正苦于以下问题:C# Rigidbody.IsSleeping方法的具体用法?C# Rigidbody.IsSleeping怎么用?C# Rigidbody.IsSleeping使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine.Rigidbody
的用法示例。
在下文中一共展示了Rigidbody.IsSleeping方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Awake
protected virtual void Awake()
{
//grab component references
_transform = transform;
_gameObject = gameObject;
_renderer = renderer;
_collider = collider;
_rigidbody = rigidbody;
_instanceID = gameObject.GetInstanceID();
//calculate the update interval (assuming ideal target of 60 fps)
_updateInterval = UpdatesPerSecond / 60f;
//check conditions
if (_rigidbody != null && !RigidBodyAwakeOnStart) { _rigidbody.IsSleeping(); }
if (!GameObjectActiveOnStart) { _gameObject.active = false; }
//start coroutines
if (_renderer != null) { StartCoroutine( CheckIsHidden() ); }
}
示例2: ThrowOrStoreItem
void ThrowOrStoreItem()
{
Vector3 resultingDirection = (item.transform.position - previousItemPosition);
// To track if handmovement is quick enough that the player wants to throw
float maxThrowForce = Mathf.Abs(Mathf.Max(resultingDirection.x, resultingDirection.y, resultingDirection.z)) * 10.0f;
//Debug.Log(maxThrowForce);
if(inventory.isItemTouchingInventory(item.gameObject) && maxThrowForce < 0.2f)
{
inventory.storeItem(item, itemIsUsable, itemParent);
}
else
{
//print ("ThrowItem() called!");
itemRigid = item.GetComponent<Rigidbody>();
itemRigid.isKinematic = false;
if(itemRigid.IsSleeping())
{
itemRigid.WakeUp();
}
itemRigid.AddForce(resultingDirection * 1/Time.deltaTime * 1.4f,ForceMode.VelocityChange);
/*
if(maxThrowForce < .3f)
{
itemRigid.AddForce(resultingDirection * 1/Time.deltaTime,ForceMode.VelocityChange);
}
else
{
itemRigid.AddForce(resultingDirection * 1/Time.deltaTime * 2.0f,ForceMode.VelocityChange);
}
*/
//print ("Added Force!");
Collider[] colliders = item.GetComponents<Collider>();
for(int i=0; i<colliders.Length; i++)
{
colliders[i].isTrigger = false;
}
if(itemParent != null)
{
if(!itemParent.Equals(hand.transform) || !item.transform.parent.name.Contains("unterarm"))
{
//print("Parent ist not hand");
item.transform.parent = itemParent;
}
}
else
{
item.transform.parent = null;
}
if (itemIsUsable)
{
item.layer = 14;
}
else
{
item.layer = 9;
}
CheckItemUnderWorld();
}
if(itemIsUsable)
{
itemClass.OnDeequip();
itemClass = null;
}
item = null;
itemIsInHand = false;
itemIsUsable = false;
}