Java-Gaming.org    
Featured games (79)
games approved by the League of Dukes
Games in Showcase (477)
Games in Android Showcase (107)
games submitted by our members
Games in WIP (534)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Newbie needs start help :)  (Read 1029 times)
0 Members and 1 Guest are viewing this topic.
Offline Eliteforce

Junior Newbie




Java games rock!


« Posted 2004-12-19 17:46:26 »

Hi!
Im new to Java game development and dont know where to start...  Cheesy

So that's what i've done already:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
64  
65  
66  
67  
68  
69  
70  
71  
72  
import java.awt.*;
import java.awt.event.*;

public class MainPanel extends Panel implements KeyListener {
      private MyCanvas bier;
      private double xs, ys, x, y;

      public MainPanel() {
            setLayout(null);

            bier = new MyCanvas("bier.jpg");
            bier.setBounds(20, 20, 100, 100);
            add(bier);
            x = bier.getX();
            y = bier.getY();

            Thread t = new Thread(new Runnable() {
                  public void run() {
                        while (true) {
                              try {
                                    Thread.sleep(1000 / 60);
                              } catch (InterruptedException e) {
                                    // TODO Auto-generated catch block
                                   e.printStackTrace();
                              }
                              x += xs;
                              y += ys;
                              bier.setLocation((int) x, (int) y);
                        }
                  }
            });
            t.start();

      }

      public void keyTyped(KeyEvent ev) {
      }

      public void keyPressed(KeyEvent ev) {
            int x = bier.getX(), y = bier.getY();

            if (ev.getKeyCode() == KeyEvent.VK_DOWN)
                  ys += 0.1;
            else if (ev.getKeyCode() == KeyEvent.VK_UP)
                  ys -= 0.1;
            else if (ev.getKeyCode() == KeyEvent.VK_LEFT)
                  xs -= 0.1;
            else if (ev.getKeyCode() == KeyEvent.VK_RIGHT)
                  xs += 0.1;
      }

      public void keyReleased(KeyEvent ev) {
      }

}


public class MyCanvas extends Canvas {
      Image image;

      public MyCanvas(String file) {
            image = Toolkit.getDefaultToolkit().getImage(file);
           
      }
     
      public void paint(Graphics g) {
            if (image != null) {
                  g.drawImage(image, 0, 0, this);
            } else
                  System.out.print("a");
      }
}


I think this is very bad coding, but i dont know how to optimize it.
The problem is that this app doesnt run on every computer at the same speed i think! So how can i fix that (ticks? time?)?
And how can i program a double buffer or hardware accelerated game?

It would be very nice if u could give me some tips! Smiley

BIG THX
Offline arne

Senior Member




money is the worst drug- we should not let it rule


« Reply #1 - Posted 2004-12-19 17:59:13 »

Hi

A way of getting the framerate (fps) is to use a timer and to get the length of the last frame by subtracting the time from the previous frame from the new time.

1  
2  
3  
4  
5  
6  
while(true) {
  //do your stuff
 newTime = getCurrentTime();  // e.g. System.currentTimeMillis(); you just have to respect, that currentTimeMilis returns the time in milli seconds and it's a very slow counter. So you would have to trick with it. (by counting the frames it didn't change etc.)
 fps = 1/(newTime-oldTime);
  oldTime = newTime();
}


Arne

:: JOODE :: Xith3d :: OdeJava ::
Offline Eliteforce

Junior Newbie




Java games rock!


« Reply #2 - Posted 2004-12-19 18:07:32 »

and what is that for?  Huh
and whats NewTime()?
i always get a / by 0 exception
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline role

Junior Member




Java manmoth is coming!


« Reply #3 - Posted 2004-12-20 13:54:49 »

How about try out this game engine: GTGE
And all your headache will be gone   Cool
It has done the fps thing, and double buffering that you mention, and the beauty thing is you could always go back to replace everything  Wink
If you have any troubles you can visit the engine forum to ask. Smiley

Golden T Game Engine - Java2D/OpenGL Game Engine
Golden T Website | Golden T Forum
Offline Grazer

Junior Member




My other avatar is much more flattering.


« Reply #4 - Posted 2004-12-20 19:56:31 »

You could also have a look at this thread from last week that is full of resources for learning how to program games. (The first few posts are nonsense, but it gets better.)

Current Project: Easy Decal
Other Stuff: grlea online
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

pw (35 views)
2014-07-24 01:59:36

Riven (34 views)
2014-07-23 21:16:32

Riven (22 views)
2014-07-23 21:07:15

Riven (25 views)
2014-07-23 20:56:16

ctomni231 (56 views)
2014-07-18 06:55:21

Zero Volt (48 views)
2014-07-17 23:47:54

danieldean (39 views)
2014-07-17 23:41:23

MustardPeter (43 views)
2014-07-16 23:30:00

Cero (59 views)
2014-07-16 00:42:17

Riven (56 views)
2014-07-14 18:02:53
HotSpot Options
by dleskov
2014-07-08 03:59:08

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:58:24

Java and Game Development Tutorials
by SwordsMiner
2014-06-14 00:47:22

How do I start Java Game Development?
by ra4king
2014-05-17 11:13:37

HotSpot Options
by Roquen
2014-05-15 09:59:54

HotSpot Options
by Roquen
2014-05-06 15:03:10

Escape Analysis
by Roquen
2014-04-29 22:16:43

Experimental Toys
by Roquen
2014-04-28 13:24:22
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!