Sign in to follow this  

Starting over...

This topic is 3837 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

Until about a year ago I did a lot of work on my C++ game, Archipelago (entered for 4E5 I think). But then I got involved in other stuff and in the mean time I havea PC without a Win32-able C++ compiler as I decided to go legit with software and delete VC++6 in favour of VisualC++ Express, which doesn't do Windows programming. Now I'm considering coming back to game development, perhaps. I have a few options: 1)Resume the current project. It was quite far along but I would have to get a C++ compiler and get it set up to compile against Win32 and DX8 - and getting the DX8 can't be simple. Plus, I was getting sick of DX8 a couple of years ago. 2)Start over in C++, with DX9/10. Get a compiler that will work with these and start a new project, possibly recycling things I already have. 3)Start over in C#. I'm quite interested in .NET and it's defitely a viable option these days for writing a fast game, especially since pushing the limits of hardware is never my aim. But writing all the basic stuff like a D3D wrapper, GUI, etc just seems dull, I've done it before. 4)Start over in C#/C++ using a free game engine. I don't know what's popular and free these days -and I don't know if there are many for C# yet. Lots of people used them for 4e5 entries both C++ and Java I think. I don't know what I need - certainly I don't want to write a 3D engine in any way! So I'd be interested to hear any thoughts on any of these options. For those that don't remember me when I used to be on GD a lot, I'm a profesional developer who has worked in games and non-games programming. I'd consider myself at expert level in C++, competent in Java and a bit of a C# rookie. I've worked on major projects alone before including a 3D racing game and RTS, both from scratch. Thanks.

Share this post


Link to post
Share on other sites
Quote:


VisualC++ Express, which doesn't do Windows programming.



Yes it does, with a bit of work.

I'd say that if you have a large code base that is easy to port (and porting DX8 to DX9 should be fairly easy), you should do that instead of writing everything from scratch. But if your goal is more to make a game and not learn graphics/coding techniques, using an existing engine would be easier. I think there's a .NET version of Ogre, maybe you should check it out.

Share this post


Link to post
Share on other sites
Quote:
Original post by niteice
Have you considered XNA?
I don't know anything about XNA. Does it work with VC# Express? How mature is it? Is it DX10? CAn you provide me with a good link to read about it and see a good tutorial?

Share this post


Link to post
Share on other sites
Have you considered using Irrlicht or Ogre3D with C++? :D

Though it would be fun to try new things like C# I think it is still inferior to C++ in terms of performance and compatibility.

Share this post


Link to post
Share on other sites
Quote:
Original post by BlindSide
Have you considered using Irrlicht or Ogre3D with C++? :D

Though it would be fun to try new things like C# I think it is still inferior to C++ in terms of performance and compatibility.
Have you any idea how hard it is to use up all the CPU on a modern PC? The only way I could write a game in C# which finds performance to be an issue is if I write it really badly. And then it would still be really badly written C++ game. Even the AAA titles run on not-brand-new PCs. Performance is not an issue, and compatibility probably isn't either. The only people who will play anything I write are game developers, who are likely to mostly have XNA-capable PCs. Check out entries in 4e5/4e6 and you'll see many impressive entires using Java & C#.

Share this post


Link to post
Share on other sites
Quote:
Original post by mercurium
With XNA, I believe you can only use XNA Studio Express. here's the link. [smile]


I had a bit of a look around and XNA is quite interesting. I'm not quite sure which of these categories it falls into yet though:

a)GameMaker crossed with C# to form some sort of BlitzBasic type thing
b)A low-level game engine written in C#.

Share this post


Link to post
Share on other sites
Quote:

I think it is still inferior to C++ in terms of performance and compatibility.

That kind of blanket statement is completely meaningless. C++ and C# have very different performance characteristics, they are both "slower" or "faster" than the other for particular implementations of particular techniques on particular platforms, and they both do some things better than the other. To make a statement as broad as you've made suggests that you're just repeating information that was incorrect, or that you're not fully understanding the scope of the benchmarks you used to come to that conclusion.

Quote:

I don't know anything about XNA. Does it work with VC# Express? How mature is it? Is it DX10? CAn you provide me with a good link to read about it and see a good tutorial?

XNA works with VC# Express (it requires it to be installed, in fact). It's mature enough to be usable, but has some work ahead of it. Since it's designed primarily to be an Xbox 360 API, it does not support D3D10.

Quote:

a)GameMaker crossed with C# to form some sort of BlitzBasic type thing
b)A low-level game engine written in C#.

I don't think it's really either. It's not really very "GameMaker" like, as you still write a lot of C# code. It doesn't have a "point and click" front-end for connecting game compenents and logic together. It's not really large enough to be considered an "engine," either. It's more like an alternate version of Managed DirectX that is cleaned up a bit and designed for the least-common-denominator of Xbox 360 and Windows compatibility.

Quote:

Now I'm considering coming back to game development, perhaps. I have a few options:

If you stick with C++, I would advocate against throwing your code away. Even if you move to C#, you can probably port a good portion of the code if you pay attention (naive, direct ports of the code usually don't take C#'s different performance characteristics into account, but those are usually easy enough to isolate and refactor after the fact).

Share this post


Link to post
Share on other sites
Quote:
Original post by d000hg
Quote:
Original post by mercurium
With XNA, I believe you can only use XNA Studio Express. here's the link. [smile]


I had a bit of a look around and XNA is quite interesting. I'm not quite sure which of these categories it falls into yet though:

a)GameMaker crossed with C# to form some sort of BlitzBasic type thing
b)A low-level game engine written in C#.


XNA is:
- the XNA Framework, which is basically the successor of MDX 2.0. Or in other words, a DirectX 9.0 SDK for .NET languages.
- XNA Game Studio Express, which is an add-in for Visual C# 2005 Express that makes it possible to add textures, shaders and 3d models in various file formats into the project tree. They'll automatically be converted into a Microsoft-defined format and copied to the output folder when you compile. The XNA Framework then has some utility classes that can read this Microsoft-defined format. Using this part of XNA GSE is optional, but saves time for simple projects.

And, to be accurate, XNA also is a marketing term applied to anything related to recent Microsoft game technologies, including DirectX 10.

-Markus-

Share this post


Link to post
Share on other sites
Quote:
Original post by Gage64
Quote:


VisualC++ Express, which doesn't do Windows programming.



Yes it does, with a bit of work.
That is the single most useful thing I've found out this year!

Share this post


Link to post
Share on other sites
I installed the XNA stuff and created a new project based on thir space ship sample. But it appears I have to have an XBOX controller. Niether keyboard nor my USB gamepad do anything. Is this a limitation of XNA or just their demo - since XBOX supports mouse/keyboard I hope XNA does too, else it is a bit useless for me.

Share this post


Link to post
Share on other sites
Quote:
Original post by d000hg
I installed the XNA stuff and created a new project based on thir space ship sample. But it appears I have to have an XBOX controller. Niether keyboard nor my USB gamepad do anything. Is this a limitation of XNA or just their demo - since XBOX supports mouse/keyboard I hope XNA does too, else it is a bit useless for me.


XNA definitely supports the keyboard and the 360 controller on the PC and I'm 99% sure it does NOT support anything but the 360 controller on the XBox 360.

Share this post


Link to post
Share on other sites
Quote:
Original post by d000hg
So there is no support for mouse or non-360 game pads at all?


There is support for the mouse. It's actually called Mouse in Microsoft.Xna.Framework.Input. You can use (natively) a mouse, keyboard, and up to 4 Xbox 360 controllers. You can also integrate DirectInput (or other managed IO library) to gain access to non-Xbox 360 controllers. The reason for this is the input in XNA is built on top of XInput which is for Xbox 360 controllers only. Plus Microsoft has recently been moving towards the notion of a "standard" in terms of PC gaming technologies and hardware.

Also if you have more questions about XNA, feel free to check out the forums at creators.xna.com. You'll find plenty of XNA enthusiasts such as myself as well as a few members of the XNA team.

Share this post


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