- Forum-Beiträge: 8
21.11.2015, 20:31:54 via Website
21.11.2015 20:31:54 via Website
Hallo liebe Community,
Ich habe mich daran versucht ein kleines Spiel zu programmieren. Allerdings habe ich ein Problem:
und zwar habe ich ein Hintergrundbild für das Spiel welches 856x480 groß ist und daher skaliert werden muss, um den ganzen Bildschirm auszufüllen. Dafür habe ich folgenden Code verwendet
public void draw(Canvas canvas) {
final float scaleFactorX = getWidth()/(WIDTH*1.f);
final float scaleFactorY = getHeight()/(HEIGHT*1.f);
if (canvas != null){
final int saveState = canvas.save();
canvas.scale(scaleFactorX, scaleFactorY);
bg.draw(canvas);
if (!dissapear) {
player.draw(canvas);
}
Allerdings wenn ich WIDTH = 856 bzw. HEIGHT = 480 setze sehe ich nur ca. die linke ober Hälfte des Bildes, wenn ich aber 1850 und 1440 setze sieht es auf meinem Nexus 5 ganz schön aus!
Darüber hinaus habe ich auch noch einen Heli sowie ein paar Rakten, welche man nicht mit dem Heli berühren sollte, welche ebenfalls nicht richtig angezeigt werden (werden zum Teil abgeschnitten). Falls ihr den Rest des Codes benötigt kann ich ihn gerne auch posten.
Ich würde mich sehr freuen, wenn mir jemand diesbezüglich weiterhelfen könnte
Vielen Dank.
Liebe Grüße,
Georg
— geändert am 21.11.2015, 20:38:53
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.