Suchergebnisse
Suchergebnisse 1-20 von insgesamt 204.
@Typ: Doch, das würde Dein Problem lösen. Wenn Du es unbedingt mit Tastaturwiederholung machen willst, musst Du diese auf deinem Rechner anpassen, so das es keine erste Verzögerung gibt, falls das auf deinem System geht. Auf anderen Rechnern müssten die User die selbe Einstellung machen. Das ist nicht schön.
Deine Bewegung basiert auf Tastaturwiederholung, sollte aber Zeitbasiert sein (pos+=speed*framezeit, am besten mal was drüber nachlesen). Schorschs Link ist schon ok. Die Tastaturabfrage musst Du aber außerhalb der Eventschleife machen (das Gedrückthalten einer Taste löst kein Event aus, nur das Drücken und das Loslassen).
Sonst hättest Du auch einfach den Ursprung des Sprites in die Mitte setzen können. Dann kannste die SetAsBox() auch weiter verwenden.
Vielleicht ist Dein Sprite nicht richtig ausgerichtet, bei der Fixture liegt der Bezug für die Position imo mittig.
CodeBlocks. Und Notepad++ C# VS 2008
nochmal in Code ausgedrückt.. C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 float massstab = 30; //z.B. 30 Pixel pro Meter float zeitaenderung = Zeit.asSeconds(); float beschleunigung = +9.81f; //in m/s² static float ySpeed = -10f; //in m/s float wegaenderung = ySpeed * zeitaenderung; //in m //genauer wäre eigentlich: //float wegaenderung = ySpeed * zeitaenderung + 0.5f * beschleunigung * zeitaenderung * zeitaenderung; //denn bei der verwendeten Variabnte wird so getan als wäre ySpeed konsta...
Deine allererste Variante war imo schon ok. Du musst dir nur überlegen, wieviele Pixel in deiner Welt ein Meter sein sollen. Geschwindigkeit und Beschleunigng gibst du in Meter an. Daraus ergibt sich die Wegänderung auch in Metern. Die rechnest du dann mit deinem Maßstab in Pixel um.
Zitat von »NachoMan« Natürlich hat das System Probleme. Z.B. funktioniert es nicht richtig, wenn nicht alle teilnehmen. Nichtwähler sind daher ein Teil des Problems und das kann niemals die Antwort sein. Da sind wir einer Meinung, wählen gehen sollte man schon. Sonst ist das schon jammern auf hohem Niveau. Hier gilt im übrigen auch das Argument dass es uns hierzulande verhältnismäßig gut geht. Das Argument gilt in dem Moment nicht mehr, wo es um Gerechtigkeit geht. Der Leiharbeiter, der für die...
@DeKugelschieber: das eine schließt das andere ja nicht aus, ich kann Probleme haben und Politikverdrossen sein, nuja. Solche Orgamisationen haben ja nicht das Ziel, auf hohem Niveau zu jammern (außer man sucht sich die Organisation zu diesem Thema raus, wenn es da was gibt). Das Ziel ist ja mehr der Versuch, Leute für Themen zu interessieren (sensibilisieren) und vielleicht auf eine andere Art Politik zu machen, weil sich das bisherige System nicht so richtig bewährt hat. Ich kann daran ersmal ...
Politikverdrossene schließen sich einer Vereinigung/Bewegung an (Attac, Greenpeace, Amnesty, Blockupy uswusw.).
Der C++ Programmierer ist zwar gut, aber das Buch ist schlecht verklebt. Die Seiten fleddern mir um die Ohren. Ich hab nach mehreren Anläufen erst Dirk Louis Anfängerbuch und dann C++ für Spieleprogrammierer gelesen. Bei letzterem wird man durch ein kleines Projekt mit visuellem Feedback am Ende des Buches motiviert. Schau mal nach, ob der Jürgen Wolf bei Mehrfachvererbung immer noch sein Wurstbrotbeispiel anbietet . Wenn du das Buch schon gekauft hast, lies es halt.
Ich glaube, das Rechteck wird zur Kollisionserkennung gebraucht. Du kanns dazu nicht das vom Sprite nehmen, weil alle Shots auf das selbe Sprite zugreifen und dabei die Position des Sprite-Rects verändern. Trotzdem könntest du wahrscheinlich auf das Rect verzichten weil sich ja die Größe des Sprites nicht verändert und du die Position separat verwaltest.
Ich hab das mal ungefähr so gemacht: Alle Geraden des ersten mit allen Geraden des zweiten (an einer Kollision potentiell beteiligten) Polygons vergleichen, bzw. berechnen, wo die sich schneiden (die Geraden aus den Eckpunkten berechnet). Wenn sich keine der Geraden schneiden, untersuchen, ob sich einer der Eckpunkte des einen innerhalb des jeweils anderen Polygons befindet. Ich hab keine Ahnung ab das so usus ist. So kann man es machen. Man kann auch ne Physikengine benutzen.
Ich schreib grad ein Tool :-) um Box2D-Fixtures zu erstellen. Ich weiß, das gibt es alles schon viel schöner. Ich bin noch am Anfang, aber es ist schon benutzbar, wer es ausprobieren will: http://pc-002.bplaced.net/downloads.html <!--splitLinkBegin--><!--splitLinkEnd--><!--noLinkBegin-->ExternesOriginalbildanzeigen(Link)<!--noLinkEnd-->
Ich tippe mal, deine Sounddatei existiert nicht. Sonst kann ich aus dem was du gepostet hast nichts entdecken.
Es könnte ungefähr darauf hinauslaufen, C-/C++-Quelltext 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 if(Key == D) w += av*t if(Key == A) w -= av*t if(Key == W) { vx = v * cos(w); vy = v * sin(w); } else { vx = vy = 0; } x += vx*t; y += vy*t; Winkelgeschwindigkeit av und Geschwindigkeit v kannst du jetzt entsprechend variieren.
Wieder ein Monsteroids-Update: http://user002.tipido.net/downloads/monsteroids273.zip neu: -Der Highscore kann direkt hochgeladen werden. -Die alte Highscoreliste gibt es leider nicht mehr. -Sonst hat sich nichts geändert. -FSK ab 21
Also ich benutze das immer noch -parallel zu OpenGL- eben für die Pixelgenaue Kollisionsprüfung. SDL_gfx ist zwar nicht superduperschnell, aber man braucht die Surface ja nicht ständig neu berechnen, sondern nur für den kurzen Moment einer potentiell möglichen Kollision. Und da fällt das performancemäßig so gut wie garnicht auf. Aber stimmt schon, damit ich bin womöglich der einzige, der noch SDL_gfx benutzt.
Mit Aufwand meinte ich eigentlich den zeitlichen und intellektuellen aufwand des Programmierers, um das ganze selbst umzusetzen.
Das mit der Collision-Map ist die optimierte Variante. Wenn du nur statische Bilder hast, ist der Fall klar. In dem Moment, wo du aber die Bilder rotieren, skalieren und gleichzeitig auf Kollision prüfen willst, hast du mit einer starren Kollisionsmap ein Problem. Rotierte, skalierte SDL_Surfaces lassen sich relativ einfach mit SDL_gfx berechnen. Andernfalls, die eigene Collisionmap neu zu berechnen ist da schon mit mehr bis viel mehr Aufwand verbunden. Es ist eben die Frage, wie viel Optimierun...