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

1

30.07.2013, 13:41

Tank Game (SDL, wie Geschützturm drehen)

Hey Leute

Ich schreibe momentan an einen Tank Spiel Tile basiert.

Funktioniert alles schon sauber, auch die Collision ist übertragbar auf fast alle Dinge.

Nun möchte ich natürlich auch meinen Turm auf dem Panzer sich drehen lassen.
Nur habe ich leider noch keine Ahnung bei der SDL von Surface Manipulation und auch nicht wirklich eine Idee wie man dann die Schüsse in dem Winkel fliegen lassen könnte.


Hättet ihr vielleicht, ein paar Ideen wie ich das ganze angehen könnte?

Links und Tutorials wären sehr hilfreich.

Danke schonmal im vor raus

Gruß Leri :)

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

2

30.07.2013, 13:50

Da hast du folgende Optionen:
1. Du verbindest OpenGL und SDL (relativ leicht, trotzdem könnte es etwas kniffelig für einen Anfänger sein)
Ein Beispiel dafür wäre auf LazyFoo zu finden: http://lazyfoo.net/SDL_tutorials/lesson36/
2. Du benutzt SDL_GFX [#1, #2, #3]
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

3

30.07.2013, 13:55

naja bis jetzt ist das Spiel nur mit der sdl geschrieben, und opengl jetzt noch dazu zu nehmen ist ein wenig zu knifflig dann.

Werde mir mal sdl gfx anschauen, sieht eigentlich nicht schlecht aus :)

4

30.07.2013, 14:03

danke dir füe diene schnelle hilfe :)

Ich denke ich arbeite erstmal mit gfx.

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

5

30.07.2013, 14:14

Immer gern. ;)
Als ich anfing habe ich auch erstmal zu SDL_GFX gegriffen.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

6

30.07.2013, 18:47

Das kniffelige bei rotozoom ist halt, dass bei einer Drehung das umschließende Rechteck neu berechnet wird. Das heißt, die Höhe und Breite der Surface ändert sich entsprechend, deine Positionskoordinaten beziehen sich aber immer auf die obere linke Ecke. Normalerweise will man aber, dass sich das Bild um einen festen Drehpunkt bewegt, der sich z.B. in der Mitte der Surface befindet. Du musst also die Position der oberen linke Ecke neu berechnen, sodass der Drehpunkt an der gewünschten stelle bleibt. Wenn dir das zu kompliziert ist kannst du dir mal die SPriG Library ansehen.

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

7

30.07.2013, 19:24

Das kniffelige bei rotozoom ist halt, dass bei einer Drehung das umschließende Rechteck neu berechnet wird. Das heißt, die Höhe und Breite der Surface ändert sich entsprechend, deine Positionskoordinaten beziehen sich aber immer auf die obere linke Ecke. Normalerweise will man aber, dass sich das Bild um einen festen Drehpunkt bewegt, der sich z.B. in der Mitte der Surface befindet. Du musst also die Position der oberen linke Ecke neu berechnen, sodass der Drehpunkt an der gewünschten stelle bleibt. Wenn dir das zu kompliziert ist kannst du dir mal die SPriG Library ansehen.

Ich meine, dass Wümpftlbrümpftl dazu mal einen entsprechenden Artikel auf seinem oder einem anderen Blog verfasst hat.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

8

30.07.2013, 22:22

Wenn du keine speziellen Funktionen von der SDL benötigst könntest du auch einfach mal die SFML ausprobieren, anstatt dich durch so viele Zusatzbibliotheken und Artikeln zu wühlen. :D

Jaha Archi, der SFML-Man ist zurück und die Tyrannei der SDL-Beführworter hat schon bald ein Ende! :vain:
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

9

30.07.2013, 22:32

Stimmt, es ist ja nicht so das hier genauso oft Fragen / Probleme in Bezug zu SFML auftauchen... ;)
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

10

30.07.2013, 22:52

Ja, in dem Fall muss aber nur selten eine zusätzliche Bibliothek installiert und gelernt werden.
Ausserdem gehe ich davon aus, dass es einfach mehr SFML Nutzer gibt und daher auch mehr Fragen kommen müssen. :miffy:
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Werbeanzeige