Jump to content

C++ and 0 A.D.


Recommended Posts

The number of serious 3D game engines written in anything but C or C++ is not very large. Both of these languages can be quite close to the hardware, which is sometimes needed to make things performant (yes, we aren't there yet, but that is just lots of work). With Java you'd either be trying to work around the garbage collector by keeping memory buffers yourself, or having to deal with those GC pauses. Python still has that global interpreter lock (which is just as bad as it sounds), and we do already have another scripting language with quite some code written in it, and it works well enough that nobody really considers porting it to something else that will just have different drawbacks a worthwhile effort.

Mostly C++ is one of the very few choices for a game engine that makes sense (mostly due to being close to the hardware if needed, and being able to use libraries). Java might be a fine choice for business applications where you can just throw bigger servers at it and tune the GC until it works good enough, but for a 3D game (engine) it might not be the best choice. For Python vs JS the former might be nicer from a language standpoint, but that doesn't change the issue of existing code that works, also we do benefit from JS engine optimization efforts.

  • Like 7
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...