Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 |
@Override public void render(SpriteBatch sb) { sb.setProjectionMatrix(cam.combined); sb.begin(); mapManager.render(sb); player.render(sb); covi.drawDebug(shapeRenderer); sb.end(); } |
Quellcode |
|
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 |
public void render(SpriteBatch sb) { for(int i=0;i<MapHeight;i++){ for(int j=0;j<MapLength;j++) { if (Map[i][j] == 48) { sb.draw(Gras, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i + 1][j] == 49 && Map[i - 1][j] == 49 && Map[i][j + 1] == 49 && Map[i][j - 1] == 49) { sb.draw(Road_cross, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i][j - 1] == 49 && Map[i][j + 1] == 49) { sb.draw(Road_left_right, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i - 1][j] == 49 && Map[i + 1][j] == 49) { sb.draw(Road_up_down, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i][j - 1] == 49 && Map[i + 1][j] == 49) { sb.draw(Road_left_up, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i][j - 1] == 49 && Map[i - 1][j] == 49) { sb.draw(Road_left_down, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i][j + 1] == 49 && Map[i + 1][j] == 49) { sb.draw(Road_right_up, j * tileSize, i * tileSize, tileSize, tileSize); } else if (Map[i][j + 1] == 49 && Map[i - 1][j] == 49) { sb.draw(Road_right_down, j * tileSize, i * tileSize, tileSize, tileSize); } } } } |
Quellcode |
|
1 2 3 4 5 |
public void render(SpriteBatch sb) { sprite.draw(sb); } |
Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »Roman Wecker« (02.05.2016, 20:41)
Alter Hase
Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy
Du bist dir ganz sicher, dass auch wirklich das Sprite bzw. dessen Textur richtig geladen wird? Habe gerade mal kurz in die libgdx Doku geschaut und sehe da leider keine Exception, die da bei nicht aufgefundenem File geworfen wird.
Beim erzeugen des player Sprites verwendest du posX und posY. Wenn ich dein Code und libgdx-docu richtig verstehe sind posX und posY die Position des Players innerhalb der Map, der Konstruktor erwarte aber die Texturekoordinaten.
Alter Hase
Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy
Es gibt allerdings unterschiedliche draw() Methode die die ich benutze hat an 2ter Stelle posx und an 3ter posy also daran kanns auch nicht liegen
Quellcode |
|
1 2 |
public int posx = 1070; public int posy = 1000; |
Quellcode |
|
1 2 3 4 5 6 |
public void moveSprite() { posx += 10*Math.cos(Math.toRadians(angle)); posy += 10*Math.sin(Math.toRadians(angle)); sprite.setPosition(posx, posy); } |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 |
public Player() { Car = new Texture("Car5.png"); sprite = new Sprite(Car,posx,posy,225,103); } public void render(SpriteBatch sb) { sb.draw(sprite,posx,posy,225,103); } |
Sprite(Texture texture, int srcX, int srcY, int srcWidth, int srcHeight);
Creates a sprite with width, height, and texture region equal to the specified size.
sb.draw(sprite,posx,posy,225,103);
sb.draw(sprite,0,0,posx,posy,225,103); oder anders?
Quellcode |
|
1 |
sprite.draw(sb); |
sb.draw(sprite,0,0,posx,posy,225,103); oder anders?
Also mal vorweg geschickt ich kenne mich mit LibGDX/Java nicht aus, und ziehe mir die Info aus der Doku.
Du müsstest wohl schreiben.
Quellcode
1 sprite.draw(sb);
Wichtig wäre wohl noch zu wissen ob deine Texture als Einzelbild vorliegt oder mit anderen Texturen in einer Datei zusammengefassst sind. Dem entsprechend musst du den Konstruktor für Sprite (richtig) aufrufen.
sb.draw(sprite,0,0,posx,posy,225,103); oder anders?
Also mal vorweg geschickt ich kenne mich mit LibGDX/Java nicht aus, und ziehe mir die Info aus der Doku.
Du müsstest wohl schreiben.
Quellcode
1 sprite.draw(sb);
Wichtig wäre wohl noch zu wissen ob deine Texture als Einzelbild vorliegt oder mit anderen Texturen in einer Datei zusammengefassst sind. Dem entsprechend musst du den Konstruktor für Sprite (richtig) aufrufen.
Werbeanzeige