Java游戏引擎 [英] Java Game Engines

查看:138
本文介绍了Java游戏引擎的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我最近一直在研究游戏开发,我的第一个编程语言是Java。在玩了很多以c ++开发的精彩游戏后,我想知道为什么Java在游戏行业中没有大量使用。我查看了jMonkeyEngine 3和其他一些游戏引擎环境,但我看到的屏幕截图远不那么令人惊叹。来自ubisoft的极品飞车追逐形式EA和刺客信条等标题传达了这种真实感。
为什么Java不能生产这样的行业实力游戏?
这是艺术作品吗?

I have been looking into game development recently and my first programming language is Java. After playing many stunning games developed in c++ I wondered why Java is not heavily used in the games industry. I looked at jMonkeyEngine 3 and a few other game engine environments but the screenshots I saw are far less stunning. Titles like Need for Speed Hot pursuit form EA and Assassins Creed from ubisoft convey such realism. Why can't Java produce such industry strength games ? Is it the art work?

Java和C#具有自动垃圾收集功能,而c ++则没有。程序员必须更加关注内存使用情况,以及avoud悬空指针等。

Java and C# has automatic garbage collection and c++ doesn't. The programmer has to pay closer attention to memory usage to avoud dangling pointers and so on.

谢谢大家。

推荐答案


Java和C#有自动垃圾
集合而c ++没有。
程序员必须密切关注
内存使用情况以及悬挂
指针等等。

Java and C# has automatic garbage collection and c++ doesn't. The programmer has to pay closer attention to memory usage to avoud dangling pointers and so on.

你自己已经回答了你的问题。

You yourself have answered your question.

在游戏编程中,垃圾收集不是一个优势。即使Java的性能或多或少与大多数任务的C ++相当,JIT甚至可以进行非常积极的优化,超过静态分析期间可以完成的优化;垃圾收集可以使帧率在最糟糕的时刻下降。

In games programming garbage collection is not an advantage. Even if the performance of Java is more or less in par with C++ for most tasks, and the JIT can even do very aggressive optimizations that beat those that can be done during the static analysis; the garbage collection can make the framerates drop at the worst moment.

此外,对于图形密集型任务,Java不太合适,因为有很多东西被认为是不安全的运行时,因此是被禁止的(比如铸造指针以重新解释数据)。

Also, for graphics intensive tasks Java is not very appropriate, as there are many things that are considered unsafe by the runtime, and thus are forbidden (like casting pointers to reinterpret data).

另一个重要的问题是业内已经解决的知识。 C ++在游戏产业中的惯性是巨大的。今天所有的游戏开发者都知道C和C ++。拥有一个庞大的开发人员池来减少管理危险,这是关键人员离开公司。

Another important matter is the already settled know how in the industry. The inertia of C++ in the games industry is huge. All game developers today know C and C++. Having a large developer pool to hire from lessens one of the management hazards that is key people leaving the company.

尽管如此,已经有一些成功的游戏与一些部分用Java编写,如吸血鬼:化妆舞会 - 救赎

But despite that, there have been some successful games with some parts written in Java, like Vampire: The Masquerade - Redemption.

Minecraft 这样的更新游戏是完全用Java编写;但它没有最先进的图形,因为重点放在虚拟环境的动态性质上。

A more recent game like Minecraft is written completely in Java; but it does not feature state of the art graphics, as the emphasis is put more into the dynamic nature of the virtual environment.

许多其他游戏和引擎都有运行时支持基于高性能渲染和网络平台(用C / C ++编写)构建的托管(安全自动内存分配和集合)脚本语言,如虚幻引擎

And many other games and engines have a runtime that supports a managed (safe automatic memory allocation and collection) scripting language built on top of a high performance rendering and networking platform (written in C/C++), like Unreal Engine for example.

这篇关于Java游戏引擎的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆