42 Videos
238 Protokoll
Wir verlassen hatte, es läuft, und wir hatten blieb, warum wir nichts sehen. Mal sehen, wie wir die Welt Bildschirm zeichnen. Dafür, Es hängt davon ab, wie wir Box2D verwenden. In diesem Fall nehmen wir an, dass wir mit Box2D Libgdx verwenden, obwohl es auch separat eingesetzt werden können. Box2D ist eine Bibliothek, ein uninteressant, wird gemacht, weil alles logisch zu arbeiten. Aktualisiert physischen, aber am Ende mit Box2D sie Koordinatenpositionen erhalten werden,
zur Verwendung mit den Objekten, die wir haben. Das heißt, im Falle einer normalen Nutzung von Box2D, wenn Sie integrieren Berechnungen und geben sie an die Schauspieler gezeichnet werden. Wie wir jetzt Schauspieler haben, müssen wir einen Weg kleinen Boxen zumindest zu sehen. In Box2D oder JBox2D von Prüfständen getan, aber hier gibt Libgdx Prüfständen, aber es gibt eine Klasse voll gemacht von Libgdx genannt Box2DDebugRenderer, verwendet, um eine Welt zu ziehen
pro Bildschirm. Das erste, was ich geschaffen ist Box2DDebugRenderer Instanz. Und jetzt, was ich tun ist instantiate, es ist einfach, weil die Box2DDebugRenderer Es hat keine Parameter. Was hat, ist jedoch eine schöne Methode namens dispose, die ich nicht, dass Sie für den Aufruf vergessen. Und jetzt werde ich bitten, Renderer die Welt zu ziehen, und dies tun wir, nach Actualizad physisch. Nehmen Sie meinen Rat in diesem Detail: Wir müssen die physische Aktualisierung vor dem Zeichnen,
denn wenn nicht selten Dinge passieren kann, weil das, was auf dem Bildschirm sieht der Benutzer entsprechen dem aktuellen Logik der Welt nicht, und das kann es machen der Charakter scheint die beste ist tot, bevor sie sehen können. Immer aktualisieren, bevor zeichnen, so dass wir vor allem genannt renderer.render () aktualisiert werden. Wir haben zwei Parameter, ist die Welt, und das andere ist ... ein MATRIX4? Wo haben Sie es aus? Dies ist eine Projektionsmatrix. OpenGL
und in der 3D-Welt, weil sie anderen Bibliotheken haben, ziehen die Dinge auf dem Bildschirm und zu wissen, wie groß die Dinge sein sollten, dass passen auf dem Bildschirm, eine Projektionsmatrix, die eine Sache, die die Grafikkarte und große Dinge erzählt sollte, wird gezogen werden verwendet. Dies ist theoretisch möglich, da es rein OpenGL ist so dass ich nicht zu viel Zeit damit verbringen, weil es komplex ist zu verstehen, wenn Sie noch nie davon gehört haben,
aber ich brauche eine Matrix zu erzeugen OpenGL zu sagen, wie groß sollte alles sehen. Und dafür gibt es mehrere Möglichkeiten gibt, ist man ein Spritebatch zu erstellen wie wir gesehen haben, schon bringt er seine eigene Matrix. Der andere Weg ist es selbst zu schaffen. Und jetzt wird jemand sagen, bekomme ich Arrays zu erstellen? Vielleicht wissen einige nicht sogar noch Matrizen verwenden. Oder gibt es jemanden, der sich nicht erinnern kann. Egal, denn Libgdx hat eine Klasse dies für uns zu tun.
Und in OpenGL ist es normal, Kameras zu verwenden. Nicht wie die reale Welt, sondern Datenstrukturen mit einer Breite, Höhe, Zoom ... und nach unserem Geschmack erzeugen Matrizen für die Verwendung mit machen, oder andere Dinge von OpenGL. Also zuerst werde ich eine Schriftkameratyp für den Einsatz in einer 2D-Welt zu schaffen. Die Schrift sind Orthogonalprojektion, so dass wir nur für ein 2D-Welt benötigen. Ich glaube einfach, und wenn der Bauherr sollte ich die Breite erzählen und
hoch, dass Sie die Kamera haben muss. Denn jetzt werde ich die Dimensionen des Bildschirms mit Gdx.graphics.getWidth () und Gdx.graphics.getHeight () geben. Sobald wir getan haben, können, was wir tun, ist die Welt sagen, machen die Welt mit Hilfe der Matrix-Kamera zu machen, die ich mit camera.combined zugreifen. Ein weiteres Detail: Bevor mit der Kamera arbeiten, muss die Kamera aktualisiert werden, so dass sie diese Matrix erzeugen kann, weil nicht sofort erzeugt.
Dies ist wichtig, wenn wir die Abmessungen der Kamera zu ändern, wenn wir die Größe ändern, aber irgendwie muss erzeugt werden. Hier ist alles: ein Renderer, eine Kamera, und Call-Update. Mal sehen, wie die Welt gezogen wird, zumindest zu sehen, ob es kompiliert und nicht ausfällt. Aber ... hat jemand ans Licht vergessen? Nein, was passiert, ist, dass es immer noch Körper sind, die darstellen. Also mal sehen, wie die Körper als Schauspieler zu vertreten, Feinde,
Boden ... Mal sehen, wie sie es tun, zum Beispiel, um ein Zeichen.
Über den Autor
Biografie: Analyst-Programmierer in verschiedenen Sprachen. Tutor PREMIUM-Plattformen weltweit als CodigoFacilito anerkannt. Editor Cristalab Artikel. Mein YouTube-Kanal wird von der ANAYA und LaTostadora Verlag gefördert. Ich mag im Detail und geben einige Beispiele für die Vermeidung von Missverständnissen zu erklären.