Are you trying to work out how to do the rendering efficiently, or how to do the game logic?
For Fez's rendering, the lovely Renaud Bédard has made available slides from his presentation explaining how he did it:
http://theinstructionlimit.com/cubes-all-the-way-down-igs-gdc(
Edit Page 30 to 37 in those slides talks about collision detection and management, so definitely worth reading)
But I suspect you're more interested in the mechanic. It's fairly simple to get the basics working, although plenty of opportunity for fiddling with edge cases to get it working how you like.
When making a normal 2d platformer, you probably have something like a series of points that you check for collision against the level tiles. For instance when attempting to walk right you check a point to the right of the character; if it's within a solid tile you know the player can't walk that way (probably you want to allow the player to walk right up to the wall rather than stopping short, but you get the idea). Similarly to see if the character has walked off a ledge you check a point just below her feet, and if that's not within a solid tile then you make the player start to fall.
For Fez-style stuff you do just the same, but rather than checking a point on a 2d map you're checking along a ray cast through a 3d map. The good news is that the ray is always aligned to an axis, and is cast through a voxel grid so it's very simple to do.
For example:We have a 3d scene where x and y are horizontal, z is vertical.
The camera is currently looking down the y axis.
The player is at (1,1,1) and is trying to walk one unit to the right.
We want to know if that position is an open space or if there's a wall there.
As the camera is looking down the y axis, the following locations will appear to be positioned where the player is trying to walk:
(2,0,1)
(2,1,1)
(2,2,1)
(2,3,1)
..etc..
For Fez's mechanics if either (2,0,1) or (2,1,1) is a solid block then the player should be stopped. If any of the further back locations are solid blocks that's fine, as they're treated as background stuff.
You'll have an entertaining time working out how best to invisibly shift the player back and forth as they move about the world (especially when jumping) so that the resulting behaviour is what you want from the game, and what will make sense to the player.
Almost three years ago I made a prototype mimicking Fez's perspective shift. I can't seem to find the source code, although from that time it would doubtless be a mess anyway.
http://www.saltgames.com/2009/fez-rip-off/