[转]Java可以拿來开发游戏吗?
如果有一天,某个软件开发人员对游戏软件设计产生了兴趣,想找个业界的朋友询问游戏软件的开发经验,第一个问题一定是:“我该选择哪一种开发语言呢?”,通常得到的答案只有三个:
1.????? C
2.????? C++
3.????? C 或 C++
这是个非常合理的答案。开发人员不想接触太低阶的组合语言,可是又希望榨干硬件的每一分资源,C或C++是最能满足这个条件的语言。Java语言出现在1995年左右,当时的硬件条件加上早期Java本身的成熟度的不足,导致“Java = 龟速”这个恒等式烙印在很多开发人员的心里,所以自然无法成为游戏开发的主流语言。
這几年來,JIT Compiler技术的改良、HotSpot技术的精进,还有许多探讨如何撰写更有效率Java的书籍充斥于书店,加上硬件的进步,其实Java早就具备开发游戏的实力了,只是需要更多成功范例來说服开发人员。http://community.java.net/games/就是一個游戏开发者必去的好地方。
介绍Java开发游戏的好书
英文原文翻译书:
从做中学:手机游戏程式设计 (Beginning Mobile Phone Game Programming) /上奇
大师谈 Java 游戏设计 (Developing Games in Java) /上奇
日文原文翻译书:
Java Game Programming 建立游戏的演算法与框架 (Java Game Programming Algorithm and Framework) / 博硕
O’Reilly --《Killer Game Programming in Java》
目前市面上的游戏,不管是PC游戏,或是游乐器游戏,除了讲究2D、3D、声光效果、更强调善用网路,好比目前最风行的线上游戏,就充分运用了网路,达到多人共乐的效果。然而,恐怕得买上5、6本书,才能够学到开发这些现代游戏所需要的技术。O’Reilly所出版的《Killer Game Programming in Java》就是这样的一本书。本书接近1000页,共有四大主题: Java 2D、Java声音处理、Java 3D、Java网路程式设计,并在附录介绍如何利用install4j或Java Web Start,让使用者方便地安装所撰写好的游戏软体。除了人工智慧(AI)之外,这本书几乎涵盖了所有游戏开发所需要的知识,而这本书的不足,可以用O’Reilly的另外一本好书《AI for Game Developers》(O’Reilly臺湾分公司有翻译计画,中文版名称为《游戏人工智慧》) 弥补之。
《Killer Game Programming in Java》的作者,在第一章就列出了所有开发人员对於Java是否可以开发游戏软体的疑惑,包括“使用者较难安装Java程式”、“Java速度太慢”、“Java太高阶了,很难发挥硬体效能”、“真的有人拿Java开发应用程式吗?”等议题,一一释疑,并列出了许多相反的观点,以及可以实证的网路资源。 接著,作者就从游戏的基本程式结构开始,介绍Java影像处理、2D图形处理、声音处理。到此,读者对游戏开发会有个基本的认识,也可以写出一个简单、并具有声光效果的Java游戏。作者採用标準的Java 3D API,讲解3D图形处理,这一个部分,是所有关於Java 3D的相关书籍之中,讲述的最精采的一个部分,笔者认为这也是本书最有价值的部分。最后,作者介绍Java网路程式设计,并延伸前面章节所介绍的3D游戏,改良成网路3D游戏。作为一本介绍Java游戏设计的书籍,笔者相信这是目前市面上最有参考价值的一本书。
如果读者仍然对Java是否能够制作游戏心存疑惑,笔者必须说:“只要有心,人人都可以用Java制作出好游戏”。
[转]Java可以拿來开发游戏吗?相关推荐
- 2021京东Java面试真题:c和java哪个更适合开发游戏
前言 一开始并没有急着提交简历,而是说准备下再提交简历.然后就准备了一周,写简历,刷题,在网上找蚂蚁金服的面经.提交了一份简历,然后发现简历上面没有写学历,幸好他还没提交,就修改了下重新发了一份,然后 ...
- java演练 猜奇偶小游戏开发 DB游戏必输的设计
java演练 猜奇偶小游戏开发 DB游戏必输的设计 阶段一,视频 https://www.ixigua.com/6870390946270446088?logTag=J_BVJOm_LIpQ-hWYY ...
- java如何开发游戏大厅_java仿qq游戏大厅的设计与实现
摘要:由于生活节奏的越来越快,人们越来越少的外出游玩.现在的人们为了生活,为了工作,为了家庭无时无刻不在紧张的环境中度过.而一些简单的小游戏则成为了人们放松的主要方式,本文用java语言开发了客户端/ ...
- JAVA基于J2ME的手机游戏开发和实现——贪吃蛇
随着通信技术的发展和手机的普及,手机游戏的开发技术越来越为人们所关注.以J2ME为开发平台,利用Java提供强大工具,不但可以在手机上实现静态HTML技术所无法实现的计算处理.数据存储.与服务器的通信 ...
- java实现抽奖需求分析_Java开发游戏抽奖算法有哪些?
Java开发游戏抽奖算法有哪些?抽奖算法根据需求而定,游戏抽奖算法在指定奖品的集合中,每个奖品根据对对应概率进行抽取.Java开发游戏抽奖算法主要有随机数一一对应.离散法Alias算法等. 一.随机数 ...
- (蔡坤 VS 吴凡)java实现回合制小游戏开发
(蔡坤 VS 吴凡)java实现回合制小游戏开发 首先定义属性(get set 有参,无参) 代码如下 java package com.jie; import java.util.Random; c ...
- python能做游戏吗-python能开发游戏吗
python可以写游戏,但不适合.下面我们来分析一下具体原因. 用锤子能造汽车吗? 谁也没法说不能吧?历史上也确实曾经有些汽车,是用锤子造出来的.但一般来说,还是用工业机器人更合适对吗? 比较大型的, ...
- java swing图形界面开发 java.swing简介
最近在看YouTube上面的视频的时候,虽然学着做了一点界面和一点可以运行的东西,但是里面用到的库文件我还是不明就里的.所以我打算在制作游戏之前,先花几天的时间大概地研究一下关于java.swing的 ...
- c语言开发游戏趋势,都9012年了,为何我还坚持用C语言开发游戏
我最近所有个人项目游戏都是用"纯" C语言开发.解释为什么要这样做可能很有趣. 预警:一大堆枯燥的编程语言观点将要出现. 我需要什么样一种编程语言 有些条件是不可协商的. 首先,语 ...
最新文章
- android view设置按钮颜色_Android 主题换肤技术方案分析
- 什么叫点积的巧记理解
- 提取网页中的超级链接
- 穿上这件全球首款「隐形衣」,做这条街最「无脸」的仔;阿里给钱给资源,求解AI安全难题...
- 选择company回显appname
- linux 内存交换参数,Ubuntu Linux:处理交换内存和内存使用情况
- R语言较为特殊的一些运算符
- MyEclipse、eclipse代码自动补全
- java基本数据类型与封装类 示例_Java零基础系列教程10Java抽象与封装
- 如何修改SQL Server 2000身份验证模式和系统管理员
- 系统上关闭是意外的_紧急关闭iOS13,有史以来跳版本关闭系统
- SQL2005触发器和存储过程
- C# List的方法和属性
- shell脚本100例
- 计算机语言的比较英文论文,科学网—撰写高质量英文科技论文的心态、布局、程序和方法 - 岳中琦的博文...
- java中的对象传递
- 为什么 jsp 还没有淘汰?
- 2020年 显卡天梯图 / Top Graphics Ranking
- 一图掌握ICT项目管理流程图「实例」
- li指令 汇编_汇编指令简介