It really depends on the type of studio you are interviewing with and the position you are interviewing for.
If it's a AAA studio you will likely be asked about things like memory management, improving cache performance, which a lot of social/flash/Java companies might not care about. Either one though would ask you to write pseudo-code for simple algorithms (such as determining if a string is a palindrome), explain how you would solve problems they give you (i.e. how would you detect when a ball hits the ground?).
The more experienced the position the more in-depth and targetted the questions will be.
When I interview people I generally like to ask a few simple 3D math problems, a few simple algorithmic problems. I don't personally ask about data structures unless they say something weird in their problem solving and I'm trying to figure out if they know what they're talking about. I then like to ask about things on their resume to make sure they're legit. So for instance, in your post you described your Zelda clone as a project you are proud of. I would ask you to describe the project, and then I'd ask you to explain implementation details about that.
With that said, every interviewer is different and has a different idea of what is important to them. Some people will focus heavily on math, some people will focus heavily on performance, some people will focus heavily on data structures and algorithms, some people just like to ask tricky questions they downloaded from the internet.
Not every question is always expected to be solvable by all candidates. Often interviewers ask questions to see where the bounds of the candidate's knowledge are so they can recommend them for the appropriate position. For example, front end programmers VS rendering programmers VS gameplay programmers all have different requirements and some candidates would be better suited to one more than the others.