仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 810|回复: 18
打印 上一主题 下一主题

[学习教程] 了解下JAVA的关于j2me game双缓冲完成切磋

[复制链接]
深爱那片海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:34:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
C#是盗用了Java的源代码,仿照开发的,原因是Java是开源的啊,盗了也白盗,还有一点,开发C#语言的团队是就是开发Java语言的团队,是微软重金挖过去的啊
双缓冲手艺的使用很普遍,计划游戏的时分更是必要它。在midp1.0中,api中并没有game这个包,看到网上良多人在会商计划游戏的时分会呈现图片段裂,屏幕闪灼等成绩。
我经由这几天的进修收拾下本人的进修心得,用来抛砖,但愿对此有研讨妙手们互相会商。让我也进修进修。
双缓冲的道理能够如许抽象的了解:把电脑屏幕看做一块黑板。起首我们在内存情况中创建一个“假造“的黑板,然后在这块黑板上绘制庞大的图形,等图形全体绘制终了的时分,再一次性的把内存中绘制好的图形“拷贝”到另外一块黑板(屏幕)上。接纳这类办法能够进步画图速率,极年夜的改良画图效果。
关于手机来讲。详细的历程就是经由过程extendsCanvas。然后猎取bufferImage。再然后就getGraphics。最初就是在这个graphics中绘制图片等,再最初就是把这个绘制好的bufferImage绘制的屏幕上。
说回说。详细仍是要看代码的。内里的代码参照了一些开源的代码。
java代码
packageorg.wuhua.game;
importjavax.microedition.lcdui.Canvas;
importjavax.microedition.lcdui.Graphics;
importjavax.microedition.lcdui.Image;
/**
*类名:GameCanvas.java
编写日期:2006-11-29
程序功效形貌:
*完成双缓冲的Game画布。完成道理是创立一个BufferImage。然后绘制,最初显现出来。就这么复杂。
Demo:
Bug:
*
*
*程序变动日期:
变动
变动申明:
*
*@authorwuhua
*/
publicabstractclassGameCanvasextendsCanvas{
/**
*绘制缓冲的图片。用户绘制资本的时分都是操纵这个图片来举行的
*/
privateImagebufferImage;
privateintheight;
privateintwidth;
privateintclipX,clipY,clipWidth,clipHeight;
privatebooleansetClip;
protectedGameCanvas(){
super();
width=getWidth();
height=getHeight();
this.bufferImage=Image.createImage(width,height);
}
protectedvoidpaint(Graphicsg){
//假如请求绘制指定地区的话就必要如许了
if(this.setClip){
g.clipRect(this.clipX,this.clipY,this.clipWidth,this.clipHeight);
this.setClip=false;
}
g.drawImage(this.bufferImage,0,0,Graphics.TOP|Graphics.LEFT);
}
publicvoidflushGraphics(intx,inty,intwidth,intheight){
this.setClip=true;
this.clipX=x;
this.clipY=y;
this.clipWidth=width;
this.clipHeight=height;
repaint();
serviceRepaints();
}
publicvoidflushGraphics(){
repaint();
serviceRepaints();
}
/**
*计划者次要是经由过程挪用这个办法猎取图片。然后就能够绘制了
*@return
*/
protectedGraphicsgetGraphics(){
returnthis.bufferImage.getGraphics();
}
/**
*这个办法次要是处置Nokia平台,用户挪用setFullScreenMode(booleanenable)时从头依照新的w&h创立缓冲图片
*/
protectedfinalvoidsizeChanged(intw,inth){
if(h>height){
this.bufferImage=Image.createImage(w,h);
}
}
}

市场分额,java比asp高一点,因为C#是仿照java开发的,所以哦C#能做的java都能做到,但是java能做的,C#不一定都能做到。毕竟是抄袭吗。
飘灵儿 该用户已被删除
沙发
发表于 2015-1-21 10:17:04 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
简单生活 该用户已被删除
板凳
发表于 2015-1-30 14:55:22 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
admin 该用户已被删除
地板
发表于 2015-2-9 03:32:34 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
若天明 该用户已被删除
5#
发表于 2015-2-10 08:46:08 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
深爱那片海 该用户已被删除
6#
 楼主| 发表于 2015-3-1 05:27:06 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
因胸联盟 该用户已被删除
7#
发表于 2015-3-6 20:20:39 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
莫相离 该用户已被删除
8#
发表于 2015-3-7 12:02:49 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
冷月葬花魂 该用户已被删除
9#
发表于 2015-3-11 06:29:00 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
愤怒的大鸟 该用户已被删除
10#
发表于 2015-3-13 22:07:24 | 只看该作者
是一种使用者不需花费很多时间学习的语言
海妖 该用户已被删除
11#
发表于 2015-3-20 19:47:19 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
第二个灵魂 该用户已被删除
12#
发表于 2015-3-31 04:06:20 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
透明 该用户已被删除
13#
发表于 2015-3-31 07:15:58 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
14#
发表于 2015-4-4 03:27:59 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
活着的死人 该用户已被删除
15#
发表于 2015-4-13 04:22:42 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
精灵巫婆 该用户已被删除
16#
发表于 2015-4-21 16:17:10 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
爱飞 该用户已被删除
17#
发表于 2015-4-24 08:31:16 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
柔情似水 该用户已被删除
18#
发表于 2015-4-28 10:22:11 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
再见西城 该用户已被删除
19#
发表于 2015-4-29 15:57:38 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-1 09:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表