关闭

java基础,游戏开发知识

1014人阅读 评论(0) 收藏 举报

    好久没写BLOG了.主要是因为不知道写什么,还有就是自己变懒了?这个月来就在学JAVA基础,自己本

来对基础有一定的了解.通过学习巩固了基础知识,对一些是晃是忽的知识掌握牢固了.基础也没什么好说

的,朗沃惯例学一阶段知识开发个项目,学了JAVA基础知识要做一个JAVA游戏.有幸成为项目组长.也锻炼

了自己的一种能力.给每个组员分工,项目需求,分析等等....

主要说说做JAVA游戏中用到的几个关键技术:

1.双缓冲屏外作图

 Image offScreen = createImage(FRAME_WIDTH, FRAME_HEIGHT);
 Graphics drawOffScreen = offScreen.getGraphics();
 drawOffScreen.clearRect(0, 0, FRAME_WIDTH, FRAME_HEIGHT); // 清空屏外作图区域
 g.drawImage(offScreen, 0, 0, null); // 把屏外做的图画到窗体上

2.加载图片
 String imagePath = Images.class.getResource("/img/").toString().substring(6);
 Image img = this.getToolkit().getImage(imagePath + "1.gif");
  
3.媒体跟踪器
 MediaTracker mt = new MediaTracker(this);
 mt.add(img,0);
 mt.waitForAll()  mt.waitForId(0);

4.加载播放声音
 JApplet ap = new JApplet();
 URL FireURL = Music.class.getResource("/sound/fire.wav");
 AudioClip auFire = ap.newAudioClip(FireURL);
 auFire.play();  .stop()....

5.所有角色的父类
/*
 * 所有角色的父类
 * 定义共有的属性和方法
 */
package com.lovo.sprite;

import java.awt.Graphics;

public abstract class SuperSprite
{
 /*
  * 角色的坐标,移动步长,高宽
  */
 public int X,Y, VX, VY, width, height;  
 public boolean visible, active; // 判断是否显示 是否移动
 Image img;
 abstract public void paintSprite(Graphics g);
 abstract public void updateState(); 
 public int getX()
 {
  return X;
 }

 public int getY()
 {
  return Y;
 }

 public void setLocation(int X, int Y)
 {
  this.X = X;
  this.Y = Y;
 }

 public int getVX()
 {
  return VX;
 }

 public int getVY()
 {
  return VY;
 }

 public void setStep(int vx, int vy)
 {
  this.VX = vx;
  this.VY = vy;
 }

 public int getWidth()
 {
  return width;
 }

 public int getHeight()
 {
  return height;
 }

 public void setSize(int width, int height)
 {
  this.width = width;
  this.height = height;
 }

 public boolean isVisible()
 {
  return visible;
 }

 public void setVisible(boolean v)
 {
  visible = v;
 }

 public boolean isMove()
 {
  return active;
 }

 public void setMove(boolean m)
 {
  active = m;
 }
}

    一周时间,在大家的辛苦努力下.一个飞机游戏也基本完成了.回过头来看看还是感觉多轻松的.给我们还有一周时间可以添加更多功能.美化界面代码.
 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:44032次
    • 积分:790
    • 等级:
    • 排名:千里之外
    • 原创:29篇
    • 转载:13篇
    • 译文:0篇
    • 评论:15条
    文章分类
    最新评论