Утечка памяти - программирование 3D-игр с использованием LWJGL - PullRequest
0 голосов
/ 26 сентября 2019

Я делаю 3D-игру, используя LWJGL.Моя проблема в удалении VAO & VBO.Я создал класс Model, который имеет информацию о модели и знает, что это идентификаторы VAO и VBO.Я также сделал такой метод для удаления VAO и VBO модели (когда камера заходит слишком далеко):

public void unload(Model model) {
    List<Integer> vboIDs = model.getVboIDs();
    for(int v : vboIDs) {
    GL15.glDeleteBuffers(v);
    }
    GL30.glDeleteVertexArrays(model.getVaoID());
    GL11.glDeleteTextures(model.getTextureID());
}

Но когда я зашел так далеко, как он вызвал память этого метода, используя значение game, неизменилось, и когда я вернулся в последнюю позицию, значение памяти увеличилось.Я сделал это 10 раз, и теперь я уверен, что есть «утечка памяти».Мой первый вопрос: это проблема из-за этого метода?Второй вопрос: если из-за этого какая часть вызывает утечку?Спасибо за чтение.

...