Yes, you need a high spec computer to get games to run good on a virtual install. Assuming that XP is your virtual install, you'd need to be able to lend the 3.25GB of RAM that the OS can address. Without allowing your host OS to drop below the specs it needs to run, 2GB RAM for 32 bit, 3GB for 64 bit. These specs are higher than what MS publishes, but in real life, 2GB is not quite enough for a 64 bit Windows 7 install to run good.
Plus, there's the CPU to consider. You'll need at least a dual core CPU that runs at 2.5GHz to get any kind of decent performance in doing what you want, probably more.
Virtual machines are good for many things, they can save a company or a home user money, by minimizing hardware investment. Meaning that...