本文整理汇总了Golang中github.com/hajimehoshi/ebiten/internal/opengl.Context.BlendFunc方法的典型用法代码示例。如果您正苦于以下问题:Golang Context.BlendFunc方法的具体用法?Golang Context.BlendFunc怎么用?Golang Context.BlendFunc使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/hajimehoshi/ebiten/internal/opengl.Context
的用法示例。
在下文中一共展示了Context.BlendFunc方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Exec
func (c *drawImageCommand) Exec(context *opengl.Context, indexOffsetInBytes int) error {
f, err := c.dst.createFramebufferIfNeeded(context)
if err != nil {
return err
}
if err := f.setAsViewport(context); err != nil {
return err
}
context.BlendFunc(c.mode)
n := c.quadsNum()
if n == 0 {
return nil
}
_, h := c.dst.Size()
proj := f.projectionMatrix(h)
p := &programContext{
state: &theOpenGLState,
program: theOpenGLState.programTexture,
context: context,
projectionMatrix: proj,
texture: c.src.texture.native,
colorM: c.color,
}
if err := p.begin(); err != nil {
return err
}
// TODO: We should call glBindBuffer here?
// The buffer is already bound at begin() but it is counterintuitive.
context.DrawElements(opengl.Triangles, 6*n, indexOffsetInBytes)
return nil
}