math functions
surface functions
camera functions