Vertex shader looks alright, but just to be sure define cbuffer like this:
cbuffer cbPerObject : register(b0)
I cannot remember multiplication order, it might be that you need to multiply matrix*vector instead of vector*matrix, or transpose your matrices before putting them into constant buffer.
Can we see your pixel shader? However considering how you pass color from vertex shader there's probably no issues.
I cannot see where you set your render targets, are you using any depth buffer?
I would be nice to see input layout definition, data for your vertex and index buffers.
Ultimately to find problems on your own you can use:
- Debugger, it should throw messages if some parameters are invalid
- PIX or Visual Studio 2012 graphical debugger, it'll allow to see how your vertices are transformed and which pixel are drawn or discarded.