Jump to content
  • Advertisement
Sign in to follow this  
CProgrammer

Windows Longhorn and Game Development

This topic is 5116 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I just have a couple of questions concerning the subject. First off Im working on a pretty big game project and engine at the moment. Ive been on it for month and will be on it for quite some more time. Now Im wondering as to what the impact on developers will be. Obviously not even microsoft can force all the game companies to switch to C#. Anybody here have any insite as to wether game companies will switch? 1.) How will c++ be handled? I heard thingas like windows will popup a warning message telling the user its a risk to open the app. That would be horrible since it looks very unprofessional and may even stop some people from using the software. Is this true and what are game companies going to do? 2.) My game and engine consists of multiple dll's. I dont know too much about c# but is it easily possible to mix c++ and c# dll's. So basically at some point I just use my c++ engine and have a c# game dll. I guess what it comes down to is, how long will programming games in c++ continue to be the standard and a professional looking project. Or will I be overly conservative if I wait longer with a transision? -CProgrammer

Share this post


Link to post
Share on other sites
Advertisement
Quote:

1.) How will c++ be handled? I heard thingas like windows will popup a warning message telling the user its a risk to open the app. That would be horrible since it looks very unprofessional and may even stop some people from using the software. Is this true and what are game companies going to do?


I cant see C++ going away, even in the mid to long term future. For a start there is just too much existing code written in c++. However, more companies will probably start writing managed c++, which is c++ which compiles to .net byte code.

Quote:

2.) My game and engine consists of multiple dll's. I dont know too much about c# but is it easily possible to mix c++ and c# dll's. So basically at some point I just use my c++ engine and have a c# game dll.


If your engine was written in managed c++ it would be very simple to load that up and use it from any other .net lanaguge.

This article talks about what managed c++ is, and about if c++ as a language is going to go away.

Alan

Share this post


Link to post
Share on other sites
Longhorn won't be here for about another year. It is also silly to expect an immediate changeover, even if a technology becomes "obsolete." Therefore, even if there is no future in C++ (a fairly ludicrous suggestion), it'll take upwards of five years for it to die out.

And yes, native apps run unaltered on Longhorn.

Share this post


Link to post
Share on other sites
Game developers need C++ in its plain form for the gamecube and PS2 platforms and presumably their successors. XBOX2 and later may run .NET (?) but since PS2 is the biggest console...
Game developers aren't going to port their C++ across to .NET happily - many would possibly just drop the PC.

Share this post


Link to post
Share on other sites
Thanks for you answers, they make me feel a lot better already.

Oh thanks for the article.

Concerning managed c++: In your opinion is it possible to port large portions of unmanaged c++ code to managed easily?
Are we talking serious work here?
Oh Im using OpenGL, SDL and DirectX in my project.
Will IJW even do my type of project? And are there noticeable drawbacks using IJW?

-CProgrammer

Share this post


Link to post
Share on other sites
Quote:
Original post by CProgrammer
Concerning managed c++: In your opinion is it possible to port large portions of unmanaged c++ code to managed easily?


Well I think one of the best things about the VSNET compiler is the /CLR switch, I find it just phenominal.

Lets say you write your application in unmanaged C++ and when Longhorn comes out you want to have a managed version available for people.

You can compile with the /CLR switch which will let your code run in a managed environment, it's the magic switch! Now obviously you lose a little bit of performance by doing this, but not by a huge amount at all. Of course porting to managed C++ you will get better speed, but if you wanted a temporary solution when Longhorn is launched this is an option.

Also you can wrap your unmanaged C++ libraries with managed C++ and call from there, which you can take into future consideration. I mean Epic, Valve, iD, etc are not going to be re-writing their codebase to managed code any time soon, but I do think that once Longhorn debuts you will see managed versions by wrapping their existing codebase.

Share this post


Link to post
Share on other sites
One of the biggest issues with Longhorn will be the split up of DirectX. Direct3D will become WGF and be used by the desktop. The rest of DirectX is being split up as well. DirectPlay will be superseeded by the xbox live tools. DirectSound and DirectMusic by XACT and DirectShow by a new media SDK. So DirectX as we know it will dissapear.

Within Longhorn the driver architecture is altered so video card driver code is moved from kernal into user space hopefully to cut down on crashes. The graphic card becomes virtualised so you cannot grab all its resources but must share it with other apps. Apps will write to their own back buffers and then these will be amalgamated to make the desktop.

My concern is that WGF may be driven more by the requirements of the OS fancy effects than games - but I may be being paranoid :)

Another issue is Microsofts desire to make graphics cards provide more similar functionality. So say all WGF 1.0 graphic cards will need to be the same. Microsoft would like to do away with the CAPS flags which is the standard way of IHVs adding their own spins. I just cannot see the IHVs going for this. We will see.....

Share this post


Link to post
Share on other sites
Trip99 -- is all of this still slated as part of the 2006 release? Or is some of it going to be released later?

Share this post


Link to post
Share on other sites
Quote:
Original post by Trip99
Another issue is Microsofts desire to make graphics cards provide more similar functionality. So say all WGF 1.0 graphic cards will need to be the same. Microsoft would like to do away with the CAPS flags which is the standard way of IHVs adding their own spins. I just cannot see the IHVs going for this. We will see.....


The IHVs have no choice in the matter, MS define the standard, they have to work with in it, thats the way it is. Going against the grain and not working with MS just isnt an option as you're competitor would jump in and take all the sales.

Still, theres always OpenGL [grin][wink]

Share this post


Link to post
Share on other sites
I believe most of it is 2006. This info came from the GDCE I attended a couple of weeks ago and I am writing it up for my website at the moment. The roll out of the XBox tools for Windows (under XNA) is happening now and over the next few months. The 'getting rid of caps' thing may be longer term.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!