[Android]How to move an object and have it snap to grid?

Right now I have a script that moves the object I touch to where ever I move my finger. How would I get it to snap to a grid? Here is my script:

#pragma strict
var squareSize : float;
function Start () {


function Update () {
if(Input.touchCount > 0)
            var hit : RaycastHit;
            var vektor = Vector3(Input.GetTouch(0).position.x,Input.GetTouch(0).position.y,0f);
            var ray : Ray = Camera.main.ScreenPointToRay (vektor);
            var coor = Vector3(vektor.x, vektor.y, 5f);
            var pos = Camera.main.ScreenToWorldPoint(coor);
            if (Physics.Raycast(ray, hit, Mathf.Infinity)) {
            hit.transform.position.x = pos.x;
            hit.transform.position.y = pos.y;

Any advice? Thanks in advanced.

It’s easy, you just find the nearest whole grid position to your raycast hit point by using Mathf.RoundToInt.

If the grid is in increments of 1:

var touchedCoordsX : int = Mathf.RoundToInt(hit.point.x);
var touchedCoordsY : int = Mathf.RoundToInt(hit.point.y);
var touchedCoordsZ : int = Mathf.RoundToInt(hit.point.z);

var gridCoords = Vector3(touchedCoordsX , touchedCoordsY , touchedCoordsZ );