Чтобы округлить координаты до целого числа при отпускании объекта мышкой, можно использовать метод `Mathf.Round` для x и y координат. Вам нужно добавить метод `OnMouseUp`, который будет выглядеть примерно так:
```csharp
void OnMouseUp()
{
transform.position = new Vector3(
Mathf.Round(transform.position.x),
Mathf.Round(transform.position.y),
transform.position.z
);
}
```
Этот метод округлит координаты `x` и `y` до ближайшего целого числа, когда объект будет отпущен.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
private Vector3 pointScreen;
private Vector3 offset;
void OnMouseDown()
{
pointScreen = Camera.main.WorldToScreenPoint(gameObject.transform.position);
offset = transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, pointScreen.z));
}
void OnMouseDrag()
{
Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, pointScreen.z);
Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenPoint); transform.position = curPosition;
}
}