移动到c++;来自java?
我学习java大概有5个月了,在这段时间里,我主要是做游戏。我用java2D做了一个相当不错的游戏,但我想继续做更大更好的事情。。。3D。我开始学习LWJGL(基本上是OpenGL)。在我学习java之前,我要用C++来做3D,我应该移到C++吗?指针真的对大型程序那么重要吗?我还能用C++做任何跨平台的事情吗?还是我被窗户卡住了。如果我被困在windows中,我应该选择c#吗 谢谢 当我说“半途而废”时,我的意思是它很好,我想。如果你想看它,来判断我在2D体验中的位置,你可以这样做: 那么Java可以大规模地进行游戏开发吗 <> P>在我学习java之前,我要用C++来做3D,我应该移到C++吗?p> 有必要考虑了解多种语言 指针真的对大型程序那么重要吗 这个问题毫无意义,所以“不” 然而,C++在游戏中有一些重要的优点:移动到c++;来自java?,java,c++,Java,C++,我学习java大概有5个月了,在这段时间里,我主要是做游戏。我用java2D做了一个相当不错的游戏,但我想继续做更大更好的事情。。。3D。我开始学习LWJGL(基本上是OpenGL)。在我学习java之前,我要用C++来做3D,我应该移到C++吗?指针真的对大型程序那么重要吗?我还能用C++做任何跨平台的事情吗?还是我被窗户卡住了。如果我被困在windows中,我应该选择c#吗 谢谢 当我说“半途而废”时,我的意思是它很好,我想。如果你想看它,来判断我在2D体验中的位置,你可以这样做: 那么J
是的,很努力。C++是它的自我交叉平台,但它只是一种语言。其余部分在库中。只要Java满足您的需要,您就可以使用它。如果你发现你想做的事情是用Java做不到的,那就是我要研究其他选择的重点,除非你的游戏开发是学习编程语言的练习。如果是这样的话,那么,无论如何,试试C++。< /P> 我认为人们从Java转向非字节码编译语言的主要原因是性能和内存使用。所以你应该考虑这是否是你的问题。
关于C++的跨平台能力,您可以编写可用于多个平台编译的便携式C++代码。有一些游戏库可以在SDL或GLUT等多个平台上运行。您可以使用这些工具编写一次游戏,然后针对多个平台进行编译。这种问题更适合于类似游戏开发堆栈交换网站的情况,但我的答案是: 关于你应该使用什么语言:任何东西都可以。是的,C++更快。但是如果你第一次使用C++代码,那么这也是很难的。在C++中,如果你习惯于java语言或Java语言,那么很容易犯很多错误。如果你以前从未使用过C++,那么在C++、java、python或任何其他语言中编写游戏的难度要比C++中的任何时候都要容易得多。 如果你使用Java,你可以使它跨平台。我不是百分之百的支持C语言,因为Mono确实存在,但我不确定用C语言编写的游戏的跨平台功能状态。C++也是跨平台的。 总的来说,如果您以前从未做过跨平台编程,那么在开发软件时可能会遇到一些障碍。你对特定的语言越熟悉,对你来说就越容易
话虽如此,我还是要提醒你不要直接跳进3D游戏,因为你已经说过你还没有完成2D游戏
3D游戏比2D游戏难多了,在制作游戏时,你不应该担心编程问题。你应该专注于编写游戏本身。您将学习如何在实际设计和创建游戏的各种功能时对游戏进行编程。你不应该做另一种事情。 < P>我推荐你学习C++,原因有一个。透视图 <>如果你不尝试C++,你永远也不会意识到当你终于学会C语言时,它是多么的好。p> 我用C++做了20年。我花了数年时间坚持,不放手。终于意识到其他软件公司正在用更高效的语言和更好的SDK编写代码。终于放手了,感觉真好。(尽管有一天我仍然坚持完全编译的C#和确定性内存管理)
<>(我只是半认真的。C++确实应该在你的工具带中作为游戏或系统开发人员)。 < P>好的,请记住C/C++是可移植的编译语言,但是DirectX等3D库不是。我认为使用c/c++和OpenGL是开始游戏3D编程的好地方。但是,编程只是游戏开发的一部分,有很多选择。如果您想制作游戏,您可以研究低成本的引擎,如torque3d或Unity 3D,这些引擎使用易于学习的脚本语言,并具有内置的所有功能,如物理、音频和网络支持。如果你真的想知道如何编程3D图形,这与游戏开发不同,那么像c/c++和OpenGL这样的低级语言是一个很好的起点学习3D编程和C++同时也是一个高阶。 当然,在C++中可以编写跨平台游戏,但你真的不想去那里。严肃地说。
如果你真的想使用的话,可以使用跨平台的框架,但是添加另一个需要学习的东西是通往绝望的必经之路,在你意识到这一点之前,你会想成为更令人兴奋的人,比如注册会计师