Update to use shared geometry buffer