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

24.04.2014, 18:44

LWJGL OpenGLException

Das Spiel wird von der IDE (eclipse) einwandfrei erstellt und ausgeführt.

Wenn ich das Spiel aber exportiere und als JAR starten will kommt folgende Fehlermeldung:

Zitat


Exception in thread "main" org.lwjgl.opengl.OpenGLException: Invalid value (1281) <- Edit falsche Nr. :) habs korrigiert (von 1081 auf 1281)

at org.lwjgl..opengl.Util.checkGLError(Util.java:59)
at org.lwjgl.opengl.GL11.glNewList(GL11.java:2516)
at entity.Terrain.render(Terrain.java:17)
at de.lgs.main.game.start(game.java:65)
at de.lgs.main.game.main(game.java:123)


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
@Override
public void render() {
    glNewList(0,GL_COMPILE);
        for (int z = 0; z < data.length - 1; z++) {
            glBegin(GL_TRIANGLE_STRIP);
            for (int x = 0; x < data[z].length; x++) {
                glVertex3f(x, data[z][x], z);
                glVertex3f(x, data[z + 1][x], z + 1);
            }
            glEnd();
        }
        glEndList();
    }


Terrain erbt von Entity (Position Rotation sowie abstrakte "update" und "render" - Methoden)
Terrain benutzt zur "init" TerrainType (Der Terrain "Datentyp" bzw. Vertex und Texture Speicher [später auch Shader ;) ])

Ich denke das der fehler in der oben stehenden "Terrain.render" auftritt da: at entity.Terrain.render(Terrain.java:17)

Wo ist der Fehler? - ok Zeile 17 also: >> glNewList(0,GL_COMPILE); << - aber warum?
Vorallem da es in der IDE problemlos ausgeführt wird (im Debugmods UND im "Release" Modus) - aber in der jar zu Fehlern führt.

MfG Christian
LostLife ein 3D RPG - development

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »ChrisIsOn« (24.04.2014, 20:01)


DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

2

24.04.2014, 20:18

Benutz doch mal glGetError().
Sonst kann man auch noch sagen dass das ziemlich veraltetes GL ist, wobei ich glaube das früher die display lists auch nicht jedes Frame neu aufgesetzt wurden... oder?

3

24.04.2014, 20:21

Aus der opengl doc:

https://www.opengl.org/sdk/docs/man2/xhtml/glNewList.xml

Zitat

GL_INVALID_VALUE is generated if list is 0
EnvisionGame(); EnableGame(); AchieveGame(); - Visionen kann man viele haben. Sie umzusetzen und auf das Ergebnis stolz zu sein ist die eigentliche Kunst.

4

25.04.2014, 11:42

Ok habs zumindest so weit das es läuft.

:)

Nur was mich wundert ist das es in der IDE lief...

MfG Chris

PS THX für die Hilfe
LostLife ein 3D RPG - development

5

25.04.2014, 12:08

Schau mal in den output von der IDE. Möglicherweise ist opengl schlau und kann das im debugging noch geradebiegen ;)
EnvisionGame(); EnableGame(); AchieveGame(); - Visionen kann man viele haben. Sie umzusetzen und auf das Ergebnis stolz zu sein ist die eigentliche Kunst.

6

25.04.2014, 14:02

Die IDE lief aber nicht im Debugging Modus ^^
LostLife ein 3D RPG - development

DeKugelschieber

Community-Fossil

Beiträge: 2 641

Wohnort: Rheda-Wiedenbrück

Beruf: Software-Entwickler

  • Private Nachricht senden

7

25.04.2014, 14:16

eclipse erstellt Standardmäßig eine Debug Version.
Aber keine Ahnung ob das für Java überhaupt gilt ;)

8

25.04.2014, 14:22

Ach so ok. :)
LostLife ein 3D RPG - development

Werbeanzeige