Hello everyone!

I am building a 3D engine for a commercial title. We are targeting Win, Linux and Apple platforms. The engine will be shader-only and for now, it supports(well.. kinda :P) D3D10 and OpenGL 3.1.
Because of this I was thinking to "play" with Cg Fx. [which is the only way(apart from creating your own fx system) for OpenGL to support MS-fx-like shaders].
My question is... does Cg/Cg fx supports OGL3.1? For example.. do the Ogl3.1 semantics (eg InstanceID) work with Cg? Is there something that is not supported? I never touched Cg before and I have no idea.
What do you suggest for a Cross-platform(win,linux,mac) ogl3.1/d3d10 commercial 3d engine? Maybe Cg/Cg FX is not a good idea?

Thanks for your time.