Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. Games in C# is it even Possible

Games in C# is it even Possible

Scheduled Pinned Locked Moved The Lounge
csharpjavagame-devquestion
73 Posts 32 Posters 7 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Jorgen Sigvardsson

    If it was, we would've seen hordes of games written in C#, wouldn't we? It may be *possible*, but I don't think it's *feasible*. There is no room for missing time slots in games. It's the closest thing to a hard real time system you'll on a regular PC. Ask any gamer about the slightest performance drop for just milliseconds. A game with such characteristics would be deemed "CRAP!" in the first review...

    V Offline
    V Offline
    V 0
    wrote on last edited by
    #25

    Jörgen Sigvardsson wrote:

    If it was, we would've seen hordes of games written in C#, wouldn't we?

    as I already stated further in the thread. For speedy games you need C/C++, but for slower games C# will do just fine... eg. Leisure suit Larry 9 could be written in C" perfectly. Doom 4, Need For Speed Hot Pursuit 3 and the likes, could not...

    I've found a living worth working for, but I haven't found work worth living for. :beer:
        :jig:

    J 1 Reply Last reply
    0
    • C Christian Graus

      Chona1171 wrote:

      but be honest if you have a killer PC and a copy of Elder Scrolls of Oblivion you wont be playing Tetris will you.

      I have several 'killer' PCs, and I tend to play old games on MAME (rarely) and the solitaire variants that come with the OS.

      Chona1171 wrote:

      I am talking about games that are selling now.

      When someone actually comes up with a good idea for a game, it will sell like crazy, just like Tetris did. In the meantime, it'll all be about how many polygons are on the screen, although games like Age of Empires continue to sell AFAIK, and they aren't any great feat, graphics wise.

      Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

      L Offline
      L Offline
      L Viljoen
      wrote on last edited by
      #26

      What does Microsoft MVP Stand for? Yea good ideas sells best. but I got a real bummer some time ago. I dont know if you are familiar with the program MXIT that is like an online chat program. Well after I finished my Java2 (ME)I went and did some research and was busy with a program on the same concept, and I was quite soem pages of code into the program, when my good friend showed me the mixit program. Damn I though I was being original.

      Oliekrokenosterpikkelikkeastrysvoel

      C 1 Reply Last reply
      0
      • L L Viljoen

        What does Microsoft MVP Stand for? Yea good ideas sells best. but I got a real bummer some time ago. I dont know if you are familiar with the program MXIT that is like an online chat program. Well after I finished my Java2 (ME)I went and did some research and was busy with a program on the same concept, and I was quite soem pages of code into the program, when my good friend showed me the mixit program. Damn I though I was being original.

        Oliekrokenosterpikkelikkeastrysvoel

        C Offline
        C Offline
        Christian Graus
        wrote on last edited by
        #27

        Chona1171 wrote:

        What does Microsoft MVP Stand for?

        It means I help people in forums a lot.

        Chona1171 wrote:

        Damn I though I was being original

        Yeah, that's the tough bit, for sure.

        Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

        L 1 Reply Last reply
        0
        • J Jorgen Sigvardsson

          Marc Clifton wrote:

          A game is killer because of certain qualities that frankly, nobody has been able to identify, that I know of.

          Indeed. I play Unreal Tournament - the first edition (released in 1999 I believe, or was it 1998?). Looks like crap by modern standards, but yet it's the only playable FPS game out there. Not only does UT kill manhours, it also allows you to kill! :-D

          L Offline
          L Offline
          L Viljoen
          wrote on last edited by
          #28

          Yup we just cant get rid of those legends, I still enjoy it, the speed and stability proves to be a winning combination in 3D games. It actually requires skill. I still play Quake 3 LAN tournaments and never get bored, because I can still get so much better in it.

          Oliekrokenosterpikkelikkeastrysvoel

          1 Reply Last reply
          0
          • C Christian Graus

            Why ? C# can handle pointers and memory allocation, BTW.

            Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

            Q Offline
            Q Offline
            QuiJohn
            wrote on last edited by
            #29

            Christian Graus wrote:

            Why ?

            Possibly because C# has been shown to be about twice as slow as C++? For a time critical app like a 3D game, that might be important.

            C C B 3 Replies Last reply
            0
            • L L Viljoen

              I have been studying Information Systems programming for two years now, but have always been intrigued by games programming, now there is a campus opening in SA that offers C# 3D Games Programming using Direct X. Now this all sounds very cool since I am a great fan of Java and C# but does anyone know is it possible to create a good game in C# that can compete in the market?

              Oliekrokenosterpikkelikkeastrysvoel

              A Offline
              A Offline
              Arjan Schouten
              wrote on last edited by
              #30

              Check this[^] out. It is a site mostly dedicated to Managed DirectX programming, here you will find some answers. Hope it helps.

              Arjan

              S 1 Reply Last reply
              0
              • C Christian Graus

                Chona1171 wrote:

                What does Microsoft MVP Stand for?

                It means I help people in forums a lot.

                Chona1171 wrote:

                Damn I though I was being original

                Yeah, that's the tough bit, for sure.

                Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                L Offline
                L Offline
                L Viljoen
                wrote on last edited by
                #31

                Do you know how good in Java - C# interop. I am a java expert but there are some classes in the .NET framework that I will find very usefull

                Oliekrokenosterpikkelikkeastrysvoel

                1 Reply Last reply
                0
                • L L Viljoen

                  And a 100mb hard drive went for a shitload of money. now terabyte drives are making the scenes. I even find that people arent using the normal CD's anymore its all DVD baby!!!!!!! and Blue ray is out but still very expensive, but I give it about 2 years to become a normal house hold item. My first PC was the ZX spectrum.

                  Oliekrokenosterpikkelikkeastrysvoel

                  Q Offline
                  Q Offline
                  QuiJohn
                  wrote on last edited by
                  #32

                  Chona1171 wrote:

                  Blue ray is out but still very expensive, but I give it about 2 years to become a normal house hold item.

                  Not unless them and the HD-DVD camp get their crap together and consolidate.

                  L 1 Reply Last reply
                  0
                  • C Christian Graus

                    True, but it's the part you think of when you think of performance. I doubt that C# is much behind C++ in terms of ability to crunch numbers.

                    Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                    J Offline
                    J Offline
                    Jorgen Sigvardsson
                    wrote on last edited by
                    #33

                    Exactly, it's written in C/C++ as a thin layer around the graphics drivers. .NET accessibility is probably just a thin layer around the native DirectX layer, giving the 4-5% performance penalty. It's all the other stuff around the DirectX, where .NET will hurt performance. For instance, handling trees, queues, lists, arrays, will always be faster in native code. Native code doesn't have to go through all the hoops .NET lays out (security, memory management, exception handlers (yes, these are serious performance hoggers - even so in C++ apps), etc). Native apps also have less memory overhead, allowing for less page faults and better cache management which are probably the biggest performance killers. If C#/.NET had been a viable option for games, we would've seen them by now. (No, Tetris doesn't count ;))

                    S 1 Reply Last reply
                    0
                    • C Christian Graus

                      True, but it's the part you think of when you think of performance. I doubt that C# is much behind C++ in terms of ability to crunch numbers.

                      Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                      J Offline
                      J Offline
                      Jim Crafton
                      wrote on last edited by
                      #34

                      Hmm, I wouldn't bet a whole lot on that. For high performance number crunching, I'll bet C# might run into issues. For example the physics engine, or maybe the collision engine. Perhaps if there's an advanced AI engine for game play, and that has to do a lot of fast number crunching to determine things, or movements?

                      ¡El diablo está en mis pantalones! ¡Mire, mire! Real Mentats use only 100% pure, unfooled around with Sapho Juice(tm)! SELECT * FROM User WHERE Clue > 0 0 rows returned Save an Orange - Use the VCF!

                      1 Reply Last reply
                      0
                      • Q QuiJohn

                        Christian Graus wrote:

                        Why ?

                        Possibly because C# has been shown to be about twice as slow as C++? For a time critical app like a 3D game, that might be important.

                        C Offline
                        C Offline
                        Christian Graus
                        wrote on last edited by
                        #35

                        David Kentley wrote:

                        Possibly because C# has been shown to be about twice as slow as C++?

                        Shown by who ? C++ programmers who don't know how to use C# ? I write image processing software. I implimented an algorithm in C#, and moved it to C++. It went from 15 seconds to "I gave up after a day". I know C++ better than C#, but I'd just ported the code holus bolus, when I went back and looked at it, I could see why, and I changed the way my algorithm was implimented, and ended up with something slightly faster, as in 12 seconds or something. I still use that C++ code in my C# app, just to save those few seconds, but most of my processing is a lot less intense than that lot was ( HDR image merging ), and it works just fine in C#.

                        Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                        E Q 2 Replies Last reply
                        0
                        • V V 0

                          Jörgen Sigvardsson wrote:

                          If it was, we would've seen hordes of games written in C#, wouldn't we?

                          as I already stated further in the thread. For speedy games you need C/C++, but for slower games C# will do just fine... eg. Leisure suit Larry 9 could be written in C" perfectly. Doom 4, Need For Speed Hot Pursuit 3 and the likes, could not...

                          I've found a living worth working for, but I haven't found work worth living for. :beer:
                              :jig:

                          J Offline
                          J Offline
                          Jorgen Sigvardsson
                          wrote on last edited by
                          #36

                          V. wrote:

                          eg. Leisure suit Larry 9 could be written in C" perfectly.

                          I'd like to see it to believe it. :) Remember, any glitch in the animation will make the game look like crap. You can't have the garbage collector kick in and practically halt the game. Programmers are far more tolerable of this kind of behaviour than gamers are. Could you imagine the reaction of a gamer if a game started to act like Visual Studio 2005!?

                          V. wrote:

                          Doom 4

                          I suspect you meant either Doom 3 or Quake 4. :~ I believe they shouldn't have been written at all. You'd have to search hard to find crappier games. Shitslow, and absolutely no value for the money.

                          V 1 Reply Last reply
                          0
                          • Q QuiJohn

                            Chona1171 wrote:

                            Blue ray is out but still very expensive, but I give it about 2 years to become a normal house hold item.

                            Not unless them and the HD-DVD camp get their crap together and consolidate.

                            L Offline
                            L Offline
                            L Viljoen
                            wrote on last edited by
                            #37

                            Yea the consumers always have top suffer under the companies red tape. But I also thing blue ray might be a problem cos I mean a tiny scratch on the disk and you are out of a GIG of Data. I have done a little bit of PC Forensics and Recovery and as far as I understand it is impossible to recover from a damaged surface.

                            Oliekrokenosterpikkelikkeastrysvoel

                            1 Reply Last reply
                            0
                            • J Jorgen Sigvardsson

                              V. wrote:

                              eg. Leisure suit Larry 9 could be written in C" perfectly.

                              I'd like to see it to believe it. :) Remember, any glitch in the animation will make the game look like crap. You can't have the garbage collector kick in and practically halt the game. Programmers are far more tolerable of this kind of behaviour than gamers are. Could you imagine the reaction of a gamer if a game started to act like Visual Studio 2005!?

                              V. wrote:

                              Doom 4

                              I suspect you meant either Doom 3 or Quake 4. :~ I believe they shouldn't have been written at all. You'd have to search hard to find crappier games. Shitslow, and absolutely no value for the money.

                              V Offline
                              V Offline
                              V 0
                              wrote on last edited by
                              #38

                              no I meant Doom 4 as in a future version as with Larry 9 which doesn't exist yet (I think :-))

                              I've found a living worth working for, but I haven't found work worth living for. :beer:
                                  :jig:

                              1 Reply Last reply
                              0
                              • L L Viljoen

                                I have been studying Information Systems programming for two years now, but have always been intrigued by games programming, now there is a campus opening in SA that offers C# 3D Games Programming using Direct X. Now this all sounds very cool since I am a great fan of Java and C# but does anyone know is it possible to create a good game in C# that can compete in the market?

                                Oliekrokenosterpikkelikkeastrysvoel

                                N Offline
                                N Offline
                                Nemanja Trifunovic
                                wrote on last edited by
                                #39

                                I am not a game programmer, but have worked on some soft real-time systems that have similar issues. The main problem with using C# or any other GC language/platform for such tasks is managing resources. For a real-time software, it is crucial to have a tight control over resources - i.e. you don't simply call new to get a chunk of memory - instead, you preallocate memory chunks when the program starts and then manage them during run-time. In my experience, it is much easier to do with C or C++ than with something like Java or C#. Not to mention the annoying fact that many string operations with Java/C# result in a creation of a brand new string object, but that is probably not a big issue with games - for the language processing applications I am working on, it was practically a show-stopper.

                                Programming Blog utf8-cpp

                                1 Reply Last reply
                                0
                                • L L Viljoen

                                  I have been studying Information Systems programming for two years now, but have always been intrigued by games programming, now there is a campus opening in SA that offers C# 3D Games Programming using Direct X. Now this all sounds very cool since I am a great fan of Java and C# but does anyone know is it possible to create a good game in C# that can compete in the market?

                                  Oliekrokenosterpikkelikkeastrysvoel

                                  J Offline
                                  J Offline
                                  Jon Gohr
                                  wrote on last edited by
                                  #40

                                  Check out the following link for some C# and Managed DirectX related information. www.thezbuffer.com[^] Microsoft also has a site that has a couple of simple games (space invaders, pong, etc.) written in C# and GDI+. www.upgradeyourgame.com[^]

                                  1 Reply Last reply
                                  0
                                  • L L Viljoen

                                    I have been studying Information Systems programming for two years now, but have always been intrigued by games programming, now there is a campus opening in SA that offers C# 3D Games Programming using Direct X. Now this all sounds very cool since I am a great fan of Java and C# but does anyone know is it possible to create a good game in C# that can compete in the market?

                                    Oliekrokenosterpikkelikkeastrysvoel

                                    E Offline
                                    E Offline
                                    El Corazon
                                    wrote on last edited by
                                    #41

                                    Chona1171 wrote:

                                    Now this all sounds very cool since I am a great fan of Java and C# but does anyone know is it possible to create a good game in C# that can compete in the market?

                                    I've long held any language can be used for just about anything, the question is about quality and efficiency. Most processing systems (CPUs) are fast enough to make up for most deficiencies in any language **IF** you understand what those are and how to get around them, which brings it back to you and your skill. Competing in the market has less to do with language and more to do with skill and uniqueness of the game. A truly unique game does not need efficient operation, see the first Myst game. by holding a new and unique place in the marketplace you can sell easier. IF, however, you want to compete against say the Doom series directly, that takes skill and guts. Many games used to be written in assembly for speed, but the time to write a game and bring it to market was too extensive. Then came high level languages with hand-optimized assembly for some of the more commonly called routines. But even that took too much time for fine tuning. Optimizing compilers got good enough hand-optimized assembly became rare. So the long and short... Can C# compete? yes, with the right skill, design and marketable concept. That is a tough combination no matter what you program for, or on.

                                    _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                    1 Reply Last reply
                                    0
                                    • A Arjan Schouten

                                      Check this[^] out. It is a site mostly dedicated to Managed DirectX programming, here you will find some answers. Hope it helps.

                                      Arjan

                                      S Offline
                                      S Offline
                                      Steve Maier
                                      wrote on last edited by
                                      #42

                                      Yea, you beat me to posting that. They have links to game engines all built with .NET and Managed DirectX. It's a pretty nice site.

                                      Steve Maier, MCSD MCAD MCTS

                                      1 Reply Last reply
                                      0
                                      • C Christian Graus

                                        DirectX in C# is apparently only 4-5% slower than C++.

                                        Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                                        E Offline
                                        E Offline
                                        El Corazon
                                        wrote on last edited by
                                        #43

                                        Christian Graus wrote:

                                        DirectX in C# is apparently only 4-5% slower than C++.

                                        and if you visit the Microsoft Labs presentations at the Game Developer's Conference (GDC) you will hear them say that most games are innefficient. This actually is not surprising, if it takes a year to write a program to reach market (and it usually takes more), then technology has changed in the mean time. Many companies schedule rewrites for technology advances into the game schedule, but that is difficult. So most games go into the market at the mid-level of technology because it is too expensive to stay current all the way to market. Give the right skill of the programmer I don't see 4-5% as a show-stopper, per se. Now if you go head-to-head with a skilled 3D programmer, 4-5% handicap hurts.

                                        _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                        1 Reply Last reply
                                        0
                                        • C Christian Graus

                                          David Kentley wrote:

                                          Possibly because C# has been shown to be about twice as slow as C++?

                                          Shown by who ? C++ programmers who don't know how to use C# ? I write image processing software. I implimented an algorithm in C#, and moved it to C++. It went from 15 seconds to "I gave up after a day". I know C++ better than C#, but I'd just ported the code holus bolus, when I went back and looked at it, I could see why, and I changed the way my algorithm was implimented, and ended up with something slightly faster, as in 12 seconds or something. I still use that C++ code in my C# app, just to save those few seconds, but most of my processing is a lot less intense than that lot was ( HDR image merging ), and it works just fine in C#.

                                          Christian Graus - Microsoft MVP - C++ Metal Musings - Rex and my new metal blog

                                          E Offline
                                          E Offline
                                          El Corazon
                                          wrote on last edited by
                                          #44

                                          Christian Graus wrote:

                                          but most of my processing is a lot less intense than that lot was ( HDR image merging ), and it works just fine in C#.

                                          have you tried the C# Microsoft Research Accelerator? I would expect for HDR image manipulation it would work great. It moves C# to utilizing both CPU and GPU for parallel processing. http://channel9.msdn.com/wiki/default.aspx/Accelerator.HomePage[^] I haven't used it yet, but it is the first item of C# that made me do a double take. That is worth learning a new language (not that I have had any time to).

                                          _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                          S G 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups