Du bist nicht angemeldet.

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

61

01.11.2015, 10:04

Funktioniert bei mir leider nicht.

Habe aber noch Sachen gesehen die wahrscheinlich nicht so gewollt sind.
1. Geschwindigkeitsbegrenzung in y-Richtung
2. man wird wahrscheinlich einmal in Bewegung nie wieder exakt 0 Geschwindigkeit erreichen.
3. mit der aktuellen Begrenzung der max Geschwindigkeit (wenn y-Richtung limitiert ist) wird die Geschwindigkeit v=sqrt(x^2 + y^2) größer 100.
Wer aufhört besser werden zu wollen hört auf gut zu sein!

aktuelles Projekt:Rickety Racquet

@zimmer

Alter Hase

Beiträge: 1 135

Wohnort: NRW Germany

  • Private Nachricht senden

62

01.11.2015, 10:33

das schiff beschleunigt sehr angenehm aber dann wird abgebremmst und man muss wieder beschleunigen, sieht wie ein Anfänger Problem aus poste mal den beschlunigungs script.
den Hintergrund bitt in Bewegung setzen
edit: falls Du irgendwann möchtest, dass sich die Raumschiff beim rechts links flug neigt, mußt Du ein anderes Raumschiff malen, dieses ist ungeeignet

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »@zimmer« (01.11.2015, 10:45)


cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

63

01.11.2015, 11:56

das schiff beschleunigt sehr angenehm aber dann wird abgebremmst und man muss wieder beschleunigen, sieht wie ein Anfänger Problem aus poste mal den beschlunigungs script.
den Hintergrund bitt in Bewegung setzen
edit: falls Du irgendwann möchtest, dass sich die Raumschiff beim rechts links flug neigt, mußt Du ein anderes Raumschiff malen, dieses ist ungeeignet

Beschleunigung:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    const float accel = 0.1f;

    // Tastenabfrge
    if (sf::Keyboard::isKeyPressed(sf::Keyboard::A))
    {
        a.x = -accel;
    }
    else if (sf::Keyboard::isKeyPressed(sf::Keyboard::D))
    {
        a.x = accel;
    }
    else if (sf::Keyboard::isKeyPressed(sf::Keyboard::W))
    {
        a.y = -accel;
    }
    else if (sf::Keyboard::isKeyPressed(sf::Keyboard::S))
    {
        a.y = accel;
    }

    // Beschleunigung  ist die Änderung der Geschwindigkeit
    v.x = v.x + (a.x * dT.asSeconds());
    v.y = v.y + (a.y * dT.asSeconds());


Wie meinst du das, dass ich den Hintergrund bewegen soll?
Um das Schiff zu neigen, muss ich doch ein Spritesheet erstellen und dann das richtige Sprite ausschneide, oder?

@zimmer

Alter Hase

Beiträge: 1 135

Wohnort: NRW Germany

  • Private Nachricht senden

64

01.11.2015, 12:04

habe dein schiff auf eine 3d platte gelegt und dann geneigt und das Ergebnis war das selb wenn man das schiff schmaler unddann wieder breiter macht
edit: ups hab vergessen die paralellperspektive auszuschalten nehme ich wieder zurrück das mit dem Raumschiff

zu den Sternen: wenn die Sterne am Raumschiff vorbeifliegen würden hätte man ein gefühl als ob man durch das meteorieten Feld fliegt. Kann man ein längeren Sternen Hintergrund nehmen und ihn in einer Schleife in vy Richtung bewegen lassen
»@zimmer« hat folgendes Bild angehängt:
  • space1.jpg

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »@zimmer« (01.11.2015, 12:14)


65

01.11.2015, 12:07

Zitat

dann wird abgebremmst und man muss wieder beschleunigen

Du zeigst hier den Code für das Beschleunigen, gem. @zimmer ist es aber das abbremsen.

Weiß nicht wie der Code jetzt dafür aussieht aber normaler Weise ist die Reibung im Weltraum nahezu 0.
Deine Rechnung mit k und alles was daraus folgt würde ich ebenfalls auf eine Taste legen ( Space? ) als eine art Bremsrakete die das Raumschiff dann auch auf 0 Abbremst.
Wer aufhört besser werden zu wollen hört auf gut zu sein!

aktuelles Projekt:Rickety Racquet

@zimmer

Alter Hase

Beiträge: 1 135

Wohnort: NRW Germany

  • Private Nachricht senden

66

01.11.2015, 12:20

ich vermute irgend wo wird der wert:geschwindigkeit nach 100 auf 0 gesetzt

C-/C++-Quelltext

1
2
3
4
5
var Geschwindigkeit;
if (key_A){
if(Geschwindigkeit<100)Geschwindigkeit+=2*2;
vy+=Geschwindigkeit;
}

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

67

01.11.2015, 13:35

Das ist das Abbremsen:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    // Bis jetzt würde das Schiff einfach weiter gleiten,
    // deshalb muss die Geschwindigkeit in jedem Frame reduziert werden.
    const float k = 0.55f;
    v.x *= k;
    v.y *= k;

    // Außerdem sollte man noch eine Maximalgeschwindigkeit angeben,
    // da die Geschwindigkeit sonst zu groß werden kann.
    const float maxvel = 100;
    if (v.x > maxvel)
    {
        v.x = maxvel;
    }
    if (v.x < -maxvel)
    {
        v.x = -maxvel;
    }


Und deine Idee, Koschi, dass man diesen Code-Teil nur auf Tastendrück ausführt, ist nicht schlecht :)

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

68

01.11.2015, 14:17

Das ist Frameabhängiger Code. Bei der Beschleunigung hast du es doch auch Frameunabhängig gemacht warum nicht hier auch?

:dash: Habs geändert:

C-/C++-Quelltext

1
2
3
4
5
    // Bis jetzt würde das Schiff einfach weiter gleiten,
    // deshalb muss die Geschwindigkeit in jedem Frame reduziert werden.
    const float k = 0.55f;
    v.x = v.x * k * dT.asSeconds();
    v.y = v.y * k * dT.asSeconds();

69

01.11.2015, 14:56

Und deine Idee, Koschi, dass man diesen Code-Teil nur auf Tastendrück ausführt, ist nicht schlecht
Danke.

Habs geändert:
Geht es denn jetzt wie du es dir Vorstellst?
Wer aufhört besser werden zu wollen hört auf gut zu sein!

aktuelles Projekt:Rickety Racquet

cojo2015

Alter Hase

  • »cojo2015« ist der Autor dieses Themas

Beiträge: 516

Wohnort: bei mir zu Hause

Beruf: Schüler

  • Private Nachricht senden

70

01.11.2015, 15:56

Geht es denn jetzt wie du es dir Vorstellst?

Nein, leider nicht. Ich füge am besten die zwei Dateien an, dass das hier nciht Seitenweise so weitergeht :dash:
»cojo2015« hat folgende Dateien angehängt:
  • Player.cpp (3,53 kB - 28 mal heruntergeladen - zuletzt: Gestern, 05:47)
  • Player.hpp (752 Byte - 30 mal heruntergeladen - zuletzt: 05.05.2024, 16:42)

Werbeanzeige