Creating the first version, implementing geometry buffer