Documentation

Overview

    Package ca provides access to Apple's Core Animation API (https://developer.apple.com/documentation/quartzcore).

    This package is in very early stages of development. It's a minimal implementation with scope limited to supporting the movingtriangle example.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    This section is empty.

    Types

    type Layer

    type Layer interface {
    	// Layer returns the underlying CALayer * pointer.
    	Layer() unsafe.Pointer
    }

      Layer is an object that manages image-based content and allows you to perform animations on that content.

      Reference: https://developer.apple.com/documentation/quartzcore/calayer.

      type MetalDrawable

      type MetalDrawable struct {
      	// contains filtered or unexported fields
      }

        MetalDrawable is a displayable resource that can be rendered or written to by Metal.

        Reference: https://developer.apple.com/documentation/quartzcore/cametaldrawable.

        func (MetalDrawable) Drawable

        func (md MetalDrawable) Drawable() unsafe.Pointer

          Drawable implements the mtl.Drawable interface.

          func (MetalDrawable) Texture

          func (md MetalDrawable) Texture() mtl.Texture

            Texture returns a Metal texture object representing the drawable object's content.

            Reference: https://developer.apple.com/documentation/quartzcore/cametaldrawable/1478159-texture.

            type MetalLayer

            type MetalLayer struct {
            	// contains filtered or unexported fields
            }

              MetalLayer is a Core Animation Metal layer, a layer that manages a pool of Metal drawables.

              Reference: https://developer.apple.com/documentation/quartzcore/cametallayer.

              func MakeMetalLayer

              func MakeMetalLayer() MetalLayer

                MakeMetalLayer creates a new Core Animation Metal layer.

                Reference: https://developer.apple.com/documentation/quartzcore/cametallayer.

                func (MetalLayer) Layer

                func (ml MetalLayer) Layer() unsafe.Pointer

                  Layer implements the Layer interface.

                  func (MetalLayer) NextDrawable

                  func (ml MetalLayer) NextDrawable() (MetalDrawable, error)

                    NextDrawable returns a Metal drawable.

                    Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/1478172-nextdrawable.

                    func (MetalLayer) PixelFormat

                    func (ml MetalLayer) PixelFormat() mtl.PixelFormat

                      PixelFormat returns the pixel format of textures for rendering layer content.

                      Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/1478155-pixelformat.

                      func (MetalLayer) SetDevice

                      func (ml MetalLayer) SetDevice(device mtl.Device)

                        SetDevice sets the Metal device responsible for the layer's drawable resources.

                        Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/1478163-device.

                        func (MetalLayer) SetDisplaySyncEnabled

                        func (ml MetalLayer) SetDisplaySyncEnabled(enabled bool)

                          SetDisplaySyncEnabled controls whether the Metal layer and its drawables are synchronized with the display's refresh rate.

                          Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/2887087-displaysyncenabled.

                          func (MetalLayer) SetDrawableSize

                          func (ml MetalLayer) SetDrawableSize(width, height int)

                            SetDrawableSize sets the size, in pixels, of textures for rendering layer content.

                            Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/1478174-drawablesize.

                            func (MetalLayer) SetMaximumDrawableCount

                            func (ml MetalLayer) SetMaximumDrawableCount(count int)

                              SetMaximumDrawableCount controls the number of Metal drawables in the resource pool managed by Core Animation.

                              It can set to 2 or 3 only. SetMaximumDrawableCount panics for other values.

                              Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/2938720-maximumdrawablecount.

                              func (MetalLayer) SetOpaque

                              func (ml MetalLayer) SetOpaque(opaque bool)

                                SetOpaque a Boolean value indicating whether the layer contains completely opaque content.

                                func (MetalLayer) SetPixelFormat

                                func (ml MetalLayer) SetPixelFormat(pf mtl.PixelFormat)

                                  SetPixelFormat controls the pixel format of textures for rendering layer content.

                                  The pixel format for a Metal layer must be PixelFormatBGRA8UNorm, PixelFormatBGRA8UNormSRGB, PixelFormatRGBA16Float, PixelFormatBGRA10XR, or PixelFormatBGRA10XRSRGB. SetPixelFormat panics for other values.

                                  Reference: https://developer.apple.com/documentation/quartzcore/cametallayer/1478155-pixelformat.

                                  GOOS=darwin, GOARCH=amd64

                                  Source Files