Basically I have a crude maze-like object, but I want the textures of the floor and walls to be different. How would I go about placing a texture on all faces point north, etc.
Assume I am a beginner, please.
If you have multiple materials assigned, you can use Shift+g to activate the Select Similar menu. For selecting all of the floor area, using Normal works well. You only have to select one face and all others that have a similar normal should be selected automatically by the tool. There is a slider that controls a threshold value that you can adjust to change the angle overlap.
Once all the faces for that area are selected, you can select the appropriate material and press the Assign button.
For the textures, I used the Box setting which maps the texture from all directions if you add a Texture Coordinates node and set the Input for the texture to Object.
Here is a copy of the .blend file so you can have a closer look. :)
In Cycles you can make a node setup like this:
What's happening is the Geometry node is providing the object's normal data (information about the directions its faces are pointing) in the form of color values. The Separate XYZ node is taking that all in but only returning the values for the Z axis (up and down). That data is then being used to factor between the red and blue.
In this example the factor is mixing two shader nodes, but it could just as easily be color nodes or any node that can receive a factor input.
If you wanted to change the direction you could use X or Y outputs instead of Z.