* implementing open gl renderer