maybe just use a vec2 origin and vec2 size