Freigeben über


Games in managed code

A guy on my team just noticed that Arena Wars! is new game writing in managed code…. Has anyone tried it? How is the perf? Does managed code make a good gaming platform?

What are some other grames written in managed code?

Comments

  • Anonymous
    September 28, 2004
    let's hope it's better than ATI's horrible new managed graphics driver software.... It's slow on my dual xeon machine
  • Anonymous
    September 28, 2004
    I wouldn't exactly call it a game, in that it isn't complete, but I have the beginnings of a little Joust clone available from my site.
  • Anonymous
    September 28, 2004
    Arena Wars is pretty solid. I tried the free demo a week or two ago and I didn't notice any problems related to it being managed code. The graphics ran smooth and looked really nice. I hope to see more managed games coming out soon.

    I've got a few graphic demos in C# on my website: http://www.brandonfurtwangler.com but I always wondered if I'd run into trouble on a larger scale. Apparently Arena Wars proves that it could be done.
  • Anonymous
    September 28, 2004
    Nice work Brandon.


    -- Robert
  • Anonymous
    September 28, 2004
    The comment has been removed
  • Anonymous
    September 28, 2004
    Managed code means open your source code,do you really want to?
  • Anonymous
    September 28, 2004
    i don't think it means opening up, you can ngen can't you ?
  • Anonymous
    September 28, 2004
    A reply to matthew - ATI did not create managed driver software, just a control panel utility to change settings that affect how driver works. Essentially, you start it, change few switches off<->on, and close it - settings get saved, driver starts using them.
    There are some rumours that nVidia is working on managed drivers. I think these people are confused and expect this to be nVidia's answer to ATI's managed drivers (that don't exist, see above).

    My personal experience shows that in a scenario where modern cards are used (with latest Vertex and Pixel Shaders) most of the time is spent on the video card, and VERY little on the processor itself, except in AI-heavy scenarios.

    I think managed code is quite a viable alternative for developing many games, but for those needing absolute best performance NOW, C++ is still probably a better choice (note that I say now, not in the future).
  • Anonymous
    September 29, 2004
    On the opening up of your code issue. It is true that it is easier to reverse engineer managed code than native CC++ code because the IL is higher level and the rich metadata. The right answer to this is obfuscation.. here is an option: http://preemptive.com/products/dotfuscator/index.html
    NGen is not a good option as it requires the IL to be shipped as well for resilience reasons.

  • Anonymous
    September 29, 2004
    On the opening up of your code issue. It is true that it is easier to reverse engineer managed code than native CC++ code because the IL is higher level and the rich metadata. The right answer to this is obfuscation.. here is an option: http://preemptive.com/products/dotfuscator/index.html
    NGen is not a good option as it requires the IL to be shipped as well for resilience reasons.

  • Anonymous
    September 29, 2004
    That's cool! Brad did you ever knoe that the great game Quake is re-written in managed C++? I have it and I dont see ANY performance difference.
  • Anonymous
    September 29, 2004
    That's cool! Brad did you ever knoe that the great game Quake is re-written in managed C++? I have it and I dont see ANY performance difference.
  • Anonymous
    September 29, 2004
    I tried out the Arena Wars demo. I really only did it because I heard it was managed code. I was quite impressed. It looks as good as any game I've seen (better than most).

    The 3D graphics run quite smoothly and look great. I'd love to know more about how they built it. I'm assuming they used mananged Direct3D for the graphics. If that's the case then I see no reason not to write a game in .NET unless you're going for ultimate performance like Doom 3 (on my system Doom 3 doesn't ultimately perform though).

    You really should try it out. It's fun to watch the tutorials. They're in German but all the vehicle and building names are still in English. My son gets a kick out of listening to them.

    For those of you that haven't looked it up yet - it's a 3D multi-player sci-fi real time strategy game. It has modes I haven't seen in an RTS before like capture the flag.
  • Anonymous
    September 29, 2004
    The comment has been removed
  • Anonymous
    September 29, 2004
    id didn't do Quake II .NET, Veritgo Software did:

    http://www.vertigosoftware.com/Quake2.htm

    They used the GPL'ed code from id software to do so.
  • Anonymous
    September 29, 2004
    I've also tried the ArenaWars demo. Looks very professional, and I couldn't see any noticable difference between this and any other RTS games I've seen written in other, non-managed languages.

    If anyone is interested, I am also working on a C#/DirectX9 action shooter, similar to StarFox, but with multi-player support (eventually). You can check out the latest info at http://joshuabair.dyndns.org/blog.

    - Joshua
  • Anonymous
    September 29, 2004
    From what I've read on their forums, some of the low level optimizations are done in unsafe code and I believe I saw a mention of Managed C++ (just for the low level stuff). The creators said that the majority of the game code though is in C#.
  • Anonymous
    September 29, 2004
    Point of clarification about the Quake II in MEC++.

    All they did was compile the unmanaged code in VS.NET 2003. They showed that you could run Quake II and host the CLR and do add-ons to Quake II using the .NET features of MEC++.

    They did not, however "rewrite" it to be all .NET/OO.
  • Anonymous
    October 04, 2004
    Optimally the "critical" code should be in C++ just for performance, but the rest, like the "monster" objects and the engine's architecture should be in C#, which will make building mods for these managed games a TON easier because of the rich metadata.

    In addition, scripting languages like "UnrealScript" [for the Unreal engine] are no longer neccesary because you could just expose the engine's API to managed code, and viola... C# mod? VB.Net mod? or even UnrealScript.net mod? ;-)

    I love the whole idea of the CLR being language agnostic.
  • Anonymous
    October 05, 2004
    The comment has been removed