add v2f struct