return { summary = 'Set the components of the vector.', description = 'Sets the components of the vector, either from numbers or an existing vector.', arguments = { x = { type = 'number', default = '0', description = 'The new x value of the vector.' }, y = { type = 'number', default = 'x', description = 'The new y value of the vector.' }, z = { type = 'number', default = 'x', description = 'The new z value of the vector.' }, u = { type = 'Vec3', description = 'The vector to copy the values from.' }, q = { type = 'Quat', description = 'A quat to use the direction of.' }, m = { type = 'Mat4', description = 'The matrix to use the position of.' } }, returns = { v = { type = 'Vec3', description = 'The input vector.' } }, variants = { { arguments = { 'x', 'y', 'z' }, returns = { 'v' } }, { arguments = { 'u' }, returns = { 'v' } }, { arguments = { 'q' }, returns = { 'v' } }, { arguments = { 'm' }, returns = { 'v' } } }, related = { 'Vec3:unpack' } }