Visual Studio Project

Hello

I know it sounds like sacrilege, but we are being asked to port one of our Unity games to Visual Studio (Not XNA). And we are evaluating the options.

What would be the easiest way to do this?

I think a VS game-framewok or a game engine that exports VS projects. But I am not an expert on this subject.

Can anyone with experience help us with some advice?

Thanks

What do you mean by ‘port to Visual Studio’, exactly?

Im assuming its not just Visual Studio - Unity integration you are looking for, since thats a builtin Unity feature as of 2.6 .

There is no easiest way to do it as you will basically rewrite large parts of the project for an all new engine. Independent of the way you use, be prepared to invest a lot of time, you will have to implement new things, at worst a massive amount of new things.

We need to be able to compile a Windows executable from within Visual Studio.

As far as I know, the current VS-Unity functionality is just the ability to edit Unity scripts using the VS editor. Am I wrong?

Thats correct, when you use Unity you can only generate the game through unity.

You will have to port the game to an all new engine

So we were under the right impression about our need. Either a VS game-framewok or a game engine that exports a VS project.

The game is a basic board game. Therefore we need a basic framework or engine, no need for physics, network, terrain etc. Just 3D rendering with decent shaders, directional lights and hopefully javascript support.

C# engines commonly don’t support scripting languages as there is little sense to it, as C# itself can be used as scripting language.
I’m actually not aware of one that offers what you want.

If you want to go with a C++ engine, then you will have to rewrite your game from ground up for the new technology.
In that case you might find some technology with some javascript alike support (your unity scripts are still useless, even if you find one) or you can integrate it yourself as you work with sources then.

Unity’s Javascript implementation appears to be pretty non-standard so even if you found a Javascript 3D engine, it’s probably going to mean rewriting it heavily.

You can use Visual Studio as an IDE for javascript, and it will even provide some intellisense (since Javascript is a dynamically typed language, it can’t do the kind of intellisense it can do with C#) but it’s not going to compile Javascript into a Windows executable.

In short, you’re going to have to port to another language. Perhaps you might want to consider porting to C#, since you can do that without breaking from Unity, and you’ll be able to test your port very easily. Then when you’ve ported from Javascript to C#, it should be much easier to ditch the dependency on Unity and implement an alternative 3D engine.

Of course, you’re going to lose all your scenes and project properties, but if it’s only a simple game, I’m guessing you’ve not used much of that.

I guess it would be easier to port our javascripts to C# than rewrite everything.

In that case, which C# engines or frameworks would you recommend?

Well there are basically two I would be willing to recommend:

NeoAxis and Truvision3D, likely more the second one in this case

In either case, you can save the time of porting your JS code until you learned enough so you know how to write c# code for these technologies, because a straight port within Unity does not make much sense as the unity things don’t exist outside of unity normally.

Thank you very much dreamora