desert portal
This commit is contained in:
@@ -73,13 +73,13 @@ namespace EscapeRoomEngine.Portal.Runtime
|
||||
|
||||
public void Teleport(Portal from, Portal to)
|
||||
{
|
||||
var m = to.transform.localToWorldMatrix * Portal.HalfRotation * from.transform.worldToLocalMatrix *
|
||||
traveller.localToWorldMatrix;
|
||||
var m = to.portalTransform.localToWorldMatrix * Portal.HalfRotation *
|
||||
from.portalTransform.worldToLocalMatrix * traveller.localToWorldMatrix;
|
||||
traveller.SetPositionAndRotation(m.GetPosition(), m.rotation);
|
||||
if (_rigidbody)
|
||||
if (_rigidbody && !_rigidbody.isKinematic)
|
||||
{
|
||||
_rigidbody.velocity = to.transform.TransformDirection(
|
||||
Portal.HalfRotation.rotation * from.transform.InverseTransformDirection(_rigidbody.velocity));
|
||||
_rigidbody.velocity = to.portalTransform.TransformDirection(
|
||||
Portal.HalfRotation.rotation * from.portalTransform.InverseTransformDirection(_rigidbody.velocity));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user