Suchergebnisse
Suchergebnisse 1-20 von insgesamt 27.
Das while(1) war ja auch nur als Beispiel zu verstehen, es ist klar, dass du es so nicht verwenden kannst. Er rutscht am Anfang etwas nach unten, weil Y=1 ist und er erst bei 0 stoppt Ja, mir ist gerade aufgefallen, dass du C-/C++-Quelltext 1 maxY>Y durch C-/C++-Quelltext 1 maxY>=Y ersetzen musst, damit dürfte er nicht mehr hängen bleiben Zu dem schneller werden: Das ist verständlich, weil bei jdem durchgang 15 hinzuaddiert wird. Du musst einfach eine boolsche Variable erstellen, wo drin gespeic...
Ach, ich trottel :roll: (Das kommt davon wenn man Copy/Past benutzt) Hier nochmal richtig: 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 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 const int gravi=10;//Gravitation(Die Bewegung nach unten) const int maxY=100;//Maximale Höhe class CJump { private: int speedY;//Geschwindigkeit auf der Y-Achse int Y;//Höhe public: void jump(); void grav(); CJump(); }; CJump::CJu...
Es funktioniert aus einen einfachen Grund nicht: Du definierst die Variablen Y und speedY bei jedem aufruf neu, so bleibt dein Sprite immer auf Position 1 hängen. (Was soll eigentlich die Variable blub bewirken ) Ich würde übrigens das Sprinngen nd die Gravitation voneinander trennen Also: 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 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 class CJump { private: float speedY=0;//Geschwin...
Irgendwie so, du musst es natürlich noch einbauen 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 24 25 26 27 28 29 30 31 32 33 34 35 36 float speedY=0;//Geschwindigkeit auf der Y-Achse int Y = 1;//Höhe bool isJump=false const int grav=10;//Gravitation(Die Bewegung nach unten) const int maxY=30;//Maximale Höhe int main() { while(1) { grav(); if(App.GetInput().IsKeyDown(sf::Key::Space)) { speed+=15;//den Wert musst du ausprobieren } } } void grav() { float ElapsedTime...
DU zeihst dein Sprite ständig um 10(gerundet) nach unten also: Hier rechnest du die neue GEschwindigkeit aus: v(t + dt) = v(t) - g * dt Geschwindigkeit-=Gravitation*verstrichene Zeit Und hier die neue Position y(t + dt) = y(t) + v(t + dt) * dt Position Y+=Geschwindigkeit*verstrichende Zeit v=Die Geschwindigkeit nach oben g=Gravitation(9.81 ger.10) t=Zeit dt=verstrichene Ziet y=Position deines Sprite an der Y-Achse (Guck bitte das nächste mal genauer in den Thread, ich habe alles nur kopiert, ein...
Für was, die Gravitation oder der Sprung
Du musst einfach dein Sprite ständig um 9,81 m/s² nach unten bewegen, bis eine Kollision mit dem Boden stattfindet(Gravitation) und dann beim springen ihn um einen gewissen Wert nach oben ziehen, die Gravitation zieht in nachher wieder nach unten https://www.spieleprogrammierer.de/phpBB2/viewtopic.php?t=12971&highlight=sprung (Die Suche ist dein Freund )
Das Spiel Spore hat die Sonnensysteme gut gelöst. Hier ein paar Bilder davon Man zoomt zuerst an und zentriert die KAmera dann mit einem Mausklick auf den Planeten (Natürlich könnt ihr höchstens nur das 4 und 5 Bild realisieren, weil 100000 Sonnensysteme etwas viel sind :lol: ) Es wäre auch noch ganz schön, wenn man wenigstens ein Highscore in das Spiel einbaut, um einen (weiteren) Ansporn zu haben Sonst müsste es eigentlich realisierbar sein
Guten Rutsch auch von mir!
Stimmt, habe übersehen, dass Parameters als Pointer deklariert wurde :roll:
Vielen Dank [EDIT] Muss das nicht so heißen C-/C++-Quelltext 1 2 MyParameters Parameters; threadHandle1 = CreateThread(NULL, 0, thread1, (LPVOID)&Parameters, 0, &threadDword1);
Hallo, Ich habe folgende Frage: Ist es möglich an einen Thread mehrere Parameter zu übergeben? Bisher schaffe ich es nur mit einem: 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 #include <cstdlib> #include <iostream> #include <windows.h> using namespace std; DWORD WINAPI thread1(LPVOID lpParameter) { for(int a=0;a<(int)lpParameter;a++) cout << "Thread1:" << a << "\n"; return 0; } int main() { DWORD threadDword1; HANDLE threadHandle1; int parameter1=50; threadHandle...
Ich habe doch gesagt,dass man vorne im Buch gucken muss. Dort steht,dass man unter die Seite www.hanser.de/ciando gehen muss und dort sich regiestriren muss. Man muss die ISBN Nummer eingeben und den code vorne im Buch. Dort kann man dann auch den Cd Inhalt herunterladen.
Doch im Netz steht die Engine und die Buch-CD zum herunterladen!! Wenn man mal ganz vorne im Buch guckt,dann sieht man ,wie man den Inhalt des Buches im Internet herunterladen kann. Dort steht dann auch die ganze Buch-CD zum herunterladen.(Inklusive Tribase-engine) 454mb :? <!--splitLinkBegin--><!--splitLinkEnd--><!--noLinkBegin-->ExternesOriginalbildanzeigen(Link)<!--noLinkEnd-->
Aber wenn er das restliche genauso abgeschrieben hat bin ich davon augegange,dass er hInstce ausversehen falsch abgeschrieben hat
Dieser eine Tippfehler kann ja auch nicht die ganzen Fehler in den Includes von Tribase erzeugen :lol: Ich habe mir nur ein Fehler herausgenommen
Ok,Spiri eröffne mal ein neuen Tread