Question about C# parameters

Which one of these would be a better set of parameters:

(Vector3 pos) or (int x, int y, int z)

I guess it depends on what you want to do, but generally in unity I use Vector2/Vector3 since they’re a part of the API and there is usually no need to send in the values individually.

If I specifically want a Vector3 or Vector2 to be int values I just round/cast the x, y and z to int.

When you want some sort of precision (velocity, distance, position, scale, etc.), use Vector2 or Vector3. These two structs work with floats. On the other hand if you want to, let’s say, create some kind of tilemap, the better choice would be Vector2Int or Vector3Int. Vector2Int and Vector3Int work with ints.