generic obj loading and tree