Querying the properties each frame isn't performant because of all the casts and pointer indirections.