(int sizeMin)
| 214 | } |
| 215 | |
| 216 | private void expandVbo(int sizeMin) |
| 217 | { |
| 218 | int i; |
| 219 | |
| 220 | for (i = this.capacity * 6 / 4; i < sizeMin; i = i * 6 / 4) |
| 221 | { |
| 222 | ; |
| 223 | } |
| 224 | |
| 225 | long j = this.toBytes(this.capacity); |
| 226 | long k = this.toBytes(i); |
| 227 | int l = OpenGlHelper.glGenBuffers(); |
| 228 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_ARRAY_BUFFER, l); |
| 229 | OpenGlHelper.glBufferData(OpenGlHelper.GL_ARRAY_BUFFER, k, OpenGlHelper.GL_STATIC_DRAW); |
| 230 | Config.checkGlError("Expand VBO"); |
| 231 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_ARRAY_BUFFER, 0); |
| 232 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_COPY_READ_BUFFER, this.glBufferId); |
| 233 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_COPY_WRITE_BUFFER, l); |
| 234 | OpenGlHelper.glCopyBufferSubData(OpenGlHelper.GL_COPY_READ_BUFFER, OpenGlHelper.GL_COPY_WRITE_BUFFER, 0L, 0L, j); |
| 235 | Config.checkGlError("Copy VBO: " + k); |
| 236 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_COPY_READ_BUFFER, 0); |
| 237 | OpenGlHelper.glBindBuffer(OpenGlHelper.GL_COPY_WRITE_BUFFER, 0); |
| 238 | OpenGlHelper.glDeleteBuffers(this.glBufferId); |
| 239 | this.bufferIndexVertex = Config.createDirectIntBuffer(i); |
| 240 | this.bufferCountVertex = Config.createDirectIntBuffer(i); |
| 241 | this.glBufferId = l; |
| 242 | this.capacity = i; |
| 243 | } |
| 244 | |
| 245 | public void bindBuffer() |
| 246 | { |
no test coverage detected