mtldriver

package
v4.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 6, 2024 License: Apache-2.0, BSD-3-Clause Imports: 21 Imported by: 0

Documentation

Rendered for darwin/amd64

Overview

Package mtldriver provides a Metal driver for accessing a screen.

At this time, the Metal API is used only to present the final pixels to the screen. All rendering is performed on the CPU via the image/draw algorithms. Future work is to use mtl.Buffer, mtl.Texture, etc., and do more of the rendering work on the GPU.

Index

Constants

This section is empty.

Variables

View Source
var NewBGRA = image.NewRGBA

Functions

func Main

func Main(f func(screen.Screen))

Main is called by the program's main function to run the graphical application.

It calls f on the Screen, possibly in a separate goroutine, as some OS- specific libraries require being on 'the main thread'. It returns when f returns.

Types

type BGRA

type BGRA = image.RGBA

type Window

type Window struct {
	event.Deque
	// contains filtered or unexported fields
}

Window implements screen.Window.

func (*Window) Draw

func (w *Window) Draw(src2dst f64.Aff3, src screen.Texture, sr image.Rectangle, op draw.Op)

func (*Window) GetCursorPosition

func (w *Window) GetCursorPosition() (x, y float64)

func (*Window) HideCursor

func (w *Window) HideCursor() error

func (*Window) MoveWindow

func (w *Window) MoveWindow(x, y, width, height int) error

func (*Window) NextEvent

func (w *Window) NextEvent() interface{}

func (*Window) Publish

func (w *Window) Publish()

func (*Window) Release

func (w *Window) Release()

func (*Window) Scale

func (w *Window) Scale(dr image.Rectangle, src screen.Texture, sr image.Rectangle, op draw.Op)

func (*Window) SetBorderless

func (w *Window) SetBorderless(borderless bool) error

func (*Window) SetFullScreen

func (w *Window) SetFullScreen(full bool) error

func (*Window) SetIcon

func (w *Window) SetIcon(img image.Image) error

BUG: this doesn't work, and it doesn't error either

func (*Window) SetTitle

func (w *Window) SetTitle(title string) error

func (*Window) SetTopMost

func (w *Window) SetTopMost(topMost bool) error

func (*Window) Upload

func (w *Window) Upload(dp image.Point, src screen.Image, sr image.Rectangle)

Directories

Path Synopsis
internal
appkit
Package appkit provides access to Apple's AppKit API (https://developer.apple.com/documentation/appkit).
Package appkit provides access to Apple's AppKit API (https://developer.apple.com/documentation/appkit).
coreanim
Package coreanim provides access to Apple's Core Animation API (https://developer.apple.com/documentation/quartzcore).
Package coreanim provides access to Apple's Core Animation API (https://developer.apple.com/documentation/quartzcore).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL