It reads like Unity3d or C4 could be interesting alternatives. Both allow classes (C# for Unity and C++ for C4) and both allow to publish to Mac and PC. Multiplayer and Shaders are possible.
If you need Linux as a platform then Shiva is a good option.