Java or C++?

Discussion in 'Programming' started by GoldFire, May 24, 2006.

  1. #1
    I am planning on making a 3D software game for at least Windows that would be connected to other users online similar to an MMO. I have been planning on developing in Java, but was wondering if anyone thought C++ would be better for this or Java, and why. Any comments and opinions appreciated, thanks.
     
    GoldFire, May 24, 2006 IP
  2. Phynder

    Phynder Well-Known Member

    Messages:
    2,603
    Likes Received:
    145
    Best Answers:
    0
    Trophy Points:
    178
    #2
    "Better" is such a relative term. How much money, time, expertise, etc do you have? The "better" argument then follows based on the context you have.

    Now, if it were me - I would go with Java. I left the C++ world about 6 years ago and have never felt any anguish because of it. The added benefit with Java is that you can more easily go cross-platform, but like you said - that does not seem to be a top priority.

    Look for some open source MMO environments in Java - I am sure they exist. That would kick start your development!
     
    Phynder, May 24, 2006 IP
  3. GoldFire

    GoldFire Peon

    Messages:
    51
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Thanks for the insight.
     
    GoldFire, May 24, 2006 IP
  4. daboss

    daboss Guest

    Messages:
    2,249
    Likes Received:
    151
    Best Answers:
    0
    Trophy Points:
    0
    #4
    if you're planning to develop a game and performance is a strong consideration, then i strongly suggest c++.

    java has it's overall advantages but where performance is concerned, it is still no where no c++.
     
    daboss, May 24, 2006 IP
  5. aditya_sfs

    aditya_sfs Peon

    Messages:
    2,271
    Likes Received:
    389
    Best Answers:
    0
    Trophy Points:
    0
    #5
    Hey if you are going for game development ..... i think you should use C++ because naturally for game programming u will need to integrate with OpenGL or DirectX. So u can do it in C++.

    Java provides easy API for communication, but then it will be difficult for you to implement graphics...

    C++ can provide both graphics and communication ...so C++ is better :)
     
    aditya_sfs, May 24, 2006 IP
  6. clancey

    clancey Peon

    Messages:
    1,099
    Likes Received:
    63
    Best Answers:
    0
    Trophy Points:
    0
    #6
    I would my vote to the C++ supporters. Games require good performance and, occasionally, lower level tweaking to ensure they work quickly on less powerful machines. C++ has evolved over a few decades of use to be able to handle these problems and there is a rich library of solutions -- some of which are not terribly expensive and blend well into proprietary projects. Java may be cross platform, but java programs never perform as well on my computer -- a dual Athlon 2.8 with 4 gigs of RAM -- as C++ programs.
     
    clancey, May 25, 2006 IP
  7. LucasMS

    LucasMS Peon

    Messages:
    616
    Likes Received:
    11
    Best Answers:
    0
    Trophy Points:
    0
    #7
    C++ , its soooo fast than Java in games.
     
    LucasMS, May 25, 2006 IP
  8. d16man

    d16man Well-Known Member

    Messages:
    6,900
    Likes Received:
    160
    Best Answers:
    0
    Trophy Points:
    180
    #8
    C++...for the same reasons everyone has stated above.
     
    d16man, May 25, 2006 IP
  9. hextraordinary

    hextraordinary Well-Known Member

    Messages:
    2,171
    Likes Received:
    115
    Best Answers:
    0
    Trophy Points:
    105
    #9
    The performance difference between Java and C++ is not as big as it used to be.
    If you are developing under the .NET framework there is no difference at all.

    Bottom line, you should develop in the language you feel most comfortable with and more knowledgeable about.
     
    hextraordinary, May 25, 2006 IP
  10. fesite

    fesite Banned

    Messages:
    31
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #10
    I recommend c++.
     
    fesite, May 27, 2006 IP
  11. Bartbos

    Bartbos Peon

    Messages:
    29
    Likes Received:
    2
    Best Answers:
    0
    Trophy Points:
    0
    #11
    3D game == C++
     
    Bartbos, May 27, 2006 IP
  12. daboss

    daboss Guest

    Messages:
    2,249
    Likes Received:
    151
    Best Answers:
    0
    Trophy Points:
    0
    #12
    err... i don't think so... ;)
     
    daboss, May 27, 2006 IP
  13. GoldFire

    GoldFire Peon

    Messages:
    51
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #13
    Thanks for the advice everyone:)
     
    GoldFire, May 27, 2006 IP
  14. pricethat

    pricethat Active Member

    Messages:
    10
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    86
    #14
    I just felt this incredible urge to offend every java fanatic out there and add another C++ vote. Can't believe anyone would ever want to develop a game in java. Unless of course you are talking 3D Tetris...........:D
     
    pricethat, May 29, 2006 IP
  15. rickbkis

    rickbkis Peon

    Messages:
    45
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #15
    A lot of the PopCap games were coded in Java, but I think they've gone over to ActiveX (C++).

    I was working on a large scientific visualization project (molecular modeler with 3D visualization component), and we had this very discussion, since we were about to re-architect the system.

    We had several Java advocates, and we polled several companies/organizations that had done this sort of thing in Java. Turned out many of them were canning the Java implementation and rewriting in C++, precisely because of scalability and performance issues.

    So, we stuck with C++ (and a cross-platform GUI kit, since it had to work on Windows and Unix.)

    That was five years ago. Today, things might be different. Java has gone through a lot of improvements, machines are faster, and the UI component of Eclipse (SWT?) looks much more streamlined and robust than Swing.

    So, you'll have to research this. Do some test/proof of concept apps. Most of your 3D kit will probably be written in C++, anyway, so maybe all the Java is doing is providing windowing and control functionality, in which case it might work reasonably well. OTOH, if you have to get down and do lower level graphics, you might be penalized in Java.

    rickb
     
    rickbkis, May 29, 2006 IP
  16. genexk

    genexk Peon

    Messages:
    5
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #16
    i heard there's one java 3d game, but since i never played it i don't know what the performance would be.
    from my past experience with java, i'd say it's simply not fast enough for any 3d game
     
    genexk, Jun 12, 2006 IP
  17. Albert_chu

    Albert_chu Peon

    Messages:
    47
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #17
    its obvious that you would use c++ if your making a 3d-game??
     
    Albert_chu, Jun 14, 2006 IP
  18. bala

    bala Well-Known Member

    Messages:
    767
    Likes Received:
    24
    Best Answers:
    0
    Trophy Points:
    160
    #18
    when it comes to games, 3D graphics development all the integration between openGl, DirectX.. etc.. and you have only two choices c++ or java. Then better go for C++.
     
    bala, Jun 30, 2006 IP