コード例 #1
0
ファイル: player.c プロジェクト: ayyi/samplecat
static guint
icon_to_texture(GdkPixbuf* icon)
{
	dbg(0, "icon: pixbuf=%ix%i %ibytes/px", gdk_pixbuf_get_width(icon), gdk_pixbuf_get_height(icon), gdk_pixbuf_get_n_channels(icon));
	glBindTexture   (GL_TEXTURE_2D, textures[t_idx++]);
	glTexParameterf (GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
	glTexParameterf (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
	glTexImage2D    (GL_TEXTURE_2D, 0, GL_RGBA, gdk_pixbuf_get_width(icon), gdk_pixbuf_get_height(icon), 0, GL_RGBA, GL_UNSIGNED_BYTE, gdk_pixbuf_get_pixels(icon));
	gl_warn("texture bind");

	g_object_unref(icon);

	return textures[t_idx - 1];
}
コード例 #2
0
ファイル: background.c プロジェクト: EQ4/libwaveform
AGlActor*
background_actor(WaveformActor* view)
{
	agl = agl_get_instance();

	void agl_load_alphamap(char* buf, guint texture, int width, int height)
	{
		int pixel_format = GL_ALPHA;
		glBindTexture  (GL_TEXTURE_2D, texture);
		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
		glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
		glTexImage2D(GL_TEXTURE_2D, 0, GL_ALPHA, width, height, 0, pixel_format, GL_UNSIGNED_BYTE, buf);
#ifdef DEBUG
		gl_warn("binding bg texture");
#endif
	}