frage zu tutorial

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
hallo
ich habe mir ein tutorial zur spieleentwicklung angeschaut, bei dem in einem applet ein kreis von links nach rechts bewegt wird.

jetzt hab ich mal ein bischen rumgespielt und einen 2 kreis hinzugefügt. ich wollte diesen auf einer kreisbahnlaufen lassen. allerdings hab ich das bisher erst für eine viertelkreis bewegung geschafft, wenn ich in die run() methode mehr code einfüge, etwa mit if abfragen bewegt sich keiner der kreise mehr. hier der code:
Code:
import java.applet.*;
import java.awt.*;

public class BallBewegungDoppel extends Applet implements Runnable
{
	// Initialisierung der Variablen
	int x_pos = 10;		// x - Position des Balles
	int y_pos = 100;	// y - Position des Balles
	int radius = 20;    // Radius des Balles
	
	int x2_pos = 10;
	int y2_pos = 50;
	int radius2 = 15;
	int kreisR = 60;

	// Variablen für die Doppelpufferung
	private Image dbImage;
	private Graphics dbg;

	public void init()
	{
		setBackground (Color.blue);
	}

	public void start ()
	{
		// Schaffen eines neuen Threads, in dem das Spiel läuft
		Thread th = new Thread (this);
		// Starten des Threads
		th.start ();
	}

	public void stop()
	{

	}

	public void destroy()
	{

	}

	public void run ()
	{
		// Erniedrigen der ThreadPriority um zeichnen zu erleichtern
		Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
		boolean b = true;
		// Solange true ist läuft der Thread weiter
		while (true)
		{
			// Verändern der x- Koordinate
			if (x2_pos == kreisR) b = !b;
			//if (b) x2_pos++;
			//if (b) x2_pos--; 
			
			y2_pos = pos(x2_pos);
			
			
			
			// Neuzeichnen des Applets
			repaint();

			try
			{
				// Stoppen des Threads für in Klammern angegebene Millisekunden
				Thread.sleep (20);
			}
			catch (InterruptedException ex)
			{
				// do nothing
			}

			// Zurücksetzen der ThreadPriority auf Maximalwert
			Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
		}
	}

	/** Update - Methode, Realisierung der Doppelpufferung zur Reduzierung des Bildschirmflackerns */
	public void update (Graphics g)
	{
		// Initialisierung des DoubleBuffers
		if (dbImage == null)
		{
			dbImage = createImage (this.getSize().width, this.getSize().height);
			dbg = dbImage.getGraphics ();
		}

		// Bildschirm im Hintergrund löschen
		dbg.setColor (getBackground ());
		dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);

		// Auf gelöschten Hintergrund Vordergrund zeichnen
		dbg.setColor (getForeground());
		paint (dbg);

		// Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
		g.drawImage (dbImage, 0, 0, this);
	}

	public void paint (Graphics g)
	{
		g.setColor  (Color.red);

		g.fillOval (x_pos - radius, y_pos - radius, 2 * radius, 2 * radius);
		
		g.setColor(Color.yellow);
		
		g.fillOval (x2_pos - radius, y2_pos - radius2, 2 * radius2, 2 * radius2);
	}
	
	int pos(int x) {
		
		 return (int) Math.sqrt((kreisR*kreisR) - (x*x));
	}
}

meine frage: wieso passiert da nix mehr ? abgeändert habe ich nur was in der run methode und die methode pos ist von mir, der rest ist eins zu eins aus dem tutorial
 
G

Guest

Gast
huch ich vergaß zeile 54 55 auszukommentieren, also denkt euch die // weg ;)
 

Marco13

Top Contributor
Wenn b true ist, wird dann x2_pos um 1 erhöht, und dann um 1 verringert.

wenn ich in die run() methode mehr code einfüge, etwa mit if abfragen bewegt sich keiner der kreise mehr.

Ei-ja, das darfste halt nicht machen :noe: da einfach code einfügen - auch noch mit if-Abfragen :shock: Ganz schlimm :autsch:

Mal im ernst: Du hast dir wohl nicht so genau überlegt, was da ablaufen soll. Und spätestens wenn du mal 50 Kreise haben willst, und dann Variablen 'x1_pos' bis 'x50_pos' da stehen hast, wird's richtig unschön.

Kannst ja mal über eine Klasse "Kreis" nachdenken, oder mal http://www.java-forum.org/de/topic57730_versuch-eines-deutschen-tutorials.html lesen oder so...
 
G

Guest

Gast
jutjut. habs aber dennoch so gescahfft, aber kann mir vorstellen dass für 50 kreise nicht mehr klappt ;)
Code:
import java.applet.*;
import java.awt.*;

public class BallBewegungDoppel extends Applet implements Runnable
{
	// Initialisierung der Variablen
	int x_pos = 10;		// x - Position des Balles
	int y_pos = 100;	// y - Position des Balles
	int radius = 20;    // Radius des Balles
	
	int x2_pos = 70;
	int y2_pos = 100;
	int radius2 = 15;
	int kreisR = 50;
	int x0 = 70, y0 = 50;

	// Variablen für die Doppelpufferung
	private Image dbImage;
	private Graphics dbg;

	public void init()
	{
		setBackground (Color.blue);
	}

	public void start ()
	{
		// Schaffen eines neuen Threads, in dem das Spiel läuft
		Thread th = new Thread (this);
		// Starten des Threads
		th.start ();
	}

	public void stop()
	{

	}

	public void destroy()
	{

	}

	public void run ()
	{
		// Erniedrigen der ThreadPriority um zeichnen zu erleichtern
		Thread.currentThread().setPriority(Thread.MIN_PRIORITY);
		boolean r = true, o = true;
		// Solange true ist läuft der Thread weiter
		while (true)
		{
			// Verändern der x- Koordinate
			
						
			if (r && o) {
				x2_pos++;	y2_pos = y0+pos(x2_pos);
				if (x2_pos == kreisR + x0) r = false;
			}
			else if (!r && o) {
				x2_pos--; y2_pos = y0-pos(x2_pos);
				if(x2_pos == x0) o = false;
			}
			else if (!r && !o) {
				x2_pos--; y2_pos = y0-pos(x2_pos);
				if(x2_pos == x0 -kreisR) r = true;
			}
			else if (r && !o) {
				x2_pos++; y2_pos = y0+pos(x2_pos);
				if(x2_pos == x0) o = true;
			}
			
			x_pos++;
						
			
			// Neuzeichnen des Applets
			repaint();

			try
			{
				// Stoppen des Threads für in Klammern angegebene Millisekunden
				Thread.sleep (20);
			}
			catch (InterruptedException ex)
			{
				// do nothing
			}

			// Zurücksetzen der ThreadPriority auf Maximalwert
			Thread.currentThread().setPriority(Thread.MAX_PRIORITY);
		}
	}

	/** Update - Methode, Realisierung der Doppelpufferung zur Reduzierung des Bildschirmflackerns */
	public void update (Graphics g)
	{
		// Initialisierung des DoubleBuffers
		if (dbImage == null)
		{
			dbImage = createImage (this.getSize().width, this.getSize().height);
			dbg = dbImage.getGraphics ();
		}

		// Bildschirm im Hintergrund löschen
		dbg.setColor (getBackground ());
		dbg.fillRect (0, 0, this.getSize().width, this.getSize().height);

		// Auf gelöschten Hintergrund Vordergrund zeichnen
		dbg.setColor (getForeground());
		paint (dbg);

		// Nun fertig gezeichnetes Bild Offscreen auf dem richtigen Bildschirm anzeigen
		g.drawImage (dbImage, 0, 0, this);
	}

	public void paint (Graphics g)
	{
		g.setColor  (Color.red);

		g.fillOval (x_pos - radius, y_pos - radius, 2 * radius, 2 * radius);
		
		g.setColor(Color.yellow);
		
		g.fillOval (x2_pos - radius, y2_pos - radius2, 2 * radius2, 2 * radius2);
	}
	
	void bewegeKreis(int x0, int y0, int r) {
		
		
	}
	
	int pos(int x) {
		
		 return (int) Math.sqrt((kreisR*kreisR) - ((x-x0)*(x-x0)) ) ;
	}
}
ein kreis der sich auf einer kreisbahn bewegt und einer der von links nach rechts fliegt, ... und ich hab 8 ifs in der run ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Minecraft Frage für einen Minecraft Server Spiele- und Multimedia-Programmierung 2
G [Java/KryoNet/LibGDX] Mutliplayer Packet Frage Spiele- und Multimedia-Programmierung 2
G [Java Server] Allgemeine Frage zum Thema Networking in Videospielen Spiele- und Multimedia-Programmierung 15
J Frage zum Einlesen einer .wav in ein byte Array Spiele- und Multimedia-Programmierung 3
S ImageSlider frage Spiele- und Multimedia-Programmierung 3
Anfänger2011 Minimap: Theoretische Frage zur Umsetzung Spiele- und Multimedia-Programmierung 2
Androbin Kollisions-Frage Spiele- und Multimedia-Programmierung 8
windl Frage zu Airplay und zur Mitarbeit bei einer Mediaanlage Spiele- und Multimedia-Programmierung 0
S LWJGL Kamera Frage Spiele- und Multimedia-Programmierung 2
P Frage zu einem Projekt "Einarmiger Bandit" 3 Walzen / 9 Zeichnungen BLUEJ Spiele- und Multimedia-Programmierung 10
Guybrush Threepwood Ketzerische Frage: Opus-Codec für Java Spiele- und Multimedia-Programmierung 14
CookieSoft OpenGl Translatef Frage Spiele- und Multimedia-Programmierung 2
Kenan89 Theoretische Frage zu Tile Spielkarten Spiele- und Multimedia-Programmierung 9
R Tileloader Frage Spiele- und Multimedia-Programmierung 2
S Frage: NullPointer, aber warum? Spiele- und Multimedia-Programmierung 8
J Anfänger Frage wie adden? Spiele- und Multimedia-Programmierung 9
R Frage zur Kollision Spiele- und Multimedia-Programmierung 5
M.F.G. Spielvorstellung (plus KI frage): Connect Four – Extreme Spiele- und Multimedia-Programmierung 11
Helgon OpenGL Blend Frage Spiele- und Multimedia-Programmierung 18
P Frage bzgl. TextAdventure Spiele- und Multimedia-Programmierung 11
K Frage zur 3D Entwicklung zwecks vorhandener Engines Spiele- und Multimedia-Programmierung 17
V Frage zu AffineTransforms Spiele- und Multimedia-Programmierung 2
N frage zu der mp3spi Spiele- und Multimedia-Programmierung 2
J Frage zu Threads Spiele- und Multimedia-Programmierung 5
C Frage zu Ray-Picking mit JOGL Spiele- und Multimedia-Programmierung 13
M VRML Loader(noob Frage) ^^ Spiele- und Multimedia-Programmierung 3
M Prinzipielle Frage: Kann Java Grafiken ausschneiden? Spiele- und Multimedia-Programmierung 3
R Frage zu Hütchenspielprogrammierung! Spiele- und Multimedia-Programmierung 47
V Frage zu Grafiken und Software! Spiele- und Multimedia-Programmierung 5
radiac Mal eine ganz Doofe Frage... verzeiht :) Spiele- und Multimedia-Programmierung 9
Developer_X Eine Frage zur ViewBesetzung Spiele- und Multimedia-Programmierung 28
H BlueJ Frage Spiele- und Multimedia-Programmierung 13
K Malefiz programmieren - Frage zu den einzelnen Spielfeldern Spiele- und Multimedia-Programmierung 5
G Ping Pong Frage Spiele- und Multimedia-Programmierung 17
0x7F800000 allgemeine frage zu Java 3D Spiele- und Multimedia-Programmierung 12
B Frage zur Spielsteuerung bei einem rundenbasiertes Spiel Spiele- und Multimedia-Programmierung 5
M Frage eines Anfängers Spiele- und Multimedia-Programmierung 3
N Schiffe Versenken Frage zum Spielbrett Spiele- und Multimedia-Programmierung 24
N Generelle Frage: "GUI"-Werkzeuge Spiele- und Multimedia-Programmierung 5
X Frage zu Import von CAD Zeichnungen Spiele- und Multimedia-Programmierung 4
A kurze Frage zu Java3D! (automatische Skalierung) Spiele- und Multimedia-Programmierung 3
S Poker - grundlegende frage zu paint() Spiele- und Multimedia-Programmierung 10
B Frage zum GUI-Design bei Brettspielen Spiele- und Multimedia-Programmierung 4
P Frage zum Scrolling Spiele- und Multimedia-Programmierung 23
B Frage zum Abspielen von Sounddateien Spiele- und Multimedia-Programmierung 2
J Frage zu Geometry und Shape3D Spiele- und Multimedia-Programmierung 4
J Frage zu Transform3D.mul() Spiele- und Multimedia-Programmierung 2
J Java3D: Texture-Frage Spiele- und Multimedia-Programmierung 4
C frage zu glrotated Spiele- und Multimedia-Programmierung 12
T Einsatzbereich-Frage von Java 3D Spiele- und Multimedia-Programmierung 24
S [Java2D] Performance Frage Spiele- und Multimedia-Programmierung 4
G Frage zur Sichtbarkeit von Flächen Spiele- und Multimedia-Programmierung 2
Finalspace Entwicklung eines Jump & Run Spiels Video-Tutorial Spiele- und Multimedia-Programmierung 12
Ruvok Java3D Tutorial gesucht Spiele- und Multimedia-Programmierung 5
K FBO Framebuffer object [LWJGL] 2D tutorial gesucht Spiele- und Multimedia-Programmierung 2
M Spiele Tutorial.. Findet Bilddateien nicht Spiele- und Multimedia-Programmierung 6
F quaxlis tile map programming tutorial prob Spiele- und Multimedia-Programmierung 4
codestück shader tutorial Spiele- und Multimedia-Programmierung 4
A Drawable und Moveable in Quaxli 2D Spiele Tutorial Spiele- und Multimedia-Programmierung 7
Helgon OpenGL vernünftige Tutorial? Spiele- und Multimedia-Programmierung 22
H Jump&Run Tutorial Spiele- und Multimedia-Programmierung 3
Gossi Quaxlis 2D Tutorial....Probleme nach hinzufügen der Kollisionsabfrage Spiele- und Multimedia-Programmierung 16
Gossi Probleme beim Laden der Images aus dem "Tutorial für Java-Spiele" Spiele- und Multimedia-Programmierung 4
E Quaxli Tutorial Problemchen Spiele- und Multimedia-Programmierung 3
X Gutes 2D Spiele Tutorial? Spiele- und Multimedia-Programmierung 9
F Suche Tutorial zu "purem" OpenGL mit Java Spiele- und Multimedia-Programmierung 10
S Probleme mit Tutorial Spiele- und Multimedia-Programmierung 3
H Repaint-Problem mit Quaxlis Tutorial Spiele- und Multimedia-Programmierung 2
O Suche Tutorial zum Aufbau von großen Spielen(mit Multiplayer über Netzwerk...) Spiele- und Multimedia-Programmierung 3
M Problem mit 2D-Spieleprogrammierung Tutorial von Quaxli Spiele- und Multimedia-Programmierung 7
A Java3D tutorial? Spiele- und Multimedia-Programmierung 3
prakdi Probleme mit Quaxlis tutorial Spiele- und Multimedia-Programmierung 5
I Bilder aus Quaxli's Tutorial Spiele- und Multimedia-Programmierung 3
radiac Sprit ist leer bei Quaxli´s Heli Tutorial Spiele- und Multimedia-Programmierung 28
H Tutorial von Quaxli (Problem) Spiele- und Multimedia-Programmierung 16
hdi gutes Tutorial zu 3d->2d Projektion? Spiele- und Multimedia-Programmierung 13
hdi Das java-forum.org 2D-Game Projekt/Tutorial Spiele- und Multimedia-Programmierung 6
A Tutorial für die Entwicklung einer Fussball-KI gesucht Spiele- und Multimedia-Programmierung 7
K Game-Tutorial von Quaxli Fragen Spiele- und Multimedia-Programmierung 18
M Flugbahnberechnung (Quaxlis Tutorial) Spiele- und Multimedia-Programmierung 5
S Problem mit Physik-Tutorial Spiele- und Multimedia-Programmierung 5
G suche das tutorial für den space invaders Spiele- und Multimedia-Programmierung 2
Z Suche Tutorial zum Einstieg in OpenGl mit Java (JOGL) Spiele- und Multimedia-Programmierung 2
X JPCT 3d-Spiele Programmierung Tutorial Spiele- und Multimedia-Programmierung 40
X 3D Spiele Tutorial gewünscht? Spiele- und Multimedia-Programmierung 14
M Suche Games tutorial mit JOGL Spiele- und Multimedia-Programmierung 8
conan2 Partikelsystem(-tutorial)? Spiele- und Multimedia-Programmierung 3
P Suche Tutorial für Multiplayer Spiele- und Multimedia-Programmierung 2
R Tutorial falsch?! Spiele- und Multimedia-Programmierung 22
H Bemerkungen zu 2. Tutorial Spiele- und Multimedia-Programmierung 3
I Java 3d tutorial Spiele- und Multimedia-Programmierung 2
I Java3D-Tutorial, die zweite. Spiele- und Multimedia-Programmierung 9
N gutes Tutorial Spiele- und Multimedia-Programmierung 6

Ähnliche Java Themen

Neue Themen


Oben