#if UNITY_FLASH
public bool IsVisible (Vector3 aa, Vector3 bb, Vector3 cc, Vector3 dd)
#else
public bool IsVisible (Vector3 a, Vector3 b, Vector3 c, Vector3 d)
#endif
{
UpdateTransformMatrix();
// Transform the specified points from world space to local space
#if UNITY_FLASH
// http://www.tasharen.com/forum/index.php?topic=11390.0
Vector3 a = worldToLocal.MultiplyPoint3x4(aa);
Vector3 b = worldToLocal.MultiplyPoint3x4(bb);
Vector3 c = worldToLocal.MultiplyPoint3x4(cc);
Vector3 d = worldToLocal.MultiplyPoint3x4(dd);
#else
a = worldToLocal.MultiplyPoint3x4(a);
b = worldToLocal.MultiplyPoint3x4(b);
c = worldToLocal.MultiplyPoint3x4(c);
d = worldToLocal.MultiplyPoint3x4(d);
#endif
mTemp[0] = a.x;
mTemp[1] = b.x;
mTemp[2] = c.x;
mTemp[3] = d.x;
float minX = Mathf.Min(mTemp);
float maxX = Mathf.Max(mTemp);
mTemp[0] = a.y;
mTemp[1] = b.y;
mTemp[2] = c.y;
mTemp[3] = d.y;
float minY = Mathf.Min(mTemp);
float maxY = Mathf.Max(mTemp);
if (maxX < mMin.x) return false;
if (maxY < mMin.y) return false;
if (minX > mMax.x) return false;
if (minY > mMax.y) return false;
return true;
}