当前位置: 首页>>代码示例>>Golang>>正文


Golang Context.CreateTexture方法代码示例

本文整理汇总了Golang中golang.org/x/mobile/gl.Context.CreateTexture方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.CreateTexture方法的具体用法?Golang Context.CreateTexture怎么用?Golang Context.CreateTexture使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在golang.org/x/mobile/gl.Context的用法示例。


在下文中一共展示了Context.CreateTexture方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: loadTexture

func loadTexture(glctx gl.Context) {
	a, err := asset.Open("key.jpeg")
	if err != nil {
		log.Fatal(err)
	}
	defer a.Close()

	img, _, err := image.Decode(a)
	if err != nil {
		log.Fatal(err)
	}

	rect := img.Bounds()
	rgba := image.NewRGBA(rect)
	draw.Draw(rgba, rect, img, rect.Min, draw.Src)
	tex := glctx.CreateTexture()

	glctx.ActiveTexture(gl.TEXTURE0)
	glctx.BindTexture(gl.TEXTURE_2D, tex)

	glctx.TexImage2D(gl.TEXTURE_2D, 0, 859, 610, gl.RGBA, gl.UNSIGNED_BYTE, rgba.Pix)

	glctx.TexParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR)
	glctx.TexParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR)
	glctx.TexParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE)
	glctx.TexParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE)

	glctx.ActiveTexture(gl.TEXTURE0)
	glctx.BindTexture(gl.TEXTURE_2D, tex)
	glctx.TexImage2D(
		gl.TEXTURE_2D, 0,
		rect.Max.X-rect.Min.X, rect.Max.Y-rect.Min.Y,
		gl.RGBA, gl.UNSIGNED_BYTE, rgba.Pix)
}
开发者ID:rakyll,项目名称:GCSolutions,代码行数:34,代码来源:main.go

示例2: NewTextureBuffer

// TODO pass in an actual Texture ...
func NewTextureBuffer(ctx gl.Context, width, height int) *TextureFramebuffer {
	buf := &TextureFramebuffer{w: width, h: height}
	buf.fbo = Framebuffer{ctx.CreateFramebuffer()}
	buf.tex = Texture{ctx.CreateTexture()}

	buf.def = TextureDef(0, width, height, gl.RGBA, nil)
	buf.filter = TextureFilter(gl.LINEAR, gl.LINEAR)
	buf.wrap = TextureWrap(gl.REPEAT, gl.REPEAT)
	buf.withtex = FramebufferWithTex(buf.tex, 0, buf.def, buf.filter, buf.wrap)
	return buf
}
开发者ID:dskinner,项目名称:material,代码行数:12,代码来源:glutil.go

示例3: Create

func (tex *Texture) Create(ctx gl.Context) {
	tex.Texture = ctx.CreateTexture()
}
开发者ID:dskinner,项目名称:material,代码行数:3,代码来源:gl.go


注:本文中的golang.org/x/mobile/gl.Context.CreateTexture方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。