есть функция:
if (input.GetKeyDown(KeyCode.A))
		{
			//плавно передвинуть объект (translate) на 1 по оси z влево
		}
else if (input.GetKeyDown(KeyCode.D))
		{
			//плавно передвинуть объект (translate) на 1 по оси z вправо
		}
При нажатии клавиши необходимо плавно передвинуть объект с помощью transform.translate (я полагаю) на определенное расстояние.
Подскажите как это реализовать? 
Пробовал внутри функции if, но естественно при нажатии на клавишу - передвижение происходит 1 кадр и прекращается.
Пробовал через bool и с помощью других методов, но при первом передвижении анимации сохраняется, а при последующих происходит не движение а телепортации объекта, т.е. за 1 фрейм.