Manual Collision Detection...

I have a basic cube that moves a certain space when a movement key is pressed. However, since I am using direct Transform variables, there is no Player Controller involved, therefore no collision. However, what I intend to do is create a surface that the player cannot move passed. How can this be achieved? I already thought of an idea that involves recording the previous position and resetting the current position as the previous position every time the player hits the wall. But that is not effective… What are your views?
Thanks in advance!

Try to do something like what I explained here with the transparent boxes and using them as triggers in code.

Funny I was just trying to get pretty much the exact same thing going. I briefly attempted to use rigid bodies but that is just way more beef than the problem requires. Physics.RaycastAll is the answer I believe.

Try this:

// Update is called once per frame
void Update () 
	bool up = Input.GetKeyDown(KeyCode.W);
	bool right = Input.GetKeyDown(KeyCode.D);
	bool left = Input.GetKeyDown(KeyCode.A);
	bool down = Input.GetKeyDown(KeyCode.S);

	Vector3 move = new Vector3( 0, 0, 0 );
	Vector3 nmlMove;

	if (up)
		move.z += 1;
	if (right)
		move.x += 1;
	if (left)
		move.x -= 1;
	if (down)
		move.z -= 1;

	if ( move.magnitude > 0 )
		nmlMove = move;

		RaycastHit[] hits;
		hits = Physics.RaycastAll( transform.position, nmlMove, move.magnitude );

		if ( hits.Length == 0 )
			transform.Translate( move );