[OpenGL] Spiel in der Art von Age of Empires

Hi,
momentan probier ich so als Hobbyprojekt nen 3D game in der Art von Age of Empires zu schreiben, auch inspiriert von RimWorld und Banished, also mit Kästcheneinteilung. Dazu programmiere ich grade meine eigene Engine auf der Basis von OpenGL und lwjgl.

Ich weiß wie Programmierung in Grunde abläuft, ich habe schon ein paar Minecraft-Plugins programmiert.

Momentan teste ich so, wie ich das mit der "Fläche" machen kann. Logischerweise kann man nicht pro Kästchen nen eigenes Mesh nehmen, da bekomme ich auf ner 500x500er Testmap, wenn ich alles rendern lasse, 9fps. Dann hab ich mal probiert, nen mesh für 16x16 blöcke (die map dann 512x512) zu nehmen, allerdings bekomme ich das grad mit dem uv mapping iwie nicht wirklich hin und die fps sind auch nur bei 39 :noe: Weiß jemand, wie man das ressourcenschonender Umsetzen kann (mal abgesehen von dem zielgerichteten rendern von nur dem gebiet, wo man grad hinschaut)?
 

Highchiller

Bekanntes Mitglied
Eventuell musst du deine Prioritäten etwas anders setzen. Magst du eine eigene Engine schreiben oder willst du ein Spiel programmieren? Beides ist sehr... seeeeeehr umfangreich, vor allem alleine.

Heutzutage programmiert man Engines vor allem zu lern zwecken. Oder man gehört einer großen Firma oder einer großen Gruppe von enthusiastischen Codern an, die ein Ziel vor Augen haben. Wenn man dagegen ein Spiel programmieren will ist man deutlich besser bedient vorhandene Engines zu nutzen.

Wie dem auch sei, zurück zu deiner eigentlichen Frage. Wenn du den Grund renderst nutzt du meistens aus, das dieser sich nicht ändert. Will heißen, für eine total ebene Fläche (keine Berge, Täler, Wasser) brauchst du genau 1 Rechteck, sprich 4 Kanten mit 4 Ecken. Und die verschiedenen Untergründe erstellst du mit Hilfe von Textures/Bildern.
Die Rasterteilung unternimmst du dann hinter den Kulissen in der Programmlogik.

Als Spieleprogrammierer musst du an allen Enden trixen... Statt ne Milliarde Vertices nimmste nur wenige 100, den Rest der Illusion übernehmen Bump-Maps/Normal-Maps, AO, Specularity etc.

Vertices sind tödlich für den Rechner. Je weniger desto besser ;)
 
Es ist beides zu mehr oder weniger Übungszwecken. Ich möchte halt mal wissen wie man das von Grund auf macht. Ich wollte jetzt erstmal testen, wie das läuft wenn ich für jeden "block" 2 triangles habe. Es wird wohl besser sein von Anfang an das ganze zu optimieren. Aber mir gefällt irgendwie nicht, dass die Performance bei einer relativ simplen "plane" so schlecht wird. Wenn später viele Unregelmäßigkeiten in der Landschaft durch Gameplayelemente entstehen und dann noch Gebäude rumstehen wirds ja im laufenen Game vielleicht sogar auf so eine Performance hinauslaufen. Naja, mal schauen.
 

Highchiller

Bekanntes Mitglied
Im Endeffekt bleibt natürlich noch die Möglichkeit das dein Code bis jetzt schon deutlich optimierungspotential liefert. Aber ohne Code lässt sich das natürlich nicht sagen. :)
 
Hm, erstmal hab ich ein anderes großes Problem: ich bekomme es nicht hin, 2D sachen zu rendern. also 3d objekte gehen schon, aber 2d fürs gui nicht :( hab versucht Text über verschiedene Wege darzustellen, dann auch nur ein viereck, aber nichts von dem wird gerendert.
das ist meine temporäre render-methode zum testen, wenn mehr code benötigt wird bescheid sagen, möchte jetzt nicht gleich alles posten obwohls vielleicht gar nicht gebraucht wird.
Java:
	public void render(){
		shader.bind();
		shader.updateUniforms(transform.getTransformation(), transform.getProjectedTransformation(), material);
		//3D
		w.drawMeshes(camera);
		//end 3D
		shader.unbind();
		
        glMatrixMode(GL_PROJECTION);
        glPushMatrix();
        glLoadIdentity();
        glOrtho(0,Main.width,Main.height,0,-1,1);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
 
        //2D
        glColor3f(1, 0, 0);
        glBegin(GL_QUADS);
        glVertex2f(200, 200);
        glVertex2f(264, 200);
        glVertex2f(264, 264);
        glVertex2f(200, 264);
        glEnd();
		BitmapHandler.drawString(0, 100, 100, "test");
		fonts.get(0).drawString(100, 50, "test", Color.yellow);
		Fonter.font.drawString(100, 100, "test", Color.black);
		TextureImpl.bindNone();
        //end 2D
        
        glMatrixMode(GL_PROJECTION);
        glPopMatrix();
        glMatrixMode(GL_MODELVIEW);
	}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
temi OpenGL: Eine Kugel Spiele- und Multimedia-Programmierung 7
P Audio Visualizer mit OpenGL in Java? Spiele- und Multimedia-Programmierung 4
Z Vlcj in OpenGL Spiele- und Multimedia-Programmierung 4
coolian opengl von scale in breite und höhe konvertieren Spiele- und Multimedia-Programmierung 23
F OpenGL (LWJGL) Shader Programmierung GLSL Spiele- und Multimedia-Programmierung 2
K Messdaten in Echtzeit darstellen in OpenGL Spiele- und Multimedia-Programmierung 4
J OpenGL Bild wird nicht richtig angezeigt Spiele- und Multimedia-Programmierung 2
B LWJGL OpenGL SIGSEGV auf Linux (Verzweiflung :/) Spiele- und Multimedia-Programmierung 8
KeexZDeveoper Fehler von OpenGL Spiele- und Multimedia-Programmierung 1
Kim_Dotcom libGDX - opengl Fehler Spiele- und Multimedia-Programmierung 5
Streeber Problem mit Transparenz/TextDrawing in LWJGL/Slick2d (OpenGL) Spiele- und Multimedia-Programmierung 1
RalleYTN OpenGL Context im JFrame? Spiele- und Multimedia-Programmierung 0
L OpenGL TransformationMatrix eines Flugzeugs Spiele- und Multimedia-Programmierung 2
F OpenGL - Transparenz mit Depth Peeling Spiele- und Multimedia-Programmierung 0
turing OpenGL / Jogle Code Reveiw zur Performance Verbesserung Spiele- und Multimedia-Programmierung 1
K LibGdx, Loadingscreen & Opengl context Spiele- und Multimedia-Programmierung 3
turing OpenGL VBO and Unfiform Handling Spiele- und Multimedia-Programmierung 1
B LWJGL / OPENGL Kriege Depth-Test nicht hin :( Spiele- und Multimedia-Programmierung 0
T opengl und Android.... Spiele- und Multimedia-Programmierung 3
R LWJGL: OpenGL Fehler - weitere Informationen auslesen möglich? Spiele- und Multimedia-Programmierung 2
T Welche OpenGL-Version soll ich verwenden? Spiele- und Multimedia-Programmierung 2
O OpenGL - Texture falsch herum Spiele- und Multimedia-Programmierung 3
Gregorrr OpenGL & RCP/SWT Spiele- und Multimedia-Programmierung 3
P LWJGL oder OpenGL (C++) Spiele- und Multimedia-Programmierung 7
K Android: OpenGL render performance Tipps ? Spiele- und Multimedia-Programmierung 4
lumo opengl, sprites/tiles Spiele- und Multimedia-Programmierung 8
M OpenGL: Rectangle dort erstellen wo ich hintippe Spiele- und Multimedia-Programmierung 2
U OpenGl 1.1 (LWJGL GL11.*) und weiter? Spiele- und Multimedia-Programmierung 7
CookieSoft OpenGl Translatef Frage Spiele- und Multimedia-Programmierung 2
V Keine Ahnung von OpenGL! Hilfe wäre lieb! Spiele- und Multimedia-Programmierung 8
T 3D Stadtmodell mit OpenGL Spiele- und Multimedia-Programmierung 5
TheWhiteShadow OpenGL glDrawArrays Bufferfehler Spiele- und Multimedia-Programmierung 10
B LWJGL/OpenGL rendert manche Objekte nicht Spiele- und Multimedia-Programmierung 6
S OpenGL Textur unsauber Spiele- und Multimedia-Programmierung 2
T OpenGL ES verschwindene Vertices Spiele- und Multimedia-Programmierung 2
T Android OpenGL Bewegen Spiele- und Multimedia-Programmierung 5
R OpenGL Textur mit verschiedenen bit depths Spiele- und Multimedia-Programmierung 6
Helgon OpenGL Blend Frage Spiele- und Multimedia-Programmierung 18
A LWJGL/OpenGL und Text Spiele- und Multimedia-Programmierung 8
Helgon OpenGL vernünftige Tutorial? Spiele- und Multimedia-Programmierung 22
A OpenGL Textur und nicht Textur Spiele- und Multimedia-Programmierung 2
T Jmonkey opengl problem Spiele- und Multimedia-Programmierung 13
T Probleme mit Skysphere in Opengl Spiele- und Multimedia-Programmierung 4
M Problem mit Kamera (glMultMatrix (OpenGL/ LWJGL)/ Quaternionen) Spiele- und Multimedia-Programmierung 5
F Suche Tutorial zu "purem" OpenGL mit Java Spiele- und Multimedia-Programmierung 10
Kr0e OpenGL + glSubTexImage2D -> Bufferproblem Spiele- und Multimedia-Programmierung 3
F OpenGL Screenshot in iMove (als Greenscreen) => Farben invertiert? Spiele- und Multimedia-Programmierung 16
I Vergleich von Java3D und OpenGL Spiele- und Multimedia-Programmierung 17
F Mac: OpenGL Desktop-Screen aus Grafikkarte lesen Spiele- und Multimedia-Programmierung 2
F OpenGL 2D MouseClick/MouseMove Listener Spiele- und Multimedia-Programmierung 4
Kr0e Sehr schnelle Texturupdates (OpenGL) Spiele- und Multimedia-Programmierung 3
Kr0e OpenGL beliebige Texturgröße Spiele- und Multimedia-Programmierung 2
BattleMaster246 OpenGL - Transparenz Spiele- und Multimedia-Programmierung 10
Kr0e OpenGL .. Pixel Buffer Objekt oder Frame Buffer Object? Spiele- und Multimedia-Programmierung 2
Y JOGL / OPENGL in Frame Spiele- und Multimedia-Programmierung 11
A Problem openGL-Pipeline mit Win7? Spiele- und Multimedia-Programmierung 6
G OpenGL boolesche operation auf Rechtecke Spiele- und Multimedia-Programmierung 15
A JOGL / OpenGL Spiele- und Multimedia-Programmierung 7
G API für 3d-Programmierung? OpenGL? Spiele- und Multimedia-Programmierung 12
J OpenGL (JOGL) - Radial Blur Effekt (Glow) Spiele- und Multimedia-Programmierung 2
J Opengl Texture laden Null Pointer Exception Spiele- und Multimedia-Programmierung 6
J netbeans opengl keyPressed(KeyEvent evt) benutzen Spiele- und Multimedia-Programmierung 4
J netbeans opengl gluPerspective und gluLookAt Verständnis Spiele- und Multimedia-Programmierung 13
S glTexSubImage2D()-Fragen(Zerstörbares Terrain, OpenGL) Spiele- und Multimedia-Programmierung 3
Z Suche Tutorial zum Einstieg in OpenGl mit Java (JOGL) Spiele- und Multimedia-Programmierung 2
T Overlay in anderer OpenGL Anwendung Spiele- und Multimedia-Programmierung 4
egrath Vista OpenGL Performance Problem? Spiele- und Multimedia-Programmierung 3
Y OpenGL Spiele- und Multimedia-Programmierung 5
J opengl beispiele? Spiele- und Multimedia-Programmierung 10
D Java mit OpenGL - besser LWJGL oder JOGL? Spiele- und Multimedia-Programmierung 6
N OpenGL und DirectX - was genau ist das? Spiele- und Multimedia-Programmierung 5
C OpenGl Support für Applet (sun.java2d.opengl=True) Spiele- und Multimedia-Programmierung 3
B OpenGL oder Direct X Spiele- und Multimedia-Programmierung 9
xFearofdarkness Feinde überlappen sich in Java Spiel Spiele- und Multimedia-Programmierung 3
ItundMathe1994 TicTacToe Spiel programmieren Spiele- und Multimedia-Programmierung 2
JEP1 Hilfe bei Spiel Spiele- und Multimedia-Programmierung 1
P Pokemon Spiel Funktioniert nicht ? Spiele- und Multimedia-Programmierung 3
Leon.tr3x Mein erstes Programm/Spiel Spiele- und Multimedia-Programmierung 10
O Texas Hold'em Poker als Online-Spiel mit Freunden Spiele- und Multimedia-Programmierung 5
Drachenbauer Speicher-Tool für ein Spiel schreiben Spiele- und Multimedia-Programmierung 13
M Spiel Mühle-Programmierung Java Spiele- und Multimedia-Programmierung 9
Excess Spiel abzugeben Spiele- und Multimedia-Programmierung 1
I Superhelden - Spiel Spiele- und Multimedia-Programmierung 14
E Hauptmenü und Spiel ???? Spiele- und Multimedia-Programmierung 2
L Sound in Java Spiel Spiele- und Multimedia-Programmierung 5
R Interaktives Spiel Spiele- und Multimedia-Programmierung 5
L Spiel im Editor testen Spiele- und Multimedia-Programmierung 4
Jackii dispatchUncaughtException in Quiz Spiel mit GUI Layout Spiele- und Multimedia-Programmierung 6
D Textbasiertes Spiel Spiele- und Multimedia-Programmierung 8
K Android Spiel Programmieren Spiele- und Multimedia-Programmierung 6
L BrickBreaker Spiel Spiele- und Multimedia-Programmierung 3
A Spiel Figur ansprechen und bewegen Spiele- und Multimedia-Programmierung 3
it_is_all Dialogbox im Spiel - Text in Blöcke aufteilen Spiele- und Multimedia-Programmierung 4
F Koordinieren und Essen von Snake - Spiel Spiele- und Multimedia-Programmierung 14
G Entity Verwaltung in einem 2D Spiel Spiele- und Multimedia-Programmierung 1
E Möchte Spiel Programmieren Spiele- und Multimedia-Programmierung 7
S Connect6 Spiel - Code in ei Spiele- und Multimedia-Programmierung 2
A Spiel nach Abfrage beenden oder neustarten Spiele- und Multimedia-Programmierung 1
G Welten Generierung 2D Spiel Spiele- und Multimedia-Programmierung 4
G Java 2D Spiel mit LWJGL verbinden Spiele- und Multimedia-Programmierung 1

Ähnliche Java Themen

Neue Themen


Oben