zum checken der textur wirst du ja sehr wahrscheinlich c_trace verwenden... diese funktion verändert beim treffen einen normalenvektor (vektor, der genau senkrecht auf der getroffenden oberfläche steht)

http://www.conitec.net/beta/anormal.htm