public override void GetTangents(
Intersection a_intersection, out Vector3 a_tangent_x,
out Vector3 a_tangent_y)
{
a_tangent_x = Vector3.CrossProduct(Up, a_intersection.Pos).Normalized;
if (a_intersection.BackHit)
{
a_tangent_y = Vector3.CrossProduct(a_intersection.Normal,
a_tangent_x).Normalized;
}
else
{
a_tangent_y = Vector3.CrossProduct(a_tangent_x,
a_intersection.Normal).Normalized;
}
}
2011-12-09
Torus - mapowanie wypukłości
Procedura jest bardzo podobna do tej dla sfery. Wektor X może się wyzerować jeśli r>R i Pos znajduje się w dołku. Możemy taki punkt dla przyjętego mapowania nazwać osobliwym i nie przejmować się mapowaniem w nim.
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz