Exemple #1
0
void glsl_destroy(GLSLProgram *program) {
	unregister_gl_resource_holder(program);
	glDeleteShader(program->vsh_);
	glDeleteShader(program->fsh_);
	glDeleteProgram(program->program_);
	active_programs.erase(program);
	delete program;
}
Exemple #2
0
void glsl_destroy(GLSLProgram *program) {
	if (program) {
		unregister_gl_resource_holder(program);
		glDeleteShader(program->vsh_);
		glDeleteShader(program->fsh_);
		glDeleteProgram(program->program_);
		active_programs.erase(program);
	} else {
		ELOG("Deleting null GLSL program!");
	}
	delete program;
}
TransformDrawEngine::~TransformDrawEngine() {
	DestroyDeviceObjects();
	FreeMemoryPages(decoded, DECODED_VERTEX_BUFFER_SIZE);
	FreeMemoryPages(decIndex, DECODED_INDEX_BUFFER_SIZE);
	FreeMemoryPages(transformed, TRANSFORMED_VERTEX_BUFFER_SIZE);
	FreeMemoryPages(transformedExpanded, 3 * TRANSFORMED_VERTEX_BUFFER_SIZE);
	delete [] quadIndices_;

	unregister_gl_resource_holder(this);
	for (auto iter = decoderMap_.begin(); iter != decoderMap_.end(); iter++) {
		delete iter->second;
	}
	delete [] uvScale;
}
Exemple #4
0
	~Thin3DGLTexture() {
		unregister_gl_resource_holder(this);
		Destroy();
	}
Exemple #5
0
	~Thin3DGLShaderSet() {
		unregister_gl_resource_holder(this);
		vshader->Release();
		fshader->Release();
		glDeleteProgram(program_);
	}
Exemple #6
0
	~Thin3DGLBuffer() override {
		unregister_gl_resource_holder(this);
		glDeleteBuffers(1, &buffer_);
	}
Exemple #7
0
void DrawBuffer::Shutdown() {
	glDeleteBuffers(1, (GLuint *)&vbo_);
	vbo_ = 0;
	inited_ = false;
	unregister_gl_resource_holder(this);
}
Exemple #8
0
Texture::~Texture() {
	unregister_gl_resource_holder(this);
	Destroy();
}