modelio

package
v0.19.0 Latest Latest
Warning

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

Go to latest
Published: Aug 11, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Rendered for darwin/amd64

Overview

Package modelio provides a fluent Go API over the macOS ModelIO framework.

Construction

New… functions create objects; each With… method sets one property and returns its receiver, so configuration calls chain. A <Type>FromID constructor adopts an Objective-C object obtained elsewhere.

Lifecycle

A wrapper releases its Objective-C object automatically once the garbage collector finds it unreachable. Call Release to relinquish the reference deterministically (for objects holding scarce resources); Release is idempotent, and afterwards the wrapper's methods are no-ops returning zero values.

Types

Each base type below lists the concrete types you construct and pass where the base is accepted:

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CanExportFileExtension added in v0.17.0

func CanExportFileExtension(extension string) bool

CanExportFileExtension returns a Boolean value that indicates whether the MDLAsset class can write asset data as a file with the specified format extension.

func CanImportFileExtension added in v0.17.0

func CanImportFileExtension(extension string) bool

CanImportFileExtension returns a Boolean value that indicates whether the MDLAsset class can read asset data from files with the specified extension.

func ConvertToUSDZWriteToURL added in v0.17.0

func ConvertToUSDZWriteToURL(inputURL string, outputURL string)

ConvertToUSDZWriteToURL wraps the corresponding Objective-C method.

func KUTType3dObject

func KUTType3dObject() obj.Object

KUTType3dObject returns the string constant kUTType3dObject, for use as a dictionary key or argument.

func KUTTypeAlembic

func KUTTypeAlembic() obj.Object

KUTTypeAlembic returns the string constant kUTTypeAlembic, for use as a dictionary key or argument.

func KUTTypePolygon

func KUTTypePolygon() obj.Object

KUTTypePolygon returns the string constant kUTTypePolygon, for use as a dictionary key or argument.

func KUTTypeStereolithography

func KUTTypeStereolithography() obj.Object

KUTTypeStereolithography returns the string constant kUTTypeStereolithography, for use as a dictionary key or argument.

func KUTTypeUniversalSceneDescription

func KUTTypeUniversalSceneDescription() obj.Object

KUTTypeUniversalSceneDescription returns the string constant kUTTypeUniversalSceneDescription, for use as a dictionary key or argument.

func KUTTypeUniversalSceneDescriptionMobile

func KUTTypeUniversalSceneDescriptionMobile() obj.Object

KUTTypeUniversalSceneDescriptionMobile returns the string constant kUTTypeUniversalSceneDescriptionMobile, for use as a dictionary key or argument.

func MDLVertexAttributeAnisotropy

func MDLVertexAttributeAnisotropy() obj.Object

MDLVertexAttributeAnisotropy returns the string constant MDLVertexAttributeAnisotropy, for use as a dictionary key or argument.

func MDLVertexAttributeBinormal

func MDLVertexAttributeBinormal() obj.Object

MDLVertexAttributeBinormal returns the string constant MDLVertexAttributeBinormal, for use as a dictionary key or argument.

func MDLVertexAttributeBitangent

func MDLVertexAttributeBitangent() obj.Object

MDLVertexAttributeBitangent returns the string constant MDLVertexAttributeBitangent, for use as a dictionary key or argument.

func MDLVertexAttributeColor

func MDLVertexAttributeColor() obj.Object

MDLVertexAttributeColor returns the string constant MDLVertexAttributeColor, for use as a dictionary key or argument.

func MDLVertexAttributeEdgeCrease

func MDLVertexAttributeEdgeCrease() obj.Object

MDLVertexAttributeEdgeCrease returns the string constant MDLVertexAttributeEdgeCrease, for use as a dictionary key or argument.

func MDLVertexAttributeJointIndices

func MDLVertexAttributeJointIndices() obj.Object

MDLVertexAttributeJointIndices returns the string constant MDLVertexAttributeJointIndices, for use as a dictionary key or argument.

func MDLVertexAttributeJointWeights

func MDLVertexAttributeJointWeights() obj.Object

MDLVertexAttributeJointWeights returns the string constant MDLVertexAttributeJointWeights, for use as a dictionary key or argument.

func MDLVertexAttributeNormal

func MDLVertexAttributeNormal() obj.Object

MDLVertexAttributeNormal returns the string constant MDLVertexAttributeNormal, for use as a dictionary key or argument.

func MDLVertexAttributeOcclusionValue

func MDLVertexAttributeOcclusionValue() obj.Object

MDLVertexAttributeOcclusionValue returns the string constant MDLVertexAttributeOcclusionValue, for use as a dictionary key or argument.

func MDLVertexAttributePosition

func MDLVertexAttributePosition() obj.Object

MDLVertexAttributePosition returns the string constant MDLVertexAttributePosition, for use as a dictionary key or argument.

func MDLVertexAttributeShadingBasisU

func MDLVertexAttributeShadingBasisU() obj.Object

MDLVertexAttributeShadingBasisU returns the string constant MDLVertexAttributeShadingBasisU, for use as a dictionary key or argument.

func MDLVertexAttributeShadingBasisV

func MDLVertexAttributeShadingBasisV() obj.Object

MDLVertexAttributeShadingBasisV returns the string constant MDLVertexAttributeShadingBasisV, for use as a dictionary key or argument.

func MDLVertexAttributeSubdivisionStencil

func MDLVertexAttributeSubdivisionStencil() obj.Object

MDLVertexAttributeSubdivisionStencil returns the string constant MDLVertexAttributeSubdivisionStencil, for use as a dictionary key or argument.

func MDLVertexAttributeTangent

func MDLVertexAttributeTangent() obj.Object

MDLVertexAttributeTangent returns the string constant MDLVertexAttributeTangent, for use as a dictionary key or argument.

func MDLVertexAttributeTextureCoordinate

func MDLVertexAttributeTextureCoordinate() obj.Object

MDLVertexAttributeTextureCoordinate returns the string constant MDLVertexAttributeTextureCoordinate, for use as a dictionary key or argument.

Types

type AnimatedMatrix4x4 added in v0.17.0

type AnimatedMatrix4x4 struct {
	AnimatedValue
}

AnimatedMatrix4x4 is an idiomatic wrapper over the Objective-C class MDLAnimatedMatrix4x4.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedMatrix4x4FromID added in v0.17.0

func AnimatedMatrix4x4FromID(id objc.ID) *AnimatedMatrix4x4

AnimatedMatrix4x4FromID adopts an existing Objective-C object as a AnimatedMatrix4x4 (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedMatrix4x4 added in v0.17.0

func NewAnimatedMatrix4x4() *AnimatedMatrix4x4

NewAnimatedMatrix4x4 creates a new AnimatedMatrix4x4.

func (*AnimatedMatrix4x4) Double4x4AtTime added in v0.18.0

func (am *AnimatedMatrix4x4) Double4x4AtTime(time_ float64) unsafe.Pointer

Double4x4AtTime wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) Float4x4AtTime added in v0.18.0

func (am *AnimatedMatrix4x4) Float4x4AtTime(time_ float64) unsafe.Pointer

Float4x4AtTime wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) GetDouble4x4ArrayMaxCount added in v0.17.0

func (am *AnimatedMatrix4x4) GetDouble4x4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble4x4ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) GetFloat4x4ArrayMaxCount added in v0.17.0

func (am *AnimatedMatrix4x4) GetFloat4x4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat4x4ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) ResetWithDouble4x4ArrayAtTimesCount added in v0.17.0

func (am *AnimatedMatrix4x4) ResetWithDouble4x4ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithDouble4x4ArrayAtTimesCount resets with double4x4 array at times count.

func (*AnimatedMatrix4x4) ResetWithFloat4x4ArrayAtTimesCount added in v0.17.0

func (am *AnimatedMatrix4x4) ResetWithFloat4x4ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithFloat4x4ArrayAtTimesCount resets with float4x4 array at times count.

func (*AnimatedMatrix4x4) SetDouble4x4AtTime added in v0.17.0

func (am *AnimatedMatrix4x4) SetDouble4x4AtTime(value unsafe.Pointer, time_ float64)

SetDouble4x4AtTime wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) SetFloat4x4AtTime added in v0.17.0

func (am *AnimatedMatrix4x4) SetFloat4x4AtTime(value unsafe.Pointer, time_ float64)

SetFloat4x4AtTime wraps the corresponding Objective-C method.

func (*AnimatedMatrix4x4) WithInterpolation added in v0.17.0

func (am *AnimatedMatrix4x4) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedMatrix4x4

WithInterpolation sets the interpolation.

type AnimatedQuaternion added in v0.17.0

type AnimatedQuaternion struct {
	AnimatedValue
}

AnimatedQuaternion is an idiomatic wrapper over the Objective-C class MDLAnimatedQuaternion.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedQuaternionFromID added in v0.17.0

func AnimatedQuaternionFromID(id objc.ID) *AnimatedQuaternion

AnimatedQuaternionFromID adopts an existing Objective-C object as a AnimatedQuaternion (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedQuaternion added in v0.17.0

func NewAnimatedQuaternion() *AnimatedQuaternion

NewAnimatedQuaternion creates a new AnimatedQuaternion.

func (*AnimatedQuaternion) DoubleQuaternionAtTime added in v0.18.0

func (aq *AnimatedQuaternion) DoubleQuaternionAtTime(time_ float64) unsafe.Pointer

DoubleQuaternionAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) FloatQuaternionAtTime added in v0.18.0

func (aq *AnimatedQuaternion) FloatQuaternionAtTime(time_ float64) unsafe.Pointer

FloatQuaternionAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) GetDoubleQuaternionArrayMaxCount added in v0.17.0

func (aq *AnimatedQuaternion) GetDoubleQuaternionArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDoubleQuaternionArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) GetFloatQuaternionArrayMaxCount added in v0.17.0

func (aq *AnimatedQuaternion) GetFloatQuaternionArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloatQuaternionArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) ResetWithDoubleQuaternionArrayAtTimesCount added in v0.17.0

func (aq *AnimatedQuaternion) ResetWithDoubleQuaternionArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithDoubleQuaternionArrayAtTimesCount resets with double quaternion array at times count.

func (*AnimatedQuaternion) ResetWithFloatQuaternionArrayAtTimesCount added in v0.17.0

func (aq *AnimatedQuaternion) ResetWithFloatQuaternionArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithFloatQuaternionArrayAtTimesCount resets with float quaternion array at times count.

func (*AnimatedQuaternion) SetDoubleQuaternionAtTime added in v0.17.0

func (aq *AnimatedQuaternion) SetDoubleQuaternionAtTime(value unsafe.Pointer, time_ float64)

SetDoubleQuaternionAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) SetFloatQuaternionAtTime added in v0.17.0

func (aq *AnimatedQuaternion) SetFloatQuaternionAtTime(value unsafe.Pointer, time_ float64)

SetFloatQuaternionAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternion) WithInterpolation added in v0.17.0

func (aq *AnimatedQuaternion) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedQuaternion

WithInterpolation sets the interpolation.

type AnimatedQuaternionArray added in v0.17.0

type AnimatedQuaternionArray struct {
	AnimatedValue
}

AnimatedQuaternionArray is an idiomatic wrapper over the Objective-C class MDLAnimatedQuaternionArray.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedQuaternionArrayFromID added in v0.17.0

func AnimatedQuaternionArrayFromID(id objc.ID) *AnimatedQuaternionArray

AnimatedQuaternionArrayFromID adopts an existing Objective-C object as a AnimatedQuaternionArray (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedQuaternionArrayWithElementCount added in v0.17.0

func NewAnimatedQuaternionArrayWithElementCount(arrayElementCount int) *AnimatedQuaternionArray

NewAnimatedQuaternionArrayWithElementCount creates a new AnimatedQuaternionArray.

func (*AnimatedQuaternionArray) ElementCount added in v0.17.0

func (aqa *AnimatedQuaternionArray) ElementCount() int

ElementCount returns the element count.

func (*AnimatedQuaternionArray) GetDoubleQuaternionArrayMaxCount added in v0.17.0

func (aqa *AnimatedQuaternionArray) GetDoubleQuaternionArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDoubleQuaternionArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) GetDoubleQuaternionArrayMaxCountAtTime added in v0.17.0

func (aqa *AnimatedQuaternionArray) GetDoubleQuaternionArrayMaxCountAtTime(array unsafe.Pointer, maxCount int, time_ float64) int

GetDoubleQuaternionArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) GetFloatQuaternionArrayMaxCount added in v0.17.0

func (aqa *AnimatedQuaternionArray) GetFloatQuaternionArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloatQuaternionArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) GetFloatQuaternionArrayMaxCountAtTime added in v0.17.0

func (aqa *AnimatedQuaternionArray) GetFloatQuaternionArrayMaxCountAtTime(array unsafe.Pointer, maxCount int, time_ float64) int

GetFloatQuaternionArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) ResetWithDoubleQuaternionArrayCountAtTimesCount added in v0.17.0

func (aqa *AnimatedQuaternionArray) ResetWithDoubleQuaternionArrayCountAtTimesCount(valuesArray unsafe.Pointer, valuesCount int, timesCount int) (timesArray float64)

ResetWithDoubleQuaternionArrayCountAtTimesCount resets with double quaternion array count at times count.

func (*AnimatedQuaternionArray) ResetWithFloatQuaternionArrayCountAtTimesCount added in v0.17.0

func (aqa *AnimatedQuaternionArray) ResetWithFloatQuaternionArrayCountAtTimesCount(valuesArray unsafe.Pointer, valuesCount int, timesCount int) (timesArray float64)

ResetWithFloatQuaternionArrayCountAtTimesCount resets with float quaternion array count at times count.

func (*AnimatedQuaternionArray) SetDoubleQuaternionArrayCountAtTime added in v0.17.0

func (aqa *AnimatedQuaternionArray) SetDoubleQuaternionArrayCountAtTime(array unsafe.Pointer, count int, time_ float64)

SetDoubleQuaternionArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) SetFloatQuaternionArrayCountAtTime added in v0.17.0

func (aqa *AnimatedQuaternionArray) SetFloatQuaternionArrayCountAtTime(array unsafe.Pointer, count int, time_ float64)

SetFloatQuaternionArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedQuaternionArray) WithInterpolation added in v0.17.0

func (aqa *AnimatedQuaternionArray) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedQuaternionArray

WithInterpolation sets the interpolation.

type AnimatedScalar added in v0.17.0

type AnimatedScalar struct {
	AnimatedValue
}

AnimatedScalar is an idiomatic wrapper over the Objective-C class MDLAnimatedScalar.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedScalarFromID added in v0.17.0

func AnimatedScalarFromID(id objc.ID) *AnimatedScalar

AnimatedScalarFromID adopts an existing Objective-C object as a AnimatedScalar (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedScalar added in v0.17.0

func NewAnimatedScalar() *AnimatedScalar

NewAnimatedScalar creates a new AnimatedScalar.

func (*AnimatedScalar) DoubleAtTime added in v0.17.0

func (as *AnimatedScalar) DoubleAtTime(time_ float64) float64

DoubleAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalar) FloatAtTime added in v0.17.0

func (as *AnimatedScalar) FloatAtTime(time_ float64) float32

FloatAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalar) GetDoubleArrayMaxCount added in v0.17.0

func (as *AnimatedScalar) GetDoubleArrayMaxCount(maxCount int) (result int, valuesArray float64)

GetDoubleArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedScalar) GetFloatArrayMaxCount added in v0.17.0

func (as *AnimatedScalar) GetFloatArrayMaxCount(maxCount int) (result int, valuesArray float32)

GetFloatArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedScalar) ResetWithDoubleArrayAtTimesCount added in v0.17.0

func (as *AnimatedScalar) ResetWithDoubleArrayAtTimesCount(count int) (valuesArray float64, timesArray float64)

ResetWithDoubleArrayAtTimesCount resets with double array at times count.

func (*AnimatedScalar) ResetWithFloatArrayAtTimesCount added in v0.17.0

func (as *AnimatedScalar) ResetWithFloatArrayAtTimesCount(count int) (valuesArray float32, timesArray float64)

ResetWithFloatArrayAtTimesCount resets with float array at times count.

func (*AnimatedScalar) SetDoubleAtTime added in v0.17.0

func (as *AnimatedScalar) SetDoubleAtTime(value float64, time_ float64)

SetDoubleAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalar) SetFloatAtTime added in v0.17.0

func (as *AnimatedScalar) SetFloatAtTime(value float32, time_ float64)

SetFloatAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalar) WithInterpolation added in v0.17.0

func (as *AnimatedScalar) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedScalar

WithInterpolation sets the interpolation.

type AnimatedScalarArray added in v0.17.0

type AnimatedScalarArray struct {
	AnimatedValue
}

AnimatedScalarArray is an idiomatic wrapper over the Objective-C class MDLAnimatedScalarArray.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedScalarArrayFromID added in v0.17.0

func AnimatedScalarArrayFromID(id objc.ID) *AnimatedScalarArray

AnimatedScalarArrayFromID adopts an existing Objective-C object as a AnimatedScalarArray (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedScalarArrayWithElementCount added in v0.17.0

func NewAnimatedScalarArrayWithElementCount(arrayElementCount int) *AnimatedScalarArray

NewAnimatedScalarArrayWithElementCount creates a new AnimatedScalarArray.

func (*AnimatedScalarArray) ElementCount added in v0.17.0

func (asa *AnimatedScalarArray) ElementCount() int

ElementCount returns the element count.

func (*AnimatedScalarArray) GetDoubleArrayMaxCount added in v0.17.0

func (asa *AnimatedScalarArray) GetDoubleArrayMaxCount(maxCount int) (result int, valuesArray float64)

GetDoubleArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) GetDoubleArrayMaxCountAtTime added in v0.17.0

func (asa *AnimatedScalarArray) GetDoubleArrayMaxCountAtTime(maxCount int, time_ float64) (result int, array float64)

GetDoubleArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) GetFloatArrayMaxCount added in v0.17.0

func (asa *AnimatedScalarArray) GetFloatArrayMaxCount(maxCount int) (result int, valuesArray float32)

GetFloatArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) GetFloatArrayMaxCountAtTime added in v0.17.0

func (asa *AnimatedScalarArray) GetFloatArrayMaxCountAtTime(maxCount int, time_ float64) (result int, array float32)

GetFloatArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) ResetWithDoubleArrayCountAtTimesCount added in v0.17.0

func (asa *AnimatedScalarArray) ResetWithDoubleArrayCountAtTimesCount(valuesCount int, timesCount int) (valuesArray float64, timesArray float64)

ResetWithDoubleArrayCountAtTimesCount resets with double array count at times count.

func (*AnimatedScalarArray) ResetWithFloatArrayCountAtTimesCount added in v0.17.0

func (asa *AnimatedScalarArray) ResetWithFloatArrayCountAtTimesCount(valuesCount int, timesCount int) (valuesArray float32, timesArray float64)

ResetWithFloatArrayCountAtTimesCount resets with float array count at times count.

func (*AnimatedScalarArray) SetDoubleArrayCountAtTime added in v0.17.0

func (asa *AnimatedScalarArray) SetDoubleArrayCountAtTime(count int, time_ float64) (array float64)

SetDoubleArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) SetFloatArrayCountAtTime added in v0.17.0

func (asa *AnimatedScalarArray) SetFloatArrayCountAtTime(count int, time_ float64) (array float32)

SetFloatArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedScalarArray) WithInterpolation added in v0.17.0

func (asa *AnimatedScalarArray) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedScalarArray

WithInterpolation sets the interpolation.

type AnimatedValue added in v0.17.0

type AnimatedValue struct {
	objref.Handle
}

AnimatedValue is an idiomatic wrapper over the Objective-C class MDLAnimatedValue.

AnimatedValue is an abstract base — you do not construct it directly. Construct one of AnimatedMatrix4x4, AnimatedQuaternionArray, AnimatedQuaternion, AnimatedScalarArray, AnimatedScalar, AnimatedVector2, AnimatedVector3Array, AnimatedVector3, AnimatedVector4 and pass it where a AnimatedValue is accepted.

func AnimatedValueFromID added in v0.17.0

func AnimatedValueFromID(id objc.ID) *AnimatedValue

AnimatedValueFromID adopts an existing Objective-C object as a AnimatedValue (nil for 0), retaining it and registering a release finalizer.

func (*AnimatedValue) Clear added in v0.17.0

func (av *AnimatedValue) Clear()

Clear wraps the corresponding Objective-C method.

func (*AnimatedValue) Description added in v0.17.0

func (av *AnimatedValue) Description() string

Description returns the object's -description text.

func (*AnimatedValue) GetTimesMaxCount added in v0.17.0

func (av *AnimatedValue) GetTimesMaxCount(maxCount int) (result int, timesArray float64)

GetTimesMaxCount wraps the corresponding Objective-C method.

func (*AnimatedValue) Interpolation added in v0.17.0

func (av *AnimatedValue) Interpolation() AnimatedValueInterpolation

Interpolation returns the interpolation.

func (*AnimatedValue) IsAnimated added in v0.17.0

func (av *AnimatedValue) IsAnimated() bool

IsAnimated reports whether the object is animated.

func (*AnimatedValue) IsEqual added in v0.17.0

func (av *AnimatedValue) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*AnimatedValue) IsKind added in v0.17.0

func (av *AnimatedValue) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*AnimatedValue) KeyTimes added in v0.17.0

func (av *AnimatedValue) KeyTimes() []obj.Object

KeyTimes returns the key times.

KeyTimes returns the collection as a Go slice.

func (*AnimatedValue) MaximumTime added in v0.17.0

func (av *AnimatedValue) MaximumTime() float64

MaximumTime returns the maximum time.

func (*AnimatedValue) MinimumTime added in v0.17.0

func (av *AnimatedValue) MinimumTime() float64

MinimumTime returns the minimum time.

func (*AnimatedValue) Precision added in v0.17.0

func (av *AnimatedValue) Precision() DataPrecision

Precision returns the precision.

func (*AnimatedValue) String added in v0.17.0

func (av *AnimatedValue) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*AnimatedValue) TimeSampleCount added in v0.17.0

func (av *AnimatedValue) TimeSampleCount() int

TimeSampleCount returns the time sample count.

func (*AnimatedValue) WithInterpolation added in v0.17.0

func (av *AnimatedValue) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedValue

WithInterpolation sets the interpolation.

type AnimatedValueInterpolation added in v0.17.0

type AnimatedValueInterpolation uint64
const (
	AnimatedValueInterpolationConstant AnimatedValueInterpolation = 0
	AnimatedValueInterpolationLinear   AnimatedValueInterpolation = 1
)

func (AnimatedValueInterpolation) String added in v0.17.0

String returns the AnimatedValueInterpolation constant's name, or its numeric form when the value is not a known constant.

type AnimatedValueProvider added in v0.17.0

type AnimatedValueProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

AnimatedValueProvider is accepted wherever a MDLAnimatedValue (or one of its subclasses) is expected.

type AnimatedVector2 added in v0.17.0

type AnimatedVector2 struct {
	AnimatedValue
}

AnimatedVector2 is an idiomatic wrapper over the Objective-C class MDLAnimatedVector2.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedVector2FromID added in v0.17.0

func AnimatedVector2FromID(id objc.ID) *AnimatedVector2

AnimatedVector2FromID adopts an existing Objective-C object as a AnimatedVector2 (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedVector2 added in v0.17.0

func NewAnimatedVector2() *AnimatedVector2

NewAnimatedVector2 creates a new AnimatedVector2.

func (*AnimatedVector2) Double2AtTime added in v0.18.0

func (av *AnimatedVector2) Double2AtTime(time_ float64) unsafe.Pointer

Double2AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector2) Float2AtTime added in v0.18.0

func (av *AnimatedVector2) Float2AtTime(time_ float64) unsafe.Pointer

Float2AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector2) GetDouble2ArrayMaxCount added in v0.17.0

func (av *AnimatedVector2) GetDouble2ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble2ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector2) GetFloat2ArrayMaxCount added in v0.17.0

func (av *AnimatedVector2) GetFloat2ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat2ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector2) ResetWithDouble2ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector2) ResetWithDouble2ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithDouble2ArrayAtTimesCount resets with double2 array at times count.

func (*AnimatedVector2) ResetWithFloat2ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector2) ResetWithFloat2ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithFloat2ArrayAtTimesCount resets with float2 array at times count.

func (*AnimatedVector2) SetDouble2AtTime added in v0.17.0

func (av *AnimatedVector2) SetDouble2AtTime(value unsafe.Pointer, time_ float64)

SetDouble2AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector2) SetFloat2AtTime added in v0.17.0

func (av *AnimatedVector2) SetFloat2AtTime(value unsafe.Pointer, time_ float64)

SetFloat2AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector2) WithInterpolation added in v0.17.0

func (av *AnimatedVector2) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedVector2

WithInterpolation sets the interpolation.

type AnimatedVector3 added in v0.17.0

type AnimatedVector3 struct {
	AnimatedValue
}

AnimatedVector3 is an idiomatic wrapper over the Objective-C class MDLAnimatedVector3.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedVector3FromID added in v0.17.0

func AnimatedVector3FromID(id objc.ID) *AnimatedVector3

AnimatedVector3FromID adopts an existing Objective-C object as a AnimatedVector3 (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedVector3 added in v0.17.0

func NewAnimatedVector3() *AnimatedVector3

NewAnimatedVector3 creates a new AnimatedVector3.

func (*AnimatedVector3) Double3AtTime added in v0.18.0

func (av *AnimatedVector3) Double3AtTime(time_ float64) unsafe.Pointer

Double3AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3) Float3AtTime added in v0.18.0

func (av *AnimatedVector3) Float3AtTime(time_ float64) unsafe.Pointer

Float3AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3) GetDouble3ArrayMaxCount added in v0.17.0

func (av *AnimatedVector3) GetDouble3ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble3ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector3) GetFloat3ArrayMaxCount added in v0.17.0

func (av *AnimatedVector3) GetFloat3ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat3ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector3) ResetWithDouble3ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector3) ResetWithDouble3ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithDouble3ArrayAtTimesCount resets with double3 array at times count.

func (*AnimatedVector3) ResetWithFloat3ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector3) ResetWithFloat3ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithFloat3ArrayAtTimesCount resets with float3 array at times count.

func (*AnimatedVector3) SetDouble3AtTime added in v0.17.0

func (av *AnimatedVector3) SetDouble3AtTime(value unsafe.Pointer, time_ float64)

SetDouble3AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3) SetFloat3AtTime added in v0.17.0

func (av *AnimatedVector3) SetFloat3AtTime(value unsafe.Pointer, time_ float64)

SetFloat3AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3) WithInterpolation added in v0.17.0

func (av *AnimatedVector3) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedVector3

WithInterpolation sets the interpolation.

type AnimatedVector3Array added in v0.17.0

type AnimatedVector3Array struct {
	AnimatedValue
}

AnimatedVector3Array is an idiomatic wrapper over the Objective-C class MDLAnimatedVector3Array.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedVector3ArrayFromID added in v0.17.0

func AnimatedVector3ArrayFromID(id objc.ID) *AnimatedVector3Array

AnimatedVector3ArrayFromID adopts an existing Objective-C object as a AnimatedVector3Array (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedVector3ArrayWithElementCount added in v0.17.0

func NewAnimatedVector3ArrayWithElementCount(arrayElementCount int) *AnimatedVector3Array

NewAnimatedVector3ArrayWithElementCount creates a new AnimatedVector3Array.

func (*AnimatedVector3Array) ElementCount added in v0.17.0

func (ava *AnimatedVector3Array) ElementCount() int

ElementCount returns the element count.

func (*AnimatedVector3Array) GetDouble3ArrayMaxCount added in v0.17.0

func (ava *AnimatedVector3Array) GetDouble3ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble3ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) GetDouble3ArrayMaxCountAtTime added in v0.17.0

func (ava *AnimatedVector3Array) GetDouble3ArrayMaxCountAtTime(array unsafe.Pointer, maxCount int, time_ float64) int

GetDouble3ArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) GetFloat3ArrayMaxCount added in v0.17.0

func (ava *AnimatedVector3Array) GetFloat3ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat3ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) GetFloat3ArrayMaxCountAtTime added in v0.17.0

func (ava *AnimatedVector3Array) GetFloat3ArrayMaxCountAtTime(array unsafe.Pointer, maxCount int, time_ float64) int

GetFloat3ArrayMaxCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) ResetWithDouble3ArrayCountAtTimesCount added in v0.17.0

func (ava *AnimatedVector3Array) ResetWithDouble3ArrayCountAtTimesCount(valuesArray unsafe.Pointer, valuesCount int, timesCount int) (timesArray float64)

ResetWithDouble3ArrayCountAtTimesCount resets with double3 array count at times count.

func (*AnimatedVector3Array) ResetWithFloat3ArrayCountAtTimesCount added in v0.17.0

func (ava *AnimatedVector3Array) ResetWithFloat3ArrayCountAtTimesCount(valuesArray unsafe.Pointer, valuesCount int, timesCount int) (timesArray float64)

ResetWithFloat3ArrayCountAtTimesCount resets with float3 array count at times count.

func (*AnimatedVector3Array) SetDouble3ArrayCountAtTime added in v0.17.0

func (ava *AnimatedVector3Array) SetDouble3ArrayCountAtTime(array unsafe.Pointer, count int, time_ float64)

SetDouble3ArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) SetFloat3ArrayCountAtTime added in v0.17.0

func (ava *AnimatedVector3Array) SetFloat3ArrayCountAtTime(array unsafe.Pointer, count int, time_ float64)

SetFloat3ArrayCountAtTime wraps the corresponding Objective-C method.

func (*AnimatedVector3Array) WithInterpolation added in v0.17.0

func (ava *AnimatedVector3Array) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedVector3Array

WithInterpolation sets the interpolation.

type AnimatedVector4 added in v0.17.0

type AnimatedVector4 struct {
	AnimatedValue
}

AnimatedVector4 is an idiomatic wrapper over the Objective-C class MDLAnimatedVector4.

It embeds AnimatedValue, promoting that type's methods.

func AnimatedVector4FromID added in v0.17.0

func AnimatedVector4FromID(id objc.ID) *AnimatedVector4

AnimatedVector4FromID adopts an existing Objective-C object as a AnimatedVector4 (nil for 0), retaining it and registering a release finalizer.

func NewAnimatedVector4 added in v0.17.0

func NewAnimatedVector4() *AnimatedVector4

NewAnimatedVector4 creates a new AnimatedVector4.

func (*AnimatedVector4) Double4AtTime added in v0.18.0

func (av *AnimatedVector4) Double4AtTime(time_ float64) unsafe.Pointer

Double4AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector4) Float4AtTime added in v0.18.0

func (av *AnimatedVector4) Float4AtTime(time_ float64) unsafe.Pointer

Float4AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector4) GetDouble4ArrayMaxCount added in v0.17.0

func (av *AnimatedVector4) GetDouble4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble4ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector4) GetFloat4ArrayMaxCount added in v0.17.0

func (av *AnimatedVector4) GetFloat4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat4ArrayMaxCount wraps the corresponding Objective-C method.

func (*AnimatedVector4) ResetWithDouble4ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector4) ResetWithDouble4ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithDouble4ArrayAtTimesCount resets with double4 array at times count.

func (*AnimatedVector4) ResetWithFloat4ArrayAtTimesCount added in v0.17.0

func (av *AnimatedVector4) ResetWithFloat4ArrayAtTimesCount(valuesArray unsafe.Pointer, count int) (timesArray float64)

ResetWithFloat4ArrayAtTimesCount resets with float4 array at times count.

func (*AnimatedVector4) SetDouble4AtTime added in v0.17.0

func (av *AnimatedVector4) SetDouble4AtTime(value unsafe.Pointer, time_ float64)

SetDouble4AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector4) SetFloat4AtTime added in v0.17.0

func (av *AnimatedVector4) SetFloat4AtTime(value unsafe.Pointer, time_ float64)

SetFloat4AtTime wraps the corresponding Objective-C method.

func (*AnimatedVector4) WithInterpolation added in v0.17.0

func (av *AnimatedVector4) WithInterpolation(interpolation AnimatedValueInterpolation) *AnimatedVector4

WithInterpolation sets the interpolation.

type AnimationBindComponent added in v0.17.0

type AnimationBindComponent struct {
	objref.Handle
}

AnimationBindComponent is an idiomatic wrapper over the Objective-C class MDLAnimationBindComponent.

func AnimationBindComponentFromID added in v0.17.0

func AnimationBindComponentFromID(id objc.ID) *AnimationBindComponent

AnimationBindComponentFromID adopts an existing Objective-C object as a AnimationBindComponent (nil for 0), retaining it and registering a release finalizer.

func NewAnimationBindComponent added in v0.17.0

func NewAnimationBindComponent() *AnimationBindComponent

NewAnimationBindComponent creates a new AnimationBindComponent.

func (*AnimationBindComponent) Description added in v0.17.0

func (abc *AnimationBindComponent) Description() string

Description returns the object's -description text.

func (*AnimationBindComponent) GeometryBindTransform added in v0.18.0

func (abc *AnimationBindComponent) GeometryBindTransform() unsafe.Pointer

GeometryBindTransform returns the geometry bind transform.

func (*AnimationBindComponent) IsEqual added in v0.17.0

func (abc *AnimationBindComponent) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*AnimationBindComponent) IsKind added in v0.17.0

func (abc *AnimationBindComponent) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*AnimationBindComponent) JointPaths added in v0.17.0

func (abc *AnimationBindComponent) JointPaths() []string

JointPaths returns the joint paths.

JointPaths returns the collection as a Go slice.

func (*AnimationBindComponent) Skeleton added in v0.17.0

func (abc *AnimationBindComponent) Skeleton() *Skeleton

Skeleton returns the skeleton.

func (*AnimationBindComponent) String added in v0.17.0

func (abc *AnimationBindComponent) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*AnimationBindComponent) WithGeometryBindTransform added in v0.17.0

func (abc *AnimationBindComponent) WithGeometryBindTransform(geometryBindTransform unsafe.Pointer) *AnimationBindComponent

WithGeometryBindTransform sets the geometry bind transform.

func (*AnimationBindComponent) WithJointPaths added in v0.17.0

func (abc *AnimationBindComponent) WithJointPaths(items ...obj.Object) *AnimationBindComponent

WithJointPaths sets the joint paths.

func (*AnimationBindComponent) WithSkeleton added in v0.17.0

func (abc *AnimationBindComponent) WithSkeleton(skeleton *Skeleton) *AnimationBindComponent

WithSkeleton sets the skeleton.

type AreaLight added in v0.17.0

type AreaLight struct {
	PhysicallyPlausibleLight
}

AreaLight is an idiomatic wrapper over the Objective-C class MDLAreaLight.

It embeds PhysicallyPlausibleLight, promoting that type's methods.

A light source that illuminates a 3D scene from an area with a specific shape.

func AreaLightFromID added in v0.17.0

func AreaLightFromID(id objc.ID) *AreaLight

AreaLightFromID adopts an existing Objective-C object as a AreaLight (nil for 0), retaining it and registering a release finalizer.

func NewAreaLight added in v0.17.0

func NewAreaLight() *AreaLight

NewAreaLight creates a new AreaLight.

func (*AreaLight) AreaRadius added in v0.17.0

func (al *AreaLight) AreaRadius() float32

AreaRadius returns the area radius.

func (*AreaLight) Aspect added in v0.17.0

func (al *AreaLight) Aspect() float32

Aspect returns the aspect.

func (*AreaLight) SuperEllipticPower added in v0.18.0

func (al *AreaLight) SuperEllipticPower() unsafe.Pointer

SuperEllipticPower returns the super elliptic power.

func (*AreaLight) WithAreaRadius added in v0.17.0

func (al *AreaLight) WithAreaRadius(areaRadius float32) *AreaLight

WithAreaRadius sets the radius, in units of local coordinate space, of the area from which light emanates.

func (*AreaLight) WithAspect added in v0.17.0

func (al *AreaLight) WithAspect(aspect float32) *AreaLight

WithAspect sets the aspect ratio of the light’s shape.

func (*AreaLight) WithAttenuationEndDistance added in v0.17.0

func (al *AreaLight) WithAttenuationEndDistance(attenuationEndDistance float32) *AreaLight

WithAttenuationEndDistance sets the distance from the light source, in units of local coordinate space, at which its illumination becomes zero.

func (*AreaLight) WithAttenuationStartDistance added in v0.17.0

func (al *AreaLight) WithAttenuationStartDistance(attenuationStartDistance float32) *AreaLight

WithAttenuationStartDistance sets the distance from the light source, in units of local coordinate space, at which its illumination begins to diminish.

func (*AreaLight) WithColor added in v0.17.0

func (al *AreaLight) WithColor(color coregraphics.CGColorRef) *AreaLight

WithColor sets the color of the light source.

func (*AreaLight) WithColorSpace added in v0.17.0

func (al *AreaLight) WithColorSpace(colorSpace string) *AreaLight

WithColorSpace sets the name of the Core Graphics color space to be used for interpreting the light’s color information.

func (*AreaLight) WithHidden added in v0.17.0

func (al *AreaLight) WithHidden(hidden bool) *AreaLight

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*AreaLight) WithInnerConeAngle added in v0.17.0

func (al *AreaLight) WithInnerConeAngle(innerConeAngle float32) *AreaLight

WithInnerConeAngle sets the radial angle, in degrees, of the area fully illuminated by the light.

func (*AreaLight) WithInstance added in v0.17.0

func (al *AreaLight) WithInstance(instance ObjectProvider) *AreaLight

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*AreaLight) WithLightType added in v0.17.0

func (al *AreaLight) WithLightType(lightType LightType) *AreaLight

WithLightType sets the type of the light.

func (*AreaLight) WithLumens added in v0.17.0

func (al *AreaLight) WithLumens(lumens float32) *AreaLight

WithLumens sets the total visible intensity of the light source, in lumens.

func (*AreaLight) WithOuterConeAngle added in v0.17.0

func (al *AreaLight) WithOuterConeAngle(outerConeAngle float32) *AreaLight

WithOuterConeAngle sets the radial angle, in degrees, at which the illumination from a spotlight becomes zero.

func (*AreaLight) WithParent added in v0.17.0

func (al *AreaLight) WithParent(parent ObjectProvider) *AreaLight

WithParent sets the parent object that contains this object.

func (*AreaLight) WithSuperEllipticPower added in v0.17.0

func (al *AreaLight) WithSuperEllipticPower(superEllipticPower unsafe.Pointer) *AreaLight

WithSuperEllipticPower sets a vector that controls the roundness of a superelliptical light in the x- and y-axis directions.

type Asset added in v0.17.0

type Asset struct {
	objref.Handle
}

Asset is an idiomatic wrapper over the Objective-C class MDLAsset.

An indexed container for 3D objects and associated information, such as transform hierarchies, meshes, cameras, and lights.

func AssetFromID added in v0.17.0

func AssetFromID(id objc.ID) *Asset

AssetFromID adopts an existing Objective-C object as a Asset (nil for 0), retaining it and registering a release finalizer.

func NewAssetWithURL added in v0.17.0

func NewAssetWithURL(url string) *Asset

NewAssetWithURL initializes an asset from the file at the specified URL.

func (*Asset) AddObject added in v0.17.0

func (a *Asset) AddObject(object *Object)

AddObject adds the specified object to the asset’s list of top-level objects.

func (*Asset) Count added in v0.17.0

func (a *Asset) Count() int

Count returns the number of top level objects

func (*Asset) Description added in v0.17.0

func (a *Asset) Description() string

Description returns the object's -description text.

func (*Asset) EndTime added in v0.17.0

func (a *Asset) EndTime() float64

EndTime returns end time bracket of animation data If no animation data was specified by resource or resource incapable of specifying animation data, this value defaults to 0. If the endTime was set explicitly, then the value of endTime will be the greater of the set value and the animated values.

func (*Asset) ExportAssetToURL added in v0.17.0

func (a *Asset) ExportAssetToURL(url string) bool

ExportAssetToURL writes asset data to a file at the specified URL.

func (*Asset) FrameInterval added in v0.17.0

func (a *Asset) FrameInterval() float64

FrameInterval returns inherent frame rate of an asset If no framerate was specified by resource or resource uncapable of specifying framerate, this value defaults to 0

func (*Asset) IsEqual added in v0.17.0

func (a *Asset) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Asset) IsKind added in v0.17.0

func (a *Asset) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Asset) LoadTextures added in v0.17.0

func (a *Asset) LoadTextures()

LoadTextures iterates over all material properties on all materials. If they are string values or NSURL values, and can be resolved as textures, then the string and NSURL values will be replaced by MDLTextureSampler values.

func (*Asset) ObjectAtIndex added in v0.17.0

func (a *Asset) ObjectAtIndex(index int) *Object

ObjectAtIndex returns the top-level object at the specified index in the asset.

func (*Asset) ObjectAtIndexedSubscript added in v0.17.0

func (a *Asset) ObjectAtIndexedSubscript(index int) *Object

ObjectAtIndexedSubscript returns the top-level object at the specified index in the asset, using subscript syntax.

func (*Asset) ObjectAtPath added in v0.17.0

func (a *Asset) ObjectAtPath(path string) *Object

ObjectAtPath return the object at the specified path, or nil if none exists there

func (*Asset) RemoveObject added in v0.17.0

func (a *Asset) RemoveObject(object *Object)

RemoveObject removes the specified object from the asset’s list of top-level objects.

func (*Asset) StartTime added in v0.17.0

func (a *Asset) StartTime() float64

StartTime returns start time bracket of animation data If no animation data was specified by resource or resource incapable of specifying animation data, this value defaults to 0. If startTime was set explicitly, then the value of startTime will be the lesser of the set value and the animated values.

func (*Asset) String added in v0.17.0

func (a *Asset) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Asset) URL added in v0.17.0

func (a *Asset) URL() string

URL returns URL used to create the asset If the asset was not created with a URL, nil will be returned.

func (*Asset) UpAxis added in v0.18.0

func (a *Asset) UpAxis() unsafe.Pointer

UpAxis returns scene up axis Some imported formats specify a scene up axis. By default Y-axis (0, 1, 0) is used but other values are supported.

func (*Asset) VertexDescriptor added in v0.17.0

func (a *Asset) VertexDescriptor() *VertexDescriptor

VertexDescriptor returns vertex descriptor set upon asset initialization Will be nil if there was no descriptor set

func (*Asset) WithEndTime added in v0.17.0

func (a *Asset) WithEndTime(endTime float64) *Asset

WithEndTime sets the timestamp for the last timed data sample in the asset.

func (*Asset) WithFrameInterval added in v0.17.0

func (a *Asset) WithFrameInterval(frameInterval float64) *Asset

WithFrameInterval sets the time interval between data samples in the asset.

func (*Asset) WithStartTime added in v0.17.0

func (a *Asset) WithStartTime(startTime float64) *Asset

WithStartTime sets the timestamp for the first timed data sample in the asset.

func (*Asset) WithUpAxis added in v0.17.0

func (a *Asset) WithUpAxis(upAxis unsafe.Pointer) *Asset

WithUpAxis sets scene up axis Some imported formats specify a scene up axis. By default Y-axis (0, 1, 0) is used but other values are supported.

type AssetResolver added in v0.17.0

type AssetResolver interface {
	CanResolveAssetNamed(name string) bool
	ResolveAssetNamed(name string) string
}

AssetResolver is the Go form of the Objective-C protocol MDLAssetResolver.

type BundleAssetResolver added in v0.17.0

type BundleAssetResolver struct {
	objref.Handle
}

BundleAssetResolver is an idiomatic wrapper over the Objective-C class MDLBundleAssetResolver.

func BundleAssetResolverFromID added in v0.17.0

func BundleAssetResolverFromID(id objc.ID) *BundleAssetResolver

BundleAssetResolverFromID adopts an existing Objective-C object as a BundleAssetResolver (nil for 0), retaining it and registering a release finalizer.

func NewBundleAssetResolverWithBundle added in v0.17.0

func NewBundleAssetResolverWithBundle(path string) *BundleAssetResolver

NewBundleAssetResolverWithBundle creates a new BundleAssetResolver.

func (*BundleAssetResolver) Description added in v0.17.0

func (bar *BundleAssetResolver) Description() string

Description returns the object's -description text.

func (*BundleAssetResolver) IsEqual added in v0.17.0

func (bar *BundleAssetResolver) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*BundleAssetResolver) IsKind added in v0.17.0

func (bar *BundleAssetResolver) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*BundleAssetResolver) Path added in v0.17.0

func (bar *BundleAssetResolver) Path() string

Path returns the path.

func (*BundleAssetResolver) String added in v0.17.0

func (bar *BundleAssetResolver) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*BundleAssetResolver) WithPath added in v0.17.0

func (bar *BundleAssetResolver) WithPath(path string) *BundleAssetResolver

WithPath sets the path.

type Camera added in v0.17.0

type Camera struct {
	Object
}

Camera is an idiomatic wrapper over the Objective-C class MDLCamera.

Camera is an abstract base — you do not construct it directly. Construct one of StereoscopicCamera and pass it where a Camera is accepted.

A point of view for rendering a 3D scene, along with a set of parameters describing an intended appearance for rendering.

func CameraFromID added in v0.17.0

func CameraFromID(id objc.ID) *Camera

CameraFromID adopts an existing Objective-C object as a Camera (nil for 0), retaining it and registering a release finalizer.

func (*Camera) ApertureBladeCount added in v0.17.0

func (c *Camera) ApertureBladeCount() int

ApertureBladeCount returns aperture blade count, where zero indicates a circle.

func (*Camera) BarrelDistortion added in v0.17.0

func (c *Camera) BarrelDistortion() float32

BarrelDistortion returns radial distortion of the lens, second order term

func (*Camera) BokehKernelWithSize added in v0.17.0

func (c *Camera) BokehKernelWithSize(size unsafe.Pointer) *Texture

BokehKernelWithSize creates and returns a texture, based on the camera’s aperture blade count, to be used in rendering out-of-focus highlights in a scene.

func (*Camera) ChromaticAberration added in v0.17.0

func (c *Camera) ChromaticAberration() float32

ChromaticAberration returns amount of chromatic abberation, from zero to one.

func (*Camera) Exposure added in v0.18.0

func (c *Camera) Exposure() unsafe.Pointer

Exposure returns exposure amount, unit less

func (*Camera) ExposureCompression added in v0.18.0

func (c *Camera) ExposureCompression() unsafe.Pointer

ExposureCompression returns exposure curve compression where values below the x value are to be passed through, above the y value, values are to be clamped at maximum display brightness, and a function such as a logarithmic ramp is to be applied in between.

func (*Camera) FStop added in v0.17.0

func (c *Camera) FStop() float32

FStop returns f-stop, default is 5.6

func (*Camera) FarVisibilityDistance added in v0.17.0

func (c *Camera) FarVisibilityDistance() float32

FarVisibilityDistance returns the far visibility distance.

func (*Camera) FieldOfView added in v0.17.0

func (c *Camera) FieldOfView() float32

FieldOfView returns the field of view, in degrees.

func (*Camera) FisheyeDistortion added in v0.17.0

func (c *Camera) FisheyeDistortion() float32

FisheyeDistortion returns radial distortion of the lens, fourth order term

func (*Camera) Flash added in v0.18.0

func (c *Camera) Flash() unsafe.Pointer

Flash returns flash amount, unit less

func (*Camera) FocalLength added in v0.17.0

func (c *Camera) FocalLength() float32

FocalLength returns lens focal length in mm.

func (*Camera) FocusDistance added in v0.17.0

func (c *Camera) FocusDistance() float32

FocusDistance returns focus distance

func (*Camera) LookAt added in v0.17.0

func (c *Camera) LookAt(focusPosition unsafe.Pointer)

LookAt orients the camera to face toward the specified point.

func (*Camera) LookAtFrom added in v0.17.0

func (c *Camera) LookAtFrom(focusPosition unsafe.Pointer, cameraPosition unsafe.Pointer)

LookAtFrom sets the camera’s position and orients the camera to face toward the specified point.

func (*Camera) MaximumCircleOfConfusion added in v0.17.0

func (c *Camera) MaximumCircleOfConfusion() float32

MaximumCircleOfConfusion returns maximum circle of confusion size in mm on the image plane

func (*Camera) NearVisibilityDistance added in v0.17.0

func (c *Camera) NearVisibilityDistance() float32

NearVisibilityDistance returns bounding distance for visible objects

func (*Camera) OpticalVignetting added in v0.17.0

func (c *Camera) OpticalVignetting() float32

OpticalVignetting returns amount of optical vignetting, rom zero to one.

func (*Camera) Projection added in v0.17.0

func (c *Camera) Projection() CameraProjection

Projection returns the projection.

func (*Camera) ProjectionMatrix added in v0.18.0

func (c *Camera) ProjectionMatrix() unsafe.Pointer

ProjectionMatrix returns the projection matrix is calculated from the near and far visibility distances, and the field of view.

func (*Camera) RayToForViewPort added in v0.18.0

func (c *Camera) RayToForViewPort(pixel unsafe.Pointer, size unsafe.Pointer) unsafe.Pointer

RayToForViewPort returns a point, in 3D world coordinates, corresponding to the specified 2D view coordinates.

func (*Camera) SensorAspect added in v0.17.0

func (c *Camera) SensorAspect() float32

SensorAspect returns sensor or film gate aperture aspect ratio, default is 1.5

func (*Camera) SensorEnlargement added in v0.18.0

func (c *Camera) SensorEnlargement() unsafe.Pointer

SensorEnlargement returns sensor zoom factor

func (*Camera) SensorShift added in v0.18.0

func (c *Camera) SensorShift() unsafe.Pointer

SensorShift returns sensor shift factor in mm.

func (*Camera) SensorVerticalAperture added in v0.17.0

func (c *Camera) SensorVerticalAperture() float32

SensorVerticalAperture returns vertical aperture of the sensor or film gate, default is 24mm

func (*Camera) ShutterOpenInterval added in v0.17.0

func (c *Camera) ShutterOpenInterval() float64

ShutterOpenInterval returns shutter open interval, in seconds

func (*Camera) WithApertureBladeCount added in v0.17.0

func (c *Camera) WithApertureBladeCount(apertureBladeCount int) *Camera

WithApertureBladeCount sets the number of blades in the camera’s simulated aperture.

func (*Camera) WithBarrelDistortion added in v0.17.0

func (c *Camera) WithBarrelDistortion(barrelDistortion float32) *Camera

WithBarrelDistortion sets the first coefficient for determining the radial distortion applied to pixels rendered using the camera.

func (*Camera) WithChromaticAberration added in v0.17.0

func (c *Camera) WithChromaticAberration(chromaticAberration float32) *Camera

WithChromaticAberration sets the amount of radial color shift around the edges of an image rendered using the camera.

func (*Camera) WithExposure added in v0.17.0

func (c *Camera) WithExposure(exposure unsafe.Pointer) *Camera

WithExposure sets red, green, and blue factors that scale each color channel in the camera’s image.

func (*Camera) WithExposureCompression added in v0.17.0

func (c *Camera) WithExposureCompression(exposureCompression unsafe.Pointer) *Camera

WithExposureCompression sets two parameters that determine the brightness compression curve for colors in the camera’s image.

func (*Camera) WithFStop added in v0.17.0

func (c *Camera) WithFStop(fStop float32) *Camera

WithFStop sets the relative aperture ratio of the camera’s simulated lens.

func (*Camera) WithFarVisibilityDistance added in v0.17.0

func (c *Camera) WithFarVisibilityDistance(farVisibilityDistance float32) *Camera

WithFarVisibilityDistance sets the camera’s far depth limit.

func (*Camera) WithFieldOfView added in v0.17.0

func (c *Camera) WithFieldOfView(fieldOfView float32) *Camera

WithFieldOfView sets the camera’s field of view, in degrees.

func (*Camera) WithFisheyeDistortion added in v0.17.0

func (c *Camera) WithFisheyeDistortion(fisheyeDistortion float32) *Camera

WithFisheyeDistortion sets the second coefficient for determining the radial distortion applied to pixels rendered using the camera.

func (*Camera) WithFlash added in v0.17.0

func (c *Camera) WithFlash(flash unsafe.Pointer) *Camera

WithFlash sets red, green, and blue factors to be used in brightening darker areas of the camera’s image.

func (*Camera) WithFocalLength added in v0.17.0

func (c *Camera) WithFocalLength(focalLength float32) *Camera

WithFocalLength sets the focal length, in millimeters, of the camera’s simulated lens.

func (*Camera) WithFocusDistance added in v0.17.0

func (c *Camera) WithFocusDistance(focusDistance float32) *Camera

WithFocusDistance sets the distance, in meters, at which the lens is focused.

func (*Camera) WithHidden added in v0.17.0

func (c *Camera) WithHidden(hidden bool) *Camera

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*Camera) WithInstance added in v0.17.0

func (c *Camera) WithInstance(instance ObjectProvider) *Camera

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*Camera) WithMaximumCircleOfConfusion added in v0.17.0

func (c *Camera) WithMaximumCircleOfConfusion(maximumCircleOfConfusion float32) *Camera

WithMaximumCircleOfConfusion sets the maximum diameter, in millimeters on the imaging plane, at which light from a point source should appear in an image rendered using the camera.

func (*Camera) WithNearVisibilityDistance added in v0.17.0

func (c *Camera) WithNearVisibilityDistance(nearVisibilityDistance float32) *Camera

WithNearVisibilityDistance sets the camera’s near depth limit.

func (*Camera) WithOpticalVignetting added in v0.17.0

func (c *Camera) WithOpticalVignetting(opticalVignetting float32) *Camera

WithOpticalVignetting sets the amount of radial light attenuation around the edges of an image rendered using the camera.

func (*Camera) WithParent added in v0.17.0

func (c *Camera) WithParent(parent ObjectProvider) *Camera

WithParent sets the parent object that contains this object.

func (*Camera) WithProjection added in v0.17.0

func (c *Camera) WithProjection(projection CameraProjection) *Camera

WithProjection sets the style of projection transform used by the camera.

func (*Camera) WithSensorAspect added in v0.17.0

func (c *Camera) WithSensorAspect(sensorAspect float32) *Camera

WithSensorAspect sets the ratio of width to height for the camera’s simulated imaging surface.

func (*Camera) WithSensorEnlargement added in v0.17.0

func (c *Camera) WithSensorEnlargement(sensorEnlargement unsafe.Pointer) *Camera

WithSensorEnlargement sets the horizontal and vertical scale factors that determine the active region of the sensor.

func (*Camera) WithSensorShift added in v0.17.0

func (c *Camera) WithSensorShift(sensorShift unsafe.Pointer) *Camera

WithSensorShift sets the horizontal and vertical offsets, in millimeters, of the center of the camera image relative to the center of the simulated lens.

func (*Camera) WithSensorVerticalAperture added in v0.17.0

func (c *Camera) WithSensorVerticalAperture(sensorVerticalAperture float32) *Camera

WithSensorVerticalAperture sets the height, in millimeters, of the camera’s simulated imaging surface.

func (*Camera) WithShutterOpenInterval added in v0.17.0

func (c *Camera) WithShutterOpenInterval(shutterOpenInterval float64) *Camera

WithShutterOpenInterval sets the duration, in seconds, for which the camera’s simulated shutter is open during each frame.

func (*Camera) WithWorldToMetersConversionScale added in v0.17.0

func (c *Camera) WithWorldToMetersConversionScale(worldToMetersConversionScale float32) *Camera

WithWorldToMetersConversionScale sets the scale factor to meters from the world coordinate system containing the camera.

func (*Camera) WorldToMetersConversionScale added in v0.17.0

func (c *Camera) WorldToMetersConversionScale() float32

WorldToMetersConversionScale returns world to meters conversion scale. Required for certain calculations.

type CameraProjection added in v0.17.0

type CameraProjection uint64

Options for camera projection styles, used by the projection property.

const (
	// A perspective projection.
	CameraProjectionPerspective CameraProjection = 0
	// An orthographic projection.
	CameraProjectionOrthographic CameraProjection = 1
)

func (CameraProjection) String added in v0.17.0

func (e CameraProjection) String() string

String returns the CameraProjection constant's name, or its numeric form when the value is not a known constant.

type CameraProvider added in v0.17.0

type CameraProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

CameraProvider is accepted wherever a MDLCamera (or one of its subclasses) is expected.

type CheckerboardTexture added in v0.17.0

type CheckerboardTexture struct {
	Texture
}

CheckerboardTexture is an idiomatic wrapper over the Objective-C class MDLCheckerboardTexture.

It embeds Texture, promoting that type's methods.

A generator of texel data that creates a checkerboard pattern with two specified colors.

func CheckerboardTextureFromID added in v0.17.0

func CheckerboardTextureFromID(id objc.ID) *CheckerboardTexture

CheckerboardTextureFromID adopts an existing Objective-C object as a CheckerboardTexture (nil for 0), retaining it and registering a release finalizer.

func NewCheckerboardTextureWithDivisionsNameDimensionsChannelCountChannelEncodingColor1Color2 added in v0.17.0

func NewCheckerboardTextureWithDivisionsNameDimensionsChannelCountChannelEncodingColor1Color2(divisions float32, name string, dimensions unsafe.Pointer, channelCount int, channelEncoding TextureChannelEncoding, color1 coregraphics.CGColorRef, color2 coregraphics.CGColorRef) *CheckerboardTexture

NewCheckerboardTextureWithDivisionsNameDimensionsChannelCountChannelEncodingColor1Color2 initializes a checkerboard texture with the specified colors and other properties.

func (*CheckerboardTexture) Color1 added in v0.17.0

Color1 returns the color1.

func (*CheckerboardTexture) Color2 added in v0.17.0

Color2 returns the color2.

func (*CheckerboardTexture) Divisions added in v0.17.0

func (ct *CheckerboardTexture) Divisions() float32

Divisions returns the divisions.

func (*CheckerboardTexture) WithColor1 added in v0.17.0

WithColor1 sets the color for half of the squares in the checkerboard pattern.

func (*CheckerboardTexture) WithColor2 added in v0.17.0

WithColor2 sets the color for the other half of the squares in the checkerboard pattern.

func (*CheckerboardTexture) WithDivisions added in v0.17.0

func (ct *CheckerboardTexture) WithDivisions(divisions float32) *CheckerboardTexture

WithDivisions sets the number of squares along each dimension in the checkerboard pattern.

func (*CheckerboardTexture) WithHasAlphaValues added in v0.17.0

func (ct *CheckerboardTexture) WithHasAlphaValues(hasAlphaValues bool) *CheckerboardTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*CheckerboardTexture) WithIsCube added in v0.17.0

func (ct *CheckerboardTexture) WithIsCube(isCube bool) *CheckerboardTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

type Clockid added in v0.17.0

type Clockid int32
const (
	ClockidRealtime           Clockid = 0
	ClockidMonotonic          Clockid = 6
	ClockidMonotonicRaw       Clockid = 4
	ClockidMonotonicRawApprox Clockid = 5
	ClockidUptimeRaw          Clockid = 8
	ClockidUptimeRawApprox    Clockid = 9
	ClockidProcessCputimeID   Clockid = 12
	ClockidThreadCputimeID    Clockid = 16
)

func (Clockid) String added in v0.17.0

func (e Clockid) String() string

String returns the Clockid constant's name, or its numeric form when the value is not a known constant.

type ColorSwatchTexture added in v0.17.0

type ColorSwatchTexture struct {
	Texture
}

ColorSwatchTexture is an idiomatic wrapper over the Objective-C class MDLColorSwatchTexture.

It embeds Texture, promoting that type's methods.

A generator of texel data that creates a gradient between two specified colors.

func ColorSwatchTextureFromID added in v0.17.0

func ColorSwatchTextureFromID(id objc.ID) *ColorSwatchTexture

ColorSwatchTextureFromID adopts an existing Objective-C object as a ColorSwatchTexture (nil for 0), retaining it and registering a release finalizer.

func NewColorSwatchTextureWithColorGradientFromToColorNameTextureDimensions added in v0.17.0

func NewColorSwatchTextureWithColorGradientFromToColorNameTextureDimensions(color1 coregraphics.CGColorRef, color2 coregraphics.CGColorRef, name string, textureDimensions unsafe.Pointer) *ColorSwatchTexture

NewColorSwatchTextureWithColorGradientFromToColorNameTextureDimensions initializes a texture that creates a vertical gradient between two colors.

func NewColorSwatchTextureWithColorTemperatureGradientFromToColorTemperatureNameTextureDimensions added in v0.17.0

func NewColorSwatchTextureWithColorTemperatureGradientFromToColorTemperatureNameTextureDimensions(colorTemperature1 float32, colorTemperature2 float32, name string, textureDimensions unsafe.Pointer) *ColorSwatchTexture

NewColorSwatchTextureWithColorTemperatureGradientFromToColorTemperatureNameTextureDimensions initializes a texture that creates a vertical gradient between two color temperatures.

func (*ColorSwatchTexture) WithHasAlphaValues added in v0.17.0

func (cst *ColorSwatchTexture) WithHasAlphaValues(hasAlphaValues bool) *ColorSwatchTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*ColorSwatchTexture) WithIsCube added in v0.17.0

func (cst *ColorSwatchTexture) WithIsCube(isCube bool) *ColorSwatchTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

type Component added in v0.17.0

type Component interface {
}

Component is the Go form of the Objective-C protocol MDLComponent.

type DataPrecision added in v0.17.0

type DataPrecision uint64
const (
	DataPrecisionUndefined DataPrecision = 0
	DataPrecisionFloat     DataPrecision = 1
	DataPrecisionDouble    DataPrecision = 2
)

func (DataPrecision) String added in v0.17.0

func (e DataPrecision) String() string

String returns the DataPrecision constant's name, or its numeric form when the value is not a known constant.

type DispatchAutoreleaseFrequency added in v0.17.0

type DispatchAutoreleaseFrequency uint64
const (
	DispatchAutoreleaseFrequencyInherit  DispatchAutoreleaseFrequency = 0
	DispatchAutoreleaseFrequencyWorkItem DispatchAutoreleaseFrequency = 1
	DispatchAutoreleaseFrequencyNever    DispatchAutoreleaseFrequency = 2
)

func (DispatchAutoreleaseFrequency) String added in v0.17.0

String returns the DispatchAutoreleaseFrequency constant's name, or its numeric form when the value is not a known constant.

type DispatchBlockFlags added in v0.17.0

type DispatchBlockFlags uint64

Bitmask — values may be combined with |.

const (
	DispatchBlockFlagsBarrier         DispatchBlockFlags = 1
	DispatchBlockFlagsDetached        DispatchBlockFlags = 2
	DispatchBlockFlagsAssignCurrent   DispatchBlockFlags = 4
	DispatchBlockFlagsNoQosClass      DispatchBlockFlags = 8
	DispatchBlockFlagsInheritQosClass DispatchBlockFlags = 16
	DispatchBlockFlagsEnforceQosClass DispatchBlockFlags = 32
)

func (DispatchBlockFlags) String added in v0.17.0

func (e DispatchBlockFlags) String() string

String returns the DispatchBlockFlags constant's name, or its numeric form when the value is not a known constant.

type EntryID added in v0.17.0

type EntryID int32
const (
	EntryIDFirstEntry EntryID = 0
	EntryIDNextEntry  EntryID = -1
	EntryIDLastEntry  EntryID = -2
)

func (EntryID) String added in v0.17.0

func (e EntryID) String() string

String returns the EntryID constant's name, or its numeric form when the value is not a known constant.

type EvCmd

type EvCmd int32
const (
	EVNOP   EvCmd = 0
	EVHIDE  EvCmd = 1
	EVSHOW  EvCmd = 2
	EVMOVE  EvCmd = 3
	EVLEVEL EvCmd = 4
)

func (EvCmd) String

func (e EvCmd) String() string

String returns the EvCmd constant's name, or its numeric form when the value is not a known constant.

type FilesecProperty added in v0.17.0

type FilesecProperty int32
const (
	FilesecPropertyOwner        FilesecProperty = 1
	FilesecPropertyGroup        FilesecProperty = 2
	FilesecPropertyUUID         FilesecProperty = 3
	FilesecPropertyMode         FilesecProperty = 4
	FilesecPropertyACL          FilesecProperty = 5
	FilesecPropertyGrpuuid      FilesecProperty = 6
	FilesecPropertyACLRaw       FilesecProperty = 100
	FilesecPropertyACLAllocsize FilesecProperty = 101
)

func (FilesecProperty) String added in v0.17.0

func (e FilesecProperty) String() string

String returns the FilesecProperty constant's name, or its numeric form when the value is not a known constant.

type Flag added in v0.17.0

type Flag int32
const (
	FlagFlagDeferInherit      Flag = 1
	FlagFlagNoInherit         Flag = 131072
	FlagEntryInherited        Flag = 16
	FlagEntryFileInherit      Flag = 32
	FlagEntryDirectoryInherit Flag = 64
	FlagEntryLimitInherit     Flag = 128
	FlagEntryOnlyInherit      Flag = 256
)

func (Flag) String added in v0.17.0

func (e Flag) String() string

String returns the Flag constant's name, or its numeric form when the value is not a known constant.

type GeometryType added in v0.17.0

type GeometryType int64

Types of geometric primitives for rendering a submesh, used by the geometryType property.

const (
	// Each index in the submesh refers to a vertex to be rendered as a single point.
	GeometryTypePoints GeometryType = 0
	// Each pair of consecutive indices in the submesh refers to two vertices to be rendered as a line segment.
	GeometryTypeLines GeometryType = 1
	// Each set of three consecutive indices in the submesh refers to three vertices to be rendered as a triangle.
	GeometryTypeTriangles GeometryType = 2
	// The first three consecutive indices in the submesh refer to three vertices to be rendered as a triangle. Each subsequent index refers to another vertex that completes a triangle formed by connecting it to the previous two vertices.
	GeometryTypeTriangleStrips GeometryType = 3
	// Each set of four consecutive indices in the submesh refers to four vertices to be rendered as a quadrilateral.
	GeometryTypeQuads GeometryType = 4
	// The submesh’s index buffer does not contain a uniform set of primitives.
	GeometryTypeVariableTopology GeometryType = 5
)

func (GeometryType) String added in v0.17.0

func (e GeometryType) String() string

String returns the GeometryType constant's name, or its numeric form when the value is not a known constant.

type Idtype added in v0.17.0

type Idtype int32
const (
	IdtypeAll  Idtype = 0
	IdtypePid  Idtype = 1
	IdtypePgid Idtype = 2
)

func (Idtype) String added in v0.17.0

func (e Idtype) String() string

String returns the Idtype constant's name, or its numeric form when the value is not a known constant.

type IndexBitDepth added in v0.17.0

type IndexBitDepth uint64

Options for the size of integer data in a submesh’s index buffer, used by the indexType property.

const (
	// The submesh has not been initialized or its data type is unknown.
	IndexBitDepthInvalid IndexBitDepth = 0
	// Each index in the submesh’s index buffer is an 8-bit integer.
	IndexBitDepthUInt8 IndexBitDepth = 8
	IndexBitDepthUint8 IndexBitDepth = 8
	// Each index in the submesh’s index buffer is a 16-bit integer.
	IndexBitDepthUInt16 IndexBitDepth = 16
	IndexBitDepthUint16 IndexBitDepth = 16
	// Each index in the submesh’s index buffer is a 32-bit integer.
	IndexBitDepthUInt32 IndexBitDepth = 32
	IndexBitDepthUint32 IndexBitDepth = 32
)

func (IndexBitDepth) String added in v0.17.0

func (e IndexBitDepth) String() string

String returns the IndexBitDepth constant's name, or its numeric form when the value is not a known constant.

type IpcInfoObjectType added in v0.17.0

type IpcInfoObjectType uint32
const (
	IpcInfoObjectTypeNone               IpcInfoObjectType = 0
	IpcInfoObjectTypeThreadControl      IpcInfoObjectType = 1
	IpcInfoObjectTypeTaskControl        IpcInfoObjectType = 2
	IpcInfoObjectTypeHost               IpcInfoObjectType = 3
	IpcInfoObjectTypeHostPriv           IpcInfoObjectType = 4
	IpcInfoObjectTypeProcessor          IpcInfoObjectType = 5
	IpcInfoObjectTypeProcessorSet       IpcInfoObjectType = 6
	IpcInfoObjectTypeProcessorSetName   IpcInfoObjectType = 7
	IpcInfoObjectTypeTimer              IpcInfoObjectType = 8
	IpcInfoObjectTypePortSubstOnce      IpcInfoObjectType = 9
	IpcInfoObjectTypeMig                IpcInfoObjectType = 10
	IpcInfoObjectTypeMemoryObject       IpcInfoObjectType = 11
	IpcInfoObjectTypeXmmPager           IpcInfoObjectType = 12
	IpcInfoObjectTypeXmmKernel          IpcInfoObjectType = 13
	IpcInfoObjectTypeXmmReply           IpcInfoObjectType = 14
	IpcInfoObjectTypeUndReply           IpcInfoObjectType = 15
	IpcInfoObjectTypeHostNotify         IpcInfoObjectType = 16
	IpcInfoObjectTypeHostSecurity       IpcInfoObjectType = 17
	IpcInfoObjectTypeLedger             IpcInfoObjectType = 18
	IpcInfoObjectTypeMainDevice         IpcInfoObjectType = 19
	IpcInfoObjectTypeTaskName           IpcInfoObjectType = 20
	IpcInfoObjectTypeSubsystem          IpcInfoObjectType = 21
	IpcInfoObjectTypeIODoneQueue        IpcInfoObjectType = 22
	IpcInfoObjectTypeSemaphore          IpcInfoObjectType = 23
	IpcInfoObjectTypeLockSet            IpcInfoObjectType = 24
	IpcInfoObjectTypeClock              IpcInfoObjectType = 25
	IpcInfoObjectTypeClockCtrl          IpcInfoObjectType = 26
	IpcInfoObjectTypeIokitIdent         IpcInfoObjectType = 27
	IpcInfoObjectTypeNamedEntry         IpcInfoObjectType = 28
	IpcInfoObjectTypeIokitConnect       IpcInfoObjectType = 29
	IpcInfoObjectTypeIokitObject        IpcInfoObjectType = 30
	IpcInfoObjectTypeUpl                IpcInfoObjectType = 31
	IpcInfoObjectTypeMemObjControl      IpcInfoObjectType = 32
	IpcInfoObjectTypeAuSessionport      IpcInfoObjectType = 33
	IpcInfoObjectTypeFileport           IpcInfoObjectType = 34
	IpcInfoObjectTypeLabelh             IpcInfoObjectType = 35
	IpcInfoObjectTypeTaskResume         IpcInfoObjectType = 36
	IpcInfoObjectTypeVoucher            IpcInfoObjectType = 37
	IpcInfoObjectTypeVoucherAttrControl IpcInfoObjectType = 38
	IpcInfoObjectTypeWorkInterval       IpcInfoObjectType = 39
	IpcInfoObjectTypeUxHandler          IpcInfoObjectType = 40
	IpcInfoObjectTypeUextObject         IpcInfoObjectType = 41
	IpcInfoObjectTypeArcadeReg          IpcInfoObjectType = 42
	IpcInfoObjectTypeEventlink          IpcInfoObjectType = 43
	IpcInfoObjectTypeTaskInspect        IpcInfoObjectType = 44
	IpcInfoObjectTypeTaskRead           IpcInfoObjectType = 45
	IpcInfoObjectTypeThreadInspect      IpcInfoObjectType = 46
	IpcInfoObjectTypeThreadRead         IpcInfoObjectType = 47
	IpcInfoObjectTypeSuidCred           IpcInfoObjectType = 48
	IpcInfoObjectTypeHypervisor         IpcInfoObjectType = 49
	IpcInfoObjectTypeTaskIDToken        IpcInfoObjectType = 50
	IpcInfoObjectTypeTaskFatal          IpcInfoObjectType = 51
	IpcInfoObjectTypeKcdata             IpcInfoObjectType = 52
	IpcInfoObjectTypeExclavesResource   IpcInfoObjectType = 53
	IpcInfoObjectTypeThreadResume       IpcInfoObjectType = 54
	IpcInfoObjectTypeUnknown            IpcInfoObjectType = 4294967295
)

func (IpcInfoObjectType) String added in v0.17.0

func (e IpcInfoObjectType) String() string

String returns the IpcInfoObjectType constant's name, or its numeric form when the value is not a known constant.

type JointAnimation added in v0.17.0

type JointAnimation interface {
}

JointAnimation is the Go form of the Objective-C protocol MDLJointAnimation.

type LaunchDataType added in v0.17.0

type LaunchDataType int32
const (
	LaunchDataTypeDictionary LaunchDataType = 1
	LaunchDataTypeArray      LaunchDataType = 2
	LaunchDataTypeFd         LaunchDataType = 3
	LaunchDataTypeInteger    LaunchDataType = 4
	LaunchDataTypeReal       LaunchDataType = 5
	LaunchDataTypeBool       LaunchDataType = 6
	LaunchDataTypeString     LaunchDataType = 7
	LaunchDataTypeOpaque     LaunchDataType = 8
	LaunchDataTypeErrno      LaunchDataType = 9
	LaunchDataTypeMachport   LaunchDataType = 10
)

func (LaunchDataType) String added in v0.17.0

func (e LaunchDataType) String() string

String returns the LaunchDataType constant's name, or its numeric form when the value is not a known constant.

type Light added in v0.17.0

type Light struct {
	Object
}

Light is an idiomatic wrapper over the Objective-C class MDLLight.

Light is an abstract base — you do not construct it directly. Construct one of LightProbe, PhysicallyPlausibleLight and pass it where a Light is accepted.

The abstract superclass for objects that describe light sources in a scene.

func LightFromID added in v0.17.0

func LightFromID(id objc.ID) *Light

LightFromID adopts an existing Objective-C object as a Light (nil for 0), retaining it and registering a release finalizer.

func (*Light) ColorSpace added in v0.17.0

func (l *Light) ColorSpace() string

ColorSpace returns the color space.

func (*Light) IrradianceAtPoint added in v0.17.0

func (l *Light) IrradianceAtPoint(point unsafe.Pointer) coregraphics.CGColorRef

IrradianceAtPoint returns the radiance of the light as received at a specific point in the same scene.

func (*Light) IrradianceAtPointColorSpace added in v0.17.0

func (l *Light) IrradianceAtPointColorSpace(point unsafe.Pointer, colorSpace coregraphics.CGColorSpaceRef) coregraphics.CGColorRef

IrradianceAtPointColorSpace returns the radiance of the light as received at a specific point in the same scene, expressed using the specified color space.

func (*Light) LightType added in v0.17.0

func (l *Light) LightType() LightType

LightType returns the light type.

func (*Light) WithColorSpace added in v0.17.0

func (l *Light) WithColorSpace(colorSpace string) *Light

WithColorSpace sets the name of the Core Graphics color space to be used for interpreting the light’s color information.

func (*Light) WithHidden added in v0.17.0

func (l *Light) WithHidden(hidden bool) *Light

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*Light) WithInstance added in v0.17.0

func (l *Light) WithInstance(instance ObjectProvider) *Light

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*Light) WithLightType added in v0.17.0

func (l *Light) WithLightType(lightType LightType) *Light

WithLightType sets the type of the light.

func (*Light) WithParent added in v0.17.0

func (l *Light) WithParent(parent ObjectProvider) *Light

WithParent sets the parent object that contains this object.

type LightProbe added in v0.17.0

type LightProbe struct {
	Light
}

LightProbe is an idiomatic wrapper over the Objective-C class MDLLightProbe.

It embeds Light, promoting that type's methods.

A light source described in terms of the variations in color and intensity of its illumination in all directions.

func LightProbeFromID added in v0.17.0

func LightProbeFromID(id objc.ID) *LightProbe

LightProbeFromID adopts an existing Objective-C object as a LightProbe (nil for 0), retaining it and registering a release finalizer.

func LightProbeWithTextureSizeForLocationLightsToConsiderObjectsToConsiderReflectiveCubemapIrradianceCubemap added in v0.17.0

func LightProbeWithTextureSizeForLocationLightsToConsiderObjectsToConsiderReflectiveCubemapIrradianceCubemap(textureSize int, transform *Transform, lightsToConsider []*Light, objectsToConsider []*Object, reflectiveCubemap *Texture, irradianceCubemap *Texture) *LightProbe

LightProbeWithTextureSizeForLocationLightsToConsiderObjectsToConsiderReflectiveCubemapIrradianceCubemap creates a light probe representing the shading environment at a specific point in a scene.

func NewLightProbeWithReflectiveTextureIrradianceTexture added in v0.17.0

func NewLightProbeWithReflectiveTextureIrradianceTexture(reflectiveTexture *Texture, irradianceTexture *Texture) *LightProbe

NewLightProbeWithReflectiveTextureIrradianceTexture initializes a light probe with the specified cube map textures.

func (*LightProbe) GenerateSphericalHarmonicsFromIrradiance added in v0.17.0

func (lp *LightProbe) GenerateSphericalHarmonicsFromIrradiance(sphericalHarmonicsLevel int)

GenerateSphericalHarmonicsFromIrradiance generates spherical harmonics information based on the light probe’s irradiance texture.

func (*LightProbe) IrradianceTexture added in v0.17.0

func (lp *LightProbe) IrradianceTexture() *Texture

IrradianceTexture returns the irradiance texture.

func (*LightProbe) ReflectiveTexture added in v0.17.0

func (lp *LightProbe) ReflectiveTexture() *Texture

ReflectiveTexture returns the reflective texture.

func (*LightProbe) SphericalHarmonicsCoefficients added in v0.17.0

func (lp *LightProbe) SphericalHarmonicsCoefficients() []byte

SphericalHarmonicsCoefficients returns the spherical harmonics coefficients.

func (*LightProbe) SphericalHarmonicsLevel added in v0.17.0

func (lp *LightProbe) SphericalHarmonicsLevel() int

SphericalHarmonicsLevel returns the spherical harmonics level.

func (*LightProbe) WithColorSpace added in v0.17.0

func (lp *LightProbe) WithColorSpace(colorSpace string) *LightProbe

WithColorSpace sets the name of the Core Graphics color space to be used for interpreting the light’s color information.

func (*LightProbe) WithHidden added in v0.17.0

func (lp *LightProbe) WithHidden(hidden bool) *LightProbe

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*LightProbe) WithInstance added in v0.17.0

func (lp *LightProbe) WithInstance(instance ObjectProvider) *LightProbe

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*LightProbe) WithLightType added in v0.17.0

func (lp *LightProbe) WithLightType(lightType LightType) *LightProbe

WithLightType sets the type of the light.

func (*LightProbe) WithParent added in v0.17.0

func (lp *LightProbe) WithParent(parent ObjectProvider) *LightProbe

WithParent sets the parent object that contains this object.

type LightProbeIrradianceDataSource added in v0.17.0

type LightProbeIrradianceDataSource interface {
	BoundingBox() obj.Object
	SetBoundingBox(boundingBox obj.Object)
	SetSphericalHarmonicsLevel(sphericalHarmonicsLevel int)
}

LightProbeIrradianceDataSource is the Go form of the Objective-C protocol MDLLightProbeIrradianceDataSource.

type LightProvider added in v0.17.0

type LightProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

LightProvider is accepted wherever a MDLLight (or one of its subclasses) is expected.

type LightType added in v0.17.0

type LightType uint64

Options for the shape and style of illumination provided by a light, used by the lightType property.

const (
	// The type of the light is unknown or has not been initialized.
	LightTypeUnknown LightType = 0
	// The light source should illuminate a scene evenly regardless of position or direction.
	LightTypeAmbient LightType = 1
	// The light source illuminates a scene from a uniform direction regardless of its position.
	LightTypeDirectional LightType = 2
	// The light source illuminates a scene from a specific position and direction.
	LightTypeSpot LightType = 3
	// The light source illuminates a scene in all directions from a specific position.
	LightTypePoint LightType = 4
	// The light source illuminates a scene in all directions from an area in the shape of a line.
	LightTypeLinear LightType = 5
	// The light source illuminates a scene in all directions from an area in the shape of a disc.
	LightTypeDiscArea LightType = 6
	// The light source illuminates a scene in all directions from an area in the shape of a rectangle.
	LightTypeRectangularArea LightType = 7
	// The light source illuminates a scene in all directions from an area in the shape of a superellipse.
	LightTypeSuperElliptical LightType = 8
	// The illumination from the light is determined by a photometric profile.
	LightTypePhotometric LightType = 9
	// The illumination from the light is determined by texture images representing a sample of a scene at a specific point.
	LightTypeProbe LightType = 10
	// The illumination from the light is determined by texture images representing a sample of the surrounding environment for a scene.
	LightTypeEnvironment LightType = 11
)

func (LightType) String added in v0.17.0

func (e LightType) String() string

String returns the LightType constant's name, or its numeric form when the value is not a known constant.

type MDLAxisAlignedBoundingBox

type MDLAxisAlignedBoundingBox struct {
	MaxBounds unsafe.Pointer
	MinBounds unsafe.Pointer
}

The minimal volume containing an object, used by the boundingBoxAtTime: method.

type MDLVoxelIndexExtent

type MDLVoxelIndexExtent struct {
	MinimumExtent unsafe.Pointer
	MaximumExtent unsafe.Pointer
}

The corner voxel indices defining a solid rectangular volume of voxels. Used by the voxelIndexExtent property and voxelsWithinExtent: method.

type MDLabelDomain

type MDLabelDomain int32

These constants are used to specify a domain to MDLabelCreate().

const (
	KMDLabelUserDomain  MDLabelDomain = 0
	KMDLabelLocalDomain MDLabelDomain = 1
)

func (MDLabelDomain) String

func (e MDLabelDomain) String() string

String returns the MDLabelDomain constant's name, or its numeric form when the value is not a known constant.

type MDQueryOptionFlags

type MDQueryOptionFlags int32
const (
	KMDQuerySynchronous        MDQueryOptionFlags = 1
	KMDQueryWantsUpdates       MDQueryOptionFlags = 4
	KMDQueryAllowFSTranslation MDQueryOptionFlags = 8
)

func (MDQueryOptionFlags) String

func (e MDQueryOptionFlags) String() string

String returns the MDQueryOptionFlags constant's name, or its numeric form when the value is not a known constant.

type MDQuerySortOptionFlags

type MDQuerySortOptionFlags int32
const (
	KMDQueryReverseSortOrderFlag MDQuerySortOptionFlags = 1
)

func (MDQuerySortOptionFlags) String

func (e MDQuerySortOptionFlags) String() string

String returns the MDQuerySortOptionFlags constant's name, or its numeric form when the value is not a known constant.

type MachVMRangeFlags added in v0.17.0

type MachVMRangeFlags uint64

Bitmask — values may be combined with |.

const (
	MachVMRangeFlagsNone MachVMRangeFlags = 0
)

func (MachVMRangeFlags) String added in v0.17.0

func (e MachVMRangeFlags) String() string

String returns the MachVMRangeFlags constant's name, or its numeric form when the value is not a known constant.

type MachVMRangeFlavor added in v0.17.0

type MachVMRangeFlavor uint32
const (
	MachVMRangeFlavorInvalid MachVMRangeFlavor = 0
	MachVMRangeFlavorV1      MachVMRangeFlavor = 1
)

func (MachVMRangeFlavor) String added in v0.17.0

func (e MachVMRangeFlavor) String() string

String returns the MachVMRangeFlavor constant's name, or its numeric form when the value is not a known constant.

type MachVMRangeTag added in v0.17.0

type MachVMRangeTag uint16
const (
	MachVMRangeTagDefault MachVMRangeTag = 0
	MachVMRangeTagData    MachVMRangeTag = 1
	MachVMRangeTagFixed   MachVMRangeTag = 2
)

func (MachVMRangeTag) String added in v0.17.0

func (e MachVMRangeTag) String() string

String returns the MachVMRangeTag constant's name, or its numeric form when the value is not a known constant.

type Material added in v0.17.0

type Material struct {
	objref.Handle
}

Material is an idiomatic wrapper over the Objective-C class MDLMaterial.

A collection of material properties that together describe the intended surface appearance for rendering a 3D object.

func MaterialFromID added in v0.17.0

func MaterialFromID(id objc.ID) *Material

MaterialFromID adopts an existing Objective-C object as a Material (nil for 0), retaining it and registering a release finalizer.

func NewMaterialWithNameScatteringFunction added in v0.17.0

func NewMaterialWithNameScatteringFunction(name string, scatteringFunction *ScatteringFunction) *Material

NewMaterialWithNameScatteringFunction initializes a material

func (*Material) BaseMaterial added in v0.17.0

func (m *Material) BaseMaterial() *Material

BaseMaterial returns the base material.

func (*Material) Count added in v0.17.0

func (m *Material) Count() int

Count returns the count.

func (*Material) Description added in v0.17.0

func (m *Material) Description() string

Description returns the object's -description text.

func (*Material) IsEqual added in v0.17.0

func (m *Material) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Material) IsKind added in v0.17.0

func (m *Material) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Material) MaterialFace added in v0.17.0

func (m *Material) MaterialFace() MaterialFace

MaterialFace returns the material face.

func (*Material) Name added in v0.17.0

func (m *Material) Name() string

Name returns the name.

func (*Material) ObjectAtIndexedSubscript added in v0.17.0

func (m *Material) ObjectAtIndexedSubscript(idx int) *MaterialProperty

ObjectAtIndexedSubscript returns the material property at the specified index in the material, for use with subscript syntax.

func (*Material) ObjectForKeyedSubscript added in v0.17.0

func (m *Material) ObjectForKeyedSubscript(name string) *MaterialProperty

ObjectForKeyedSubscript returns the material property with the specified name, for use with subscript syntax.

func (*Material) PropertiesWithSemantic added in v0.17.0

func (m *Material) PropertiesWithSemantic(semantic MaterialSemantic) []*MaterialProperty

PropertiesWithSemantic returns the complete list of material properties that match the specified material semantic.

func (*Material) PropertyNamed added in v0.17.0

func (m *Material) PropertyNamed(name string) *MaterialProperty

PropertyNamed returns the material property with the specified name.

func (*Material) PropertyWithSemantic added in v0.17.0

func (m *Material) PropertyWithSemantic(semantic MaterialSemantic) *MaterialProperty

PropertyWithSemantic returns the material property for the specified material semantic.

func (*Material) RemoveAllProperties added in v0.17.0

func (m *Material) RemoveAllProperties()

RemoveAllProperties removes all material properties from the material.

func (*Material) RemoveProperty added in v0.17.0

func (m *Material) RemoveProperty(property *MaterialProperty)

RemoveProperty removes the specified material property from the material.

func (*Material) ScatteringFunction added in v0.17.0

func (m *Material) ScatteringFunction() *ScatteringFunction

ScatteringFunction returns the scattering function.

func (*Material) SetProperty added in v0.17.0

func (m *Material) SetProperty(property *MaterialProperty)

SetProperty adds a new material property to or replaces an existing material property in the material.

func (*Material) String added in v0.17.0

func (m *Material) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Material) WithBaseMaterial added in v0.17.0

func (m *Material) WithBaseMaterial(baseMaterial *Material) *Material

WithBaseMaterial sets another material object from which this material’s properties are derived.

func (*Material) WithMaterialFace added in v0.17.0

func (m *Material) WithMaterialFace(materialFace MaterialFace) *Material

WithMaterialFace sets the surface of an object.

func (*Material) WithName added in v0.17.0

func (m *Material) WithName(name string) *Material

WithName sets a descriptive name for the material.

type MaterialFace added in v0.17.0

type MaterialFace uint64
const (
	MaterialFaceFront       MaterialFace = 0
	MaterialFaceBack        MaterialFace = 1
	MaterialFaceDoubleSided MaterialFace = 2
)

func (MaterialFace) String added in v0.17.0

func (e MaterialFace) String() string

String returns the MaterialFace constant's name, or its numeric form when the value is not a known constant.

type MaterialMipMapFilterMode added in v0.17.0

type MaterialMipMapFilterMode uint64

Modes for sampling textures at sizes between mipmap levels, used by the mipFilter property.

const (
	// Sampling a texture at a size between mipmap levels should return a texel value from the nearest mipmap level.
	MaterialMipMapFilterModeNearest MaterialMipMapFilterMode = 0
	// Sampling a texture at a size between mipmap levels should linearly interpolate between mipmap levels.
	MaterialMipMapFilterModeLinear MaterialMipMapFilterMode = 1
)

func (MaterialMipMapFilterMode) String added in v0.17.0

func (e MaterialMipMapFilterMode) String() string

String returns the MaterialMipMapFilterMode constant's name, or its numeric form when the value is not a known constant.

type MaterialProperty added in v0.17.0

type MaterialProperty struct {
	objref.Handle
}

MaterialProperty is an idiomatic wrapper over the Objective-C class MDLMaterialProperty.

A definition for one specific aspect of the rendering parameters for a material.

func MaterialPropertyFromID added in v0.17.0

func MaterialPropertyFromID(id objc.ID) *MaterialProperty

MaterialPropertyFromID adopts an existing Objective-C object as a MaterialProperty (nil for 0), retaining it and registering a release finalizer.

func NewMaterialPropertyWithNameSemantic added in v0.17.0

func NewMaterialPropertyWithNameSemantic(name string, semantic MaterialSemantic) *MaterialProperty

NewMaterialPropertyWithNameSemantic initializes a material property without a value.

func NewMaterialPropertyWithNameSemanticColor added in v0.17.0

func NewMaterialPropertyWithNameSemanticColor(name string, semantic MaterialSemantic, color coregraphics.CGColorRef) *MaterialProperty

NewMaterialPropertyWithNameSemanticColor initializes a material property with a color value.

func NewMaterialPropertyWithNameSemanticFloat added in v0.17.0

func NewMaterialPropertyWithNameSemanticFloat(name string, semantic MaterialSemantic, value float32) *MaterialProperty

NewMaterialPropertyWithNameSemanticFloat initializes a material property with a scalar value.

func NewMaterialPropertyWithNameSemanticFloat2 added in v0.17.0

func NewMaterialPropertyWithNameSemanticFloat2(name string, semantic MaterialSemantic, value unsafe.Pointer) *MaterialProperty

NewMaterialPropertyWithNameSemanticFloat2 initializes a material property with a 2-component vector value.

func NewMaterialPropertyWithNameSemanticFloat3 added in v0.17.0

func NewMaterialPropertyWithNameSemanticFloat3(name string, semantic MaterialSemantic, value unsafe.Pointer) *MaterialProperty

NewMaterialPropertyWithNameSemanticFloat3 initializes a material property with a 3-component vector value.

func NewMaterialPropertyWithNameSemanticFloat4 added in v0.17.0

func NewMaterialPropertyWithNameSemanticFloat4(name string, semantic MaterialSemantic, value unsafe.Pointer) *MaterialProperty

NewMaterialPropertyWithNameSemanticFloat4 initializes a material property with a 4-component vector value.

func NewMaterialPropertyWithNameSemanticMatrix4x4 added in v0.17.0

func NewMaterialPropertyWithNameSemanticMatrix4x4(name string, semantic MaterialSemantic, value unsafe.Pointer) *MaterialProperty

NewMaterialPropertyWithNameSemanticMatrix4x4 initializes a material property with a 4 x 4 matrix value.

func NewMaterialPropertyWithNameSemanticString added in v0.17.0

func NewMaterialPropertyWithNameSemanticString(name string, semantic MaterialSemantic, str string) *MaterialProperty

NewMaterialPropertyWithNameSemanticString initializes a material property with a string value.

func NewMaterialPropertyWithNameSemanticTextureSampler added in v0.17.0

func NewMaterialPropertyWithNameSemanticTextureSampler(name string, semantic MaterialSemantic, textureSampler *TextureSampler) *MaterialProperty

NewMaterialPropertyWithNameSemanticTextureSampler initializes a material property with a texture sampler object.

func NewMaterialPropertyWithNameSemanticURL added in v0.17.0

func NewMaterialPropertyWithNameSemanticURL(name string, semantic MaterialSemantic, url string) *MaterialProperty

NewMaterialPropertyWithNameSemanticURL initializes a material property with a URL value.

func (*MaterialProperty) Color added in v0.17.0

Color returns the color.

func (*MaterialProperty) Description added in v0.17.0

func (mp *MaterialProperty) Description() string

Description returns the object's -description text.

func (*MaterialProperty) Float2Value added in v0.18.0

func (mp *MaterialProperty) Float2Value() unsafe.Pointer

Float2Value returns the float2 value.

func (*MaterialProperty) Float3Value added in v0.18.0

func (mp *MaterialProperty) Float3Value() unsafe.Pointer

Float3Value returns the float3 value.

func (*MaterialProperty) Float4Value added in v0.18.0

func (mp *MaterialProperty) Float4Value() unsafe.Pointer

Float4Value returns the float4 value.

func (*MaterialProperty) FloatValue added in v0.17.0

func (mp *MaterialProperty) FloatValue() float32

FloatValue returns the float value.

func (*MaterialProperty) IsEqual added in v0.17.0

func (mp *MaterialProperty) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MaterialProperty) IsKind added in v0.17.0

func (mp *MaterialProperty) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MaterialProperty) Luminance added in v0.17.0

func (mp *MaterialProperty) Luminance() float32

Luminance returns the luminance.

func (*MaterialProperty) Matrix4x4 added in v0.18.0

func (mp *MaterialProperty) Matrix4x4() unsafe.Pointer

Matrix4x4 returns the matrix4x4.

func (*MaterialProperty) Name added in v0.17.0

func (mp *MaterialProperty) Name() string

Name returns the name.

func (*MaterialProperty) Semantic added in v0.17.0

func (mp *MaterialProperty) Semantic() MaterialSemantic

Semantic returns the semantic.

func (*MaterialProperty) SetProperties added in v0.17.0

func (mp *MaterialProperty) SetProperties(property *MaterialProperty)

SetProperties sets the material property’s attributes to those of the specified material property.

func (*MaterialProperty) String added in v0.17.0

func (mp *MaterialProperty) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*MaterialProperty) StringValue added in v0.17.0

func (mp *MaterialProperty) StringValue() string

StringValue returns the string value.

func (*MaterialProperty) TextureSamplerValue added in v0.17.0

func (mp *MaterialProperty) TextureSamplerValue() *TextureSampler

TextureSamplerValue returns the texture sampler value.

func (*MaterialProperty) Type added in v0.17.0

Type returns the type.

func (*MaterialProperty) URLValue added in v0.17.0

func (mp *MaterialProperty) URLValue() string

URLValue returns the URL value.

func (*MaterialProperty) WithColor added in v0.17.0

WithColor sets the color value for the material property.

func (*MaterialProperty) WithFloat2Value added in v0.17.0

func (mp *MaterialProperty) WithFloat2Value(float2Value unsafe.Pointer) *MaterialProperty

WithFloat2Value sets the 2-component floating-point vector value for the material property.

func (*MaterialProperty) WithFloat3Value added in v0.17.0

func (mp *MaterialProperty) WithFloat3Value(float3Value unsafe.Pointer) *MaterialProperty

WithFloat3Value sets the 3-component floating-point vector value for the material property.

func (*MaterialProperty) WithFloat4Value added in v0.17.0

func (mp *MaterialProperty) WithFloat4Value(float4Value unsafe.Pointer) *MaterialProperty

WithFloat4Value sets the 4-component floating-point vector value for the material property.

func (*MaterialProperty) WithFloatValue added in v0.17.0

func (mp *MaterialProperty) WithFloatValue(floatValue float32) *MaterialProperty

WithFloatValue sets the scalar floating-point value for the material property.

func (*MaterialProperty) WithLuminance added in v0.17.0

func (mp *MaterialProperty) WithLuminance(luminance float32) *MaterialProperty

WithLuminance sets the luminance.

func (*MaterialProperty) WithMatrix4x4 added in v0.17.0

func (mp *MaterialProperty) WithMatrix4x4(matrix4x4 unsafe.Pointer) *MaterialProperty

WithMatrix4x4 sets the 4 x 4 floating-point matrix value for the material property.

func (*MaterialProperty) WithName added in v0.17.0

func (mp *MaterialProperty) WithName(name string) *MaterialProperty

WithName sets a descriptive name for the material property.

func (*MaterialProperty) WithSemantic added in v0.17.0

func (mp *MaterialProperty) WithSemantic(semantic MaterialSemantic) *MaterialProperty

WithSemantic sets the semantic meaning for the material property’s value.

func (*MaterialProperty) WithStringValue added in v0.17.0

func (mp *MaterialProperty) WithStringValue(stringValue string) *MaterialProperty

WithStringValue sets the string value for the material.

func (*MaterialProperty) WithTextureSamplerValue added in v0.17.0

func (mp *MaterialProperty) WithTextureSamplerValue(textureSamplerValue *TextureSampler) *MaterialProperty

WithTextureSamplerValue sets a texture sampler object that provides the texture image value for the material property.

func (*MaterialProperty) WithType added in v0.17.0

WithType sets the data type stored in the material property’s value.

func (*MaterialProperty) WithURLValue added in v0.17.0

func (mp *MaterialProperty) WithURLValue(urlValue string) *MaterialProperty

WithURLValue sets the URL value for the material property—typically, the URL to a texture image.

type MaterialPropertyConnection added in v0.17.0

type MaterialPropertyConnection struct {
	objref.Handle
}

MaterialPropertyConnection is an idiomatic wrapper over the Objective-C class MDLMaterialPropertyConnection.

func MaterialPropertyConnectionFromID added in v0.17.0

func MaterialPropertyConnectionFromID(id objc.ID) *MaterialPropertyConnection

MaterialPropertyConnectionFromID adopts an existing Objective-C object as a MaterialPropertyConnection (nil for 0), retaining it and registering a release finalizer.

func NewMaterialPropertyConnectionWithOutputInput added in v0.17.0

func NewMaterialPropertyConnectionWithOutputInput(output *MaterialProperty, input *MaterialProperty) *MaterialPropertyConnection

NewMaterialPropertyConnectionWithOutputInput connects the output to the input

func (*MaterialPropertyConnection) Description added in v0.17.0

func (mpc *MaterialPropertyConnection) Description() string

Description returns the object's -description text.

func (*MaterialPropertyConnection) Input added in v0.17.0

Input returns the input.

func (*MaterialPropertyConnection) IsEqual added in v0.17.0

func (mpc *MaterialPropertyConnection) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MaterialPropertyConnection) IsKind added in v0.17.0

func (mpc *MaterialPropertyConnection) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MaterialPropertyConnection) Output added in v0.17.0

Output returns the output.

func (*MaterialPropertyConnection) String added in v0.17.0

func (mpc *MaterialPropertyConnection) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type MaterialPropertyGraph added in v0.17.0

type MaterialPropertyGraph struct {
	MaterialPropertyNode
}

MaterialPropertyGraph is an idiomatic wrapper over the Objective-C class MDLMaterialPropertyGraph.

It embeds MaterialPropertyNode, promoting that type's methods.

func MaterialPropertyGraphFromID added in v0.17.0

func MaterialPropertyGraphFromID(id objc.ID) *MaterialPropertyGraph

MaterialPropertyGraphFromID adopts an existing Objective-C object as a MaterialPropertyGraph (nil for 0), retaining it and registering a release finalizer.

func NewMaterialPropertyGraphWithNodesConnections added in v0.17.0

func NewMaterialPropertyGraphWithNodesConnections(nodes []*MaterialPropertyNode, connections []*MaterialPropertyConnection) *MaterialPropertyGraph

NewMaterialPropertyGraphWithNodesConnections creates a new MaterialPropertyGraph.

func (*MaterialPropertyGraph) Connections added in v0.17.0

func (mpg *MaterialPropertyGraph) Connections() []*MaterialPropertyConnection

Connections returns the connections.

Connections returns the collection as a Go slice.

func (*MaterialPropertyGraph) Evaluate added in v0.17.0

func (mpg *MaterialPropertyGraph) Evaluate()

Evaluate wraps the corresponding Objective-C method.

func (*MaterialPropertyGraph) Nodes added in v0.17.0

Nodes returns the nodes.

Nodes returns the collection as a Go slice.

func (*MaterialPropertyGraph) WithEvaluationFunction added in v0.17.0

func (mpg *MaterialPropertyGraph) WithEvaluationFunction(evaluationFunction func(obj.Object)) *MaterialPropertyGraph

WithEvaluationFunction sets the evaluation function.

type MaterialPropertyNode added in v0.17.0

type MaterialPropertyNode struct {
	objref.Handle
}

MaterialPropertyNode is an idiomatic wrapper over the Objective-C class MDLMaterialPropertyNode.

MaterialPropertyNode is an abstract base — you do not construct it directly. Construct one of MaterialPropertyGraph and pass it where a MaterialPropertyNode is accepted.

func MaterialPropertyNodeFromID added in v0.17.0

func MaterialPropertyNodeFromID(id objc.ID) *MaterialPropertyNode

MaterialPropertyNodeFromID adopts an existing Objective-C object as a MaterialPropertyNode (nil for 0), retaining it and registering a release finalizer.

func NewMaterialPropertyNodeWithInputsOutputsEvaluationFunction added in v0.17.0

func NewMaterialPropertyNodeWithInputsOutputsEvaluationFunction(inputs []*MaterialProperty, outputs []*MaterialProperty, function func(obj.Object)) *MaterialPropertyNode

NewMaterialPropertyNodeWithInputsOutputsEvaluationFunction creates a new MaterialPropertyNode.

func (*MaterialPropertyNode) Description added in v0.17.0

func (mpn *MaterialPropertyNode) Description() string

Description returns the object's -description text.

func (*MaterialPropertyNode) Inputs added in v0.17.0

func (mpn *MaterialPropertyNode) Inputs() []*MaterialProperty

Inputs returns the inputs.

Inputs returns the collection as a Go slice.

func (*MaterialPropertyNode) IsEqual added in v0.17.0

func (mpn *MaterialPropertyNode) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MaterialPropertyNode) IsKind added in v0.17.0

func (mpn *MaterialPropertyNode) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MaterialPropertyNode) Outputs added in v0.17.0

func (mpn *MaterialPropertyNode) Outputs() []*MaterialProperty

Outputs returns the outputs.

Outputs returns the collection as a Go slice.

func (*MaterialPropertyNode) String added in v0.17.0

func (mpn *MaterialPropertyNode) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*MaterialPropertyNode) WithEvaluationFunction added in v0.17.0

func (mpn *MaterialPropertyNode) WithEvaluationFunction(evaluationFunction func(obj.Object)) *MaterialPropertyNode

WithEvaluationFunction sets the evaluation function.

type MaterialPropertyNodeProvider added in v0.17.0

type MaterialPropertyNodeProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

MaterialPropertyNodeProvider is accepted wherever a MDLMaterialPropertyNode (or one of its subclasses) is expected.

type MaterialPropertyType added in v0.17.0

type MaterialPropertyType uint64

Options for the data type of a material property, used by the type property.

const (
	// The material property’s value has not been initialized.
	MaterialPropertyTypeNone MaterialPropertyType = 0
	// The material’s value is a string.
	MaterialPropertyTypeString MaterialPropertyType = 1
	// The material property’s value is a URL—typically, a URL referencing a texture image.
	MaterialPropertyTypeURL MaterialPropertyType = 2
	// The material property’s value is a MDLTextureSampler object that provides both a texture image and texture rendering parameters.
	MaterialPropertyTypeTexture MaterialPropertyType = 3
	// The material property’s value is a uniform color.
	MaterialPropertyTypeColor MaterialPropertyType = 4
	// The material property’s value is a floating-point scalar.
	MaterialPropertyTypeFloat MaterialPropertyType = 5
	// The material property’s value is a 2-component floating-point vector.
	MaterialPropertyTypeFloat2 MaterialPropertyType = 6
	// The material property’s value is a 3-component floating-point vector.
	MaterialPropertyTypeFloat3 MaterialPropertyType = 7
	// The material property’s value is a 4-component floating-point vector.
	MaterialPropertyTypeFloat4 MaterialPropertyType = 8
	// The material property’s value is a 4 x 4 floating-point matrix.
	MaterialPropertyTypeMatrix44 MaterialPropertyType = 9
	MaterialPropertyTypeBuffer   MaterialPropertyType = 10
)

func (MaterialPropertyType) String added in v0.17.0

func (e MaterialPropertyType) String() string

String returns the MaterialPropertyType constant's name, or its numeric form when the value is not a known constant.

type MaterialSemantic added in v0.17.0

type MaterialSemantic uint64

Options for the semantic use of a material property’s value in rendering a particular surface appearance; used by the semantic property.

const (
	// The inherent color of a surface, to be used as a modulator during shading.
	MaterialSemanticBaseColor MaterialSemantic = 0
	// The degree to which light scatters under the surface of a material.
	MaterialSemanticSubsurface MaterialSemantic = 1
	// The degree to which a material appears as a dielectric surface (lower values) or as a metal (higher values).
	MaterialSemanticMetallic MaterialSemantic = 2
	// The intensity of specular highlights that appear on the material’s surface.
	MaterialSemanticSpecular MaterialSemantic = 3
	// The exponent to be used in Blinn-Phong approximation of the material’s specular response.
	MaterialSemanticSpecularExponent MaterialSemantic = 4
	// The balance of color for specular highlights, between the light color (lower values) and the material’s base color (at higher values).
	MaterialSemanticSpecularTint MaterialSemantic = 5
	// The degree to which a material appears smooth, affecting both diffuse and specular response.
	MaterialSemanticRoughness MaterialSemantic = 6
	// The degree to which specular highlights elongate in the direction of the local tangent basis.
	MaterialSemanticAnisotropic MaterialSemantic = 7
	// The angle at which anisotropic effects are rotated relative to the local tangent basis.
	MaterialSemanticAnisotropicRotation MaterialSemantic = 8
	// The intensity of highlights that appear only at glancing angles on a material’s surface.
	MaterialSemanticSheen MaterialSemantic = 9
	// The balance of color for highlights that appear only at glancing angles, between the light color (lower values) and the material’s base color (at higher values).
	MaterialSemanticSheenTint MaterialSemantic = 10
	// The intensity of a second specular highlight, similar to the gloss that results from a clear coat on an automotive finish.
	MaterialSemanticClearcoat MaterialSemantic = 11
	// The spread of a second specular highlight, similar to the gloss that results from a clear coat on an automotive finish.
	MaterialSemanticClearcoatGloss MaterialSemantic = 12
	// The color emitted as radiance from a material’s surface.
	MaterialSemanticEmission MaterialSemantic = 13
	// The degree of perturbation in a material’s surface.
	MaterialSemanticBump MaterialSemantic = 14
	// The opacity of a material’s surface.
	MaterialSemanticOpacity MaterialSemantic = 15
	// The index of refraction for the medium surrounding a material.
	MaterialSemanticInterfaceIndexOfRefraction MaterialSemantic = 16
	// The index of refraction for a material itself.
	MaterialSemanticMaterialIndexOfRefraction MaterialSemantic = 17
	// The variation in the surface normal vectors in a material, relative to model coordinate space.
	MaterialSemanticObjectSpaceNormal MaterialSemantic = 18
	// The variation in the surface normal vectors in a material, relative to surface tangent coordinate space.
	MaterialSemanticTangentSpaceNormal MaterialSemantic = 19
	// The displacement of a material’s surface relative to the surface normal.
	MaterialSemanticDisplacement MaterialSemantic = 20
	// The scaling factor for displacement of a material’s surface.
	MaterialSemanticDisplacementScale MaterialSemantic = 21
	// The attenuation of ambient light due to local geometry variations on a surface.
	MaterialSemanticAmbientOcclusion MaterialSemantic = 22
	// The scaling factor for ambient occlusion shading.
	MaterialSemanticAmbientOcclusionScale MaterialSemantic = 23
	// The material property’s semantic property has not been initialized.
	MaterialSemanticNone MaterialSemantic = 32768
	// The meaning of the material property’s value is not one of the standard semantic uses recognized by Model I/O.
	MaterialSemanticUserDefined MaterialSemantic = 32769
)

func (MaterialSemantic) String added in v0.17.0

func (e MaterialSemantic) String() string

String returns the MaterialSemantic constant's name, or its numeric form when the value is not a known constant.

type MaterialTextureFilterMode added in v0.17.0

type MaterialTextureFilterMode uint64

Modes for sampling textures at coordinates between texels, used by the minFilter and magFilter properties.

const (
	// Sampling at texture coordinates between texels should return the value of the nearest texel.
	MaterialTextureFilterModeNearest MaterialTextureFilterMode = 0
	// Sampling at texture coordinates between texels should linearly interpolate between texel values.
	MaterialTextureFilterModeLinear MaterialTextureFilterMode = 1
)

func (MaterialTextureFilterMode) String added in v0.17.0

func (e MaterialTextureFilterMode) String() string

String returns the MaterialTextureFilterMode constant's name, or its numeric form when the value is not a known constant.

type MaterialTextureWrapMode added in v0.17.0

type MaterialTextureWrapMode uint64

Modes for sampling textures at coordinates outside the texture bounds, used by the sWrapMode, tWrapMode, and rWrapMode properties.

const (
	// Sampling at any texture coordinate outside the 0.0 to 1.0 range returns the texel color from the nearest edge.
	MaterialTextureWrapModeClamp MaterialTextureWrapMode = 0
	// Sampling at texture coordinates outside the 0.0 to 1.0 range results in a repeated tiling effect.
	MaterialTextureWrapModeRepeat MaterialTextureWrapMode = 1
	// Sampling at texture coordinates outside the 0.0 to 1.0 range results in a mirrored tiling effect.
	MaterialTextureWrapModeMirror MaterialTextureWrapMode = 2
)

func (MaterialTextureWrapMode) String added in v0.17.0

func (e MaterialTextureWrapMode) String() string

String returns the MaterialTextureWrapMode constant's name, or its numeric form when the value is not a known constant.

type Matrix4x4Array added in v0.17.0

type Matrix4x4Array struct {
	objref.Handle
}

Matrix4x4Array is an idiomatic wrapper over the Objective-C class MDLMatrix4x4Array.

func Matrix4x4ArrayFromID added in v0.17.0

func Matrix4x4ArrayFromID(id objc.ID) *Matrix4x4Array

Matrix4x4ArrayFromID adopts an existing Objective-C object as a Matrix4x4Array (nil for 0), retaining it and registering a release finalizer.

func NewMatrix4x4ArrayWithElementCount added in v0.17.0

func NewMatrix4x4ArrayWithElementCount(arrayElementCount int) *Matrix4x4Array

NewMatrix4x4ArrayWithElementCount creates a new Matrix4x4Array.

func (*Matrix4x4Array) Clear added in v0.17.0

func (ma *Matrix4x4Array) Clear()

Clear wraps the corresponding Objective-C method.

func (*Matrix4x4Array) Description added in v0.17.0

func (ma *Matrix4x4Array) Description() string

Description returns the object's -description text.

func (*Matrix4x4Array) ElementCount added in v0.17.0

func (ma *Matrix4x4Array) ElementCount() int

ElementCount returns the element count.

func (*Matrix4x4Array) GetDouble4x4ArrayMaxCount added in v0.17.0

func (ma *Matrix4x4Array) GetDouble4x4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetDouble4x4ArrayMaxCount wraps the corresponding Objective-C method.

func (*Matrix4x4Array) GetFloat4x4ArrayMaxCount added in v0.17.0

func (ma *Matrix4x4Array) GetFloat4x4ArrayMaxCount(valuesArray unsafe.Pointer, maxCount int) int

GetFloat4x4ArrayMaxCount wraps the corresponding Objective-C method.

func (*Matrix4x4Array) IsEqual added in v0.17.0

func (ma *Matrix4x4Array) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Matrix4x4Array) IsKind added in v0.17.0

func (ma *Matrix4x4Array) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Matrix4x4Array) Precision added in v0.17.0

func (ma *Matrix4x4Array) Precision() DataPrecision

Precision returns the precision.

func (*Matrix4x4Array) SetDouble4x4ArrayCount added in v0.17.0

func (ma *Matrix4x4Array) SetDouble4x4ArrayCount(valuesArray unsafe.Pointer, count int)

SetDouble4x4ArrayCount wraps the corresponding Objective-C method.

func (*Matrix4x4Array) SetFloat4x4ArrayCount added in v0.17.0

func (ma *Matrix4x4Array) SetFloat4x4ArrayCount(valuesArray unsafe.Pointer, count int)

SetFloat4x4ArrayCount wraps the corresponding Objective-C method.

func (*Matrix4x4Array) String added in v0.17.0

func (ma *Matrix4x4Array) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type Mesh added in v0.17.0

type Mesh struct {
	Object
}

Mesh is an idiomatic wrapper over the Objective-C class MDLMesh.

It embeds Object, promoting that type's methods.

A container for vertex buffer data to be used in rendering a 3D object.

func MeshFromID added in v0.17.0

func MeshFromID(id objc.ID) *Mesh

MeshFromID adopts an existing Objective-C object as a Mesh (nil for 0), retaining it and registering a release finalizer.

func NewMeshWithVertexBuffersVertexCountDescriptorSubmeshes added in v0.17.0

func NewMeshWithVertexBuffersVertexCountDescriptorSubmeshes(vertexBuffers []obj.Object, vertexCount int, descriptor *VertexDescriptor, submeshes []*Submesh) *Mesh

NewMeshWithVertexBuffersVertexCountDescriptorSubmeshes creates a mesh by unifying vertex data from multiple sources with the specified parameters.

func NewSubdividedMeshSubmeshIndexSubdivisionLevels added in v0.17.0

func NewSubdividedMeshSubmeshIndexSubdivisionLevels(mesh *Mesh, submeshIndex int, subdivisionLevels int) *Mesh

NewSubdividedMeshSubmeshIndexSubdivisionLevels creates a new mesh by subdividing the specified mesh.

func (*Mesh) AddAttributeWithNameFormat added in v0.17.0

func (m *Mesh) AddAttributeWithNameFormat(name string, format VertexFormat)

AddAttributeWithNameFormat adds a vertex attribute to the mesh and creates a new, empty corresponding vertex buffer.

func (*Mesh) AddAttributeWithNameFormatTypeDataStride added in v0.17.0

func (m *Mesh) AddAttributeWithNameFormatTypeDataStride(name string, format VertexFormat, type_ string, data []byte, stride int)

AddAttributeWithNameFormatTypeDataStride create a new vertex attribute including an associated buffer with a copy of the supplied data, and update the vertex descriptor accordingly

func (*Mesh) AddAttributeWithNameFormatTypeDataStrideTime added in v0.17.0

func (m *Mesh) AddAttributeWithNameFormatTypeDataStrideTime(name string, format VertexFormat, type_ string, data []byte, stride int, time_ float64)

AddAttributeWithNameFormatTypeDataStrideTime create a new vertex attribute including an associated buffer with a copy of the supplied data, and update the vertex descriptor accordingly Adding an attribute, such as position data, at multiple times will result in attributes being created for each of those times. Attributes corresponding to multiple times can be retrieved from the vertex descriptor.

func (*Mesh) AddNormalsWithAttributeNamedCreaseThreshold added in v0.17.0

func (m *Mesh) AddNormalsWithAttributeNamedCreaseThreshold(attributeName string, creaseThreshold float32)

AddNormalsWithAttributeNamedCreaseThreshold generates surface normal data for the mesh based on its vertex position data.

func (*Mesh) AddOrthTanBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed added in v0.17.0

func (m *Mesh) AddOrthTanBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed(textureCoordinateAttributeName string, normalAttributeName string, tangentAttributeName string)

AddOrthTanBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed adds orth tan basis for texture coordinate attribute named normal attribute named tangent attribute named.

func (*Mesh) AddTangentBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed added in v0.17.0

func (m *Mesh) AddTangentBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed(textureCoordinateAttributeName string, normalAttributeName string, tangentAttributeName string)

AddTangentBasisForTextureCoordinateAttributeNamedNormalAttributeNamedTangentAttributeNamed generates surface tangent data for the mesh based on its vertex position, surface normal, and texture coordinate data.

func (*Mesh) AddTangentBasisForTextureCoordinateAttributeNamedTangentAttributeNamedBitangentAttributeNamed added in v0.17.0

func (m *Mesh) AddTangentBasisForTextureCoordinateAttributeNamedTangentAttributeNamedBitangentAttributeNamed(textureCoordinateAttributeName string, tangentAttributeName string, bitangentAttributeName string)

AddTangentBasisForTextureCoordinateAttributeNamedTangentAttributeNamedBitangentAttributeNamed generates surface tangent and bitangent data for the mesh based on its vertex position and texture coordinate data.

func (*Mesh) AddUnwrappedTextureCoordinatesForAttributeNamed added in v0.17.0

func (m *Mesh) AddUnwrappedTextureCoordinatesForAttributeNamed(textureCoordinateAttributeName string)

AddUnwrappedTextureCoordinatesForAttributeNamed creates texture coordinates by unwrapping the mesh Uses the attribute named MDLVertexAttributePosition and if available, the attribute named MDLVertexAttributeNormal to calculate texture coordinates

func (*Mesh) FlipTextureCoordinatesInAttributeNamed added in v0.17.0

func (m *Mesh) FlipTextureCoordinatesInAttributeNamed(textureCoordinateAttributeName string)

FlipTextureCoordinatesInAttributeNamed flips texture coordinates by performing the operation (u,v) = (u, 1-v) Many application generate model files with texture coordinate mapping assuming a bottom left bitmap origin. It can be more convenient to have texture coordinates corresponding to an upper left bitmap origin. This selector will perform the flip operation if the requested texture coordinate attribute exists on the mesh. An exception will be raised if the attribute cannot be found

func (*Mesh) GenerateAmbientOcclusionTextureWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed added in v0.17.0

func (m *Mesh) GenerateAmbientOcclusionTextureWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(bakeQuality float32, attenuationFactor float32, objectsToConsider []*Object, vertexAttributeName string, materialPropertyName string) bool

GenerateAmbientOcclusionTextureWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed calculates ambient occlusion (AO) information for the mesh and saves it in the mesh as a material property texture.

func (*Mesh) GenerateAmbientOcclusionTextureWithSizeRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed added in v0.17.0

func (m *Mesh) GenerateAmbientOcclusionTextureWithSizeRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(textureSize unsafe.Pointer, raysPerSample int, attenuationFactor float32, objectsToConsider []*Object, vertexAttributeName string, materialPropertyName string) bool

GenerateAmbientOcclusionTextureWithSizeRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed calculates ambient occlusion (AO) information for the mesh and saves it in the mesh as a material property texture of the specified size.

func (*Mesh) GenerateAmbientOcclusionVertexColorsWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamed added in v0.17.0

func (m *Mesh) GenerateAmbientOcclusionVertexColorsWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamed(bakeQuality float32, attenuationFactor float32, objectsToConsider []*Object, vertexAttributeName string) bool

GenerateAmbientOcclusionVertexColorsWithQualityAttenuationFactorObjectsToConsiderVertexAttributeNamed calculates ambient occlusion (AO) information for the mesh and saves it in the mesh as a vertex color attribute.

func (*Mesh) GenerateAmbientOcclusionVertexColorsWithRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamed added in v0.17.0

func (m *Mesh) GenerateAmbientOcclusionVertexColorsWithRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamed(raysPerSample int, attenuationFactor float32, objectsToConsider []*Object, vertexAttributeName string) bool

GenerateAmbientOcclusionVertexColorsWithRaysPerSampleAttenuationFactorObjectsToConsiderVertexAttributeNamed calculates ambient occlusion (AO) information for the mesh, using the specified number of rays per sample, and saves it in the mesh as a vertex color attribute.

func (*Mesh) GenerateLightMapTextureWithQualityLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed added in v0.17.0

func (m *Mesh) GenerateLightMapTextureWithQualityLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(bakeQuality float32, lightsToConsider []*Light, objectsToConsider []*Object, vertexAttributeName string, materialPropertyName string) bool

GenerateLightMapTextureWithQualityLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed calculates static lighting information for the mesh and saves it in the mesh as a material property texture.

func (*Mesh) GenerateLightMapTextureWithTextureSizeLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed added in v0.17.0

func (m *Mesh) GenerateLightMapTextureWithTextureSizeLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed(textureSize unsafe.Pointer, lightsToConsider []*Light, objectsToConsider []*Object, vertexAttributeName string, materialPropertyName string) bool

GenerateLightMapTextureWithTextureSizeLightsToConsiderObjectsToConsiderVertexAttributeNamedMaterialPropertyNamed calculates static lighting information for the mesh and saves it in the mesh as a material property texture of the specified size.

func (*Mesh) GenerateLightMapVertexColorsWithLightsToConsiderObjectsToConsiderVertexAttributeNamed added in v0.17.0

func (m *Mesh) GenerateLightMapVertexColorsWithLightsToConsiderObjectsToConsiderVertexAttributeNamed(lightsToConsider []*Light, objectsToConsider []*Object, vertexAttributeName string) bool

GenerateLightMapVertexColorsWithLightsToConsiderObjectsToConsiderVertexAttributeNamed calculates static lighting information for the mesh and saves it in the mesh as a vertex color attribute.

func (*Mesh) MakeVerticesUnique added in v0.17.0

func (m *Mesh) MakeVerticesUnique()

MakeVerticesUnique modifies the mesh’s vertex buffers so that no vertices are shared by multiple faces.

func (*Mesh) MakeVerticesUniqueAndReturnError added in v0.17.0

func (m *Mesh) MakeVerticesUniqueAndReturnError() error

MakeVerticesUniqueAndReturnError deindexes the vertex array If any vertices are shared on multiple faces, duplicate those vertices so faces do not share vertices. The vertex buffer and index buffers on submeshes may grow to accommodate any vertices added.

MakeVerticesUniqueAndReturnError returns an error if the operation did not succeed.

func (*Mesh) RemoveAttributeNamed added in v0.17.0

func (m *Mesh) RemoveAttributeNamed(name string)

RemoveAttributeNamed remove an attribute if the named attribute does not exist, nothing happens.

func (*Mesh) ReplaceAttributeNamedWithData added in v0.17.0

func (m *Mesh) ReplaceAttributeNamedWithData(name string, newData *VertexAttributeData)

ReplaceAttributeNamedWithData replace existing attribute data with new attribute data retaining the format of the replacement data. If the specified attribute does not already exist, it will be created.

func (*Mesh) SetVertexBuffers added in v0.17.0

func (m *Mesh) SetVertexBuffers(vertexBuffers []obj.Object)

SetVertexBuffers wraps the corresponding Objective-C method.

func (*Mesh) Submeshes added in v0.17.0

func (m *Mesh) Submeshes() []*Submesh

Submeshes returns array of submeshes containing an indexbuffer referencing the vertex data and material to be applied when the mesh is rendered

Submeshes returns the collection as a Go slice.

func (*Mesh) UpdateAttributeNamedWithData added in v0.17.0

func (m *Mesh) UpdateAttributeNamedWithData(name string, newData *VertexAttributeData)

UpdateAttributeNamedWithData update existing attribute data with new attribute data retaining the format of the existing data. If the specified attribute does not already exist, it will be created with the same format as the newData.

func (*Mesh) VertexAttributeDataForAttributeNamed added in v0.17.0

func (m *Mesh) VertexAttributeDataForAttributeNamed(name string) *VertexAttributeData

VertexAttributeDataForAttributeNamed returns the vertex data for the specified attribute.

func (*Mesh) VertexAttributeDataForAttributeNamedAsFormat added in v0.17.0

func (m *Mesh) VertexAttributeDataForAttributeNamedAsFormat(name string, format VertexFormat) *VertexAttributeData

VertexAttributeDataForAttributeNamedAsFormat convenience selector to get quick access to vertex attribute data reformatted to the requested format if necessary. If the desired format has less elements than the source attribute elements, excess elements will be discarded. If the desired format has more elements than the source attribute, then the destination elements will be set to zero. The vertex buffer will remain mapped until the MDLVertexAttributeData is freed.

func (*Mesh) VertexBuffers added in v0.17.0

func (m *Mesh) VertexBuffers() []obj.Object

VertexBuffers returns array of buffers containing vertex data The vertex buffers in this array are indexed by the vertex descriptor.

func (*Mesh) VertexCount added in v0.17.0

func (m *Mesh) VertexCount() int

VertexCount returns number of vertices in the vertexBuffers The size of vertex data in each buffer can be computed by multiplying this value with the stride of the buffer in the vertexDescriptor's layout

func (*Mesh) VertexDescriptor added in v0.17.0

func (m *Mesh) VertexDescriptor() *VertexDescriptor

VertexDescriptor returns immutable vertex descriptor for interpreting data in vertexBuffers Setting this applies the new layout in 'vertexBuffers' thus is a heavyweight operation as structured copies of almost all vertex buffer data could be made. Additionally, if the new vertexDescriptor does not have an attribute in the original vertexDescriptor, that attribute will be deleted. If the original vertexDescriptor does not have an attribute in the new vertexDescriptor, the data for the added attribute set as the added attribute's initializationValue property. The allocator associated with each original meshbuffer is used to reallocate the corresponding resultant meshbuffer.

func (*Mesh) WithHidden added in v0.17.0

func (m *Mesh) WithHidden(hidden bool) *Mesh

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*Mesh) WithInstance added in v0.17.0

func (m *Mesh) WithInstance(instance ObjectProvider) *Mesh

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*Mesh) WithParent added in v0.17.0

func (m *Mesh) WithParent(parent ObjectProvider) *Mesh

WithParent sets the parent object that contains this object.

func (*Mesh) WithSubmeshes added in v0.17.0

func (m *Mesh) WithSubmeshes(items ...*Submesh) *Mesh

WithSubmeshes sets the array of submeshes to be used in rendering the mesh.

func (*Mesh) WithVertexCount added in v0.17.0

func (m *Mesh) WithVertexCount(vertexCount int) *Mesh

WithVertexCount sets the number of vertices in the mesh.

func (*Mesh) WithVertexDescriptor added in v0.17.0

func (m *Mesh) WithVertexDescriptor(vertexDescriptor *VertexDescriptor) *Mesh

WithVertexDescriptor sets a description of the format and layout of the mesh’s vertex buffers.

type MeshBuffer added in v0.17.0

type MeshBuffer interface {
	FillDataOffset(data []byte, offset int)
	Map() *MeshBufferMap
	Length() int
	Allocator() obj.Object
	Zone() obj.Object
	Type() MeshBufferType
}

MeshBuffer is the Go form of the Objective-C protocol MDLMeshBuffer.

type MeshBufferAllocator added in v0.17.0

type MeshBufferAllocator interface {
	NewZone(capacity int) obj.Object
	NewZoneForBuffersWithSizeAndType(sizes []*foundation.Number, types []*foundation.Number) obj.Object
	NewBufferType(length int, type_ MeshBufferType) obj.Object
	NewBufferWithDataType(data []byte, type_ MeshBufferType) obj.Object
	NewBufferFromZoneLengthType(zone obj.Object, length int, type_ MeshBufferType) obj.Object
	NewBufferFromZoneDataType(zone obj.Object, data []byte, type_ MeshBufferType) obj.Object
}

MeshBufferAllocator is the Go form of the Objective-C protocol MDLMeshBufferAllocator.

type MeshBufferData added in v0.17.0

type MeshBufferData struct {
	objref.Handle
}

MeshBufferData is an idiomatic wrapper over the Objective-C class MDLMeshBufferData.

A memory buffer that stores vertex or index data for a Model I/O mesh.

func MeshBufferDataFromID added in v0.17.0

func MeshBufferDataFromID(id objc.ID) *MeshBufferData

MeshBufferDataFromID adopts an existing Objective-C object as a MeshBufferData (nil for 0), retaining it and registering a release finalizer.

func NewMeshBufferDataWithTypeData added in v0.17.0

func NewMeshBufferDataWithTypeData(type_ MeshBufferType, data []byte) *MeshBufferData

NewMeshBufferDataWithTypeData initializes a buffer containing the specified data.

func NewMeshBufferDataWithTypeLength added in v0.17.0

func NewMeshBufferDataWithTypeLength(type_ MeshBufferType, length int) *MeshBufferData

NewMeshBufferDataWithTypeLength initializes a buffer of the specified length.

func (*MeshBufferData) Data added in v0.17.0

func (mbd *MeshBufferData) Data() []byte

Data returns the data.

func (*MeshBufferData) Description added in v0.17.0

func (mbd *MeshBufferData) Description() string

Description returns the object's -description text.

func (*MeshBufferData) IsEqual added in v0.17.0

func (mbd *MeshBufferData) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MeshBufferData) IsKind added in v0.17.0

func (mbd *MeshBufferData) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MeshBufferData) String added in v0.17.0

func (mbd *MeshBufferData) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type MeshBufferDataAllocator added in v0.17.0

type MeshBufferDataAllocator struct {
	objref.Handle
}

MeshBufferDataAllocator is an idiomatic wrapper over the Objective-C class MDLMeshBufferDataAllocator.

A basic allocator implementation that allocates from main memory using data objects.

func MeshBufferDataAllocatorFromID added in v0.17.0

func MeshBufferDataAllocatorFromID(id objc.ID) *MeshBufferDataAllocator

MeshBufferDataAllocatorFromID adopts an existing Objective-C object as a MeshBufferDataAllocator (nil for 0), retaining it and registering a release finalizer.

func NewMeshBufferDataAllocator added in v0.17.0

func NewMeshBufferDataAllocator() *MeshBufferDataAllocator

NewMeshBufferDataAllocator creates a new MeshBufferDataAllocator.

func (*MeshBufferDataAllocator) Description added in v0.17.0

func (mbda *MeshBufferDataAllocator) Description() string

Description returns the object's -description text.

func (*MeshBufferDataAllocator) IsEqual added in v0.17.0

func (mbda *MeshBufferDataAllocator) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MeshBufferDataAllocator) IsKind added in v0.17.0

func (mbda *MeshBufferDataAllocator) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MeshBufferDataAllocator) String added in v0.17.0

func (mbda *MeshBufferDataAllocator) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type MeshBufferMap added in v0.17.0

type MeshBufferMap struct {
	objref.Handle
}

MeshBufferMap is an idiomatic wrapper over the Objective-C class MDLMeshBufferMap.

An object that manages access to a memory buffer used for the data storage of a Model I/O mesh.

func MeshBufferMapFromID added in v0.17.0

func MeshBufferMapFromID(id objc.ID) *MeshBufferMap

MeshBufferMapFromID adopts an existing Objective-C object as a MeshBufferMap (nil for 0), retaining it and registering a release finalizer.

func NewMeshBufferMapWithBytesDeallocator added in v0.17.0

func NewMeshBufferMapWithBytesDeallocator(data unsafe.Pointer, deallocator func()) *MeshBufferMap

NewMeshBufferMapWithBytesDeallocator initializes a buffer map object to manage access to the specified memory.

func (*MeshBufferMap) Bytes added in v0.18.0

func (mbm *MeshBufferMap) Bytes() unsafe.Pointer

Bytes returns the bytes.

func (*MeshBufferMap) Description added in v0.17.0

func (mbm *MeshBufferMap) Description() string

Description returns the object's -description text.

func (*MeshBufferMap) IsEqual added in v0.17.0

func (mbm *MeshBufferMap) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MeshBufferMap) IsKind added in v0.17.0

func (mbm *MeshBufferMap) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MeshBufferMap) String added in v0.17.0

func (mbm *MeshBufferMap) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type MeshBufferType added in v0.17.0

type MeshBufferType uint64

Options for the content of a mesh buffer, used by the type property and by MDLMeshBufferAllocator methods for creating buffers.

const (
	// The buffer contains per-vertex data for one or more vertex attributes of a MDLMesh object.
	MeshBufferTypeVertex MeshBufferType = 1
	// The buffer contains index data for a MDLSubmesh object.
	MeshBufferTypeIndex  MeshBufferType = 2
	MeshBufferTypeCustom MeshBufferType = 3
)

func (MeshBufferType) String added in v0.17.0

func (e MeshBufferType) String() string

String returns the MeshBufferType constant's name, or its numeric form when the value is not a known constant.

type MeshBufferZone added in v0.17.0

type MeshBufferZone interface {
	Capacity() int
	Allocator() obj.Object
}

MeshBufferZone is the Go form of the Objective-C protocol MDLMeshBufferZone.

type MeshBufferZoneDefault added in v0.17.0

type MeshBufferZoneDefault struct {
	objref.Handle
}

MeshBufferZoneDefault is an idiomatic wrapper over the Objective-C class MDLMeshBufferZoneDefault.

A standard implementation of the MDLMeshBufferZone protocol.

func MeshBufferZoneDefaultFromID added in v0.17.0

func MeshBufferZoneDefaultFromID(id objc.ID) *MeshBufferZoneDefault

MeshBufferZoneDefaultFromID adopts an existing Objective-C object as a MeshBufferZoneDefault (nil for 0), retaining it and registering a release finalizer.

func NewMeshBufferZoneDefault added in v0.17.0

func NewMeshBufferZoneDefault() *MeshBufferZoneDefault

NewMeshBufferZoneDefault creates a new MeshBufferZoneDefault.

func (*MeshBufferZoneDefault) Capacity added in v0.17.0

func (mbzd *MeshBufferZoneDefault) Capacity() int

Capacity returns the capacity.

func (*MeshBufferZoneDefault) Description added in v0.17.0

func (mbzd *MeshBufferZoneDefault) Description() string

Description returns the object's -description text.

func (*MeshBufferZoneDefault) IsEqual added in v0.17.0

func (mbzd *MeshBufferZoneDefault) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*MeshBufferZoneDefault) IsKind added in v0.17.0

func (mbzd *MeshBufferZoneDefault) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*MeshBufferZoneDefault) String added in v0.17.0

func (mbzd *MeshBufferZoneDefault) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type MpoFlags added in v0.17.0

type MpoFlags uint32

Bitmask — values may be combined with |.

const (
	MpoFlagsPort                        MpoFlags = 0
	MpoFlagsServicePort                 MpoFlags = 1024
	MpoFlagsConnectionPort              MpoFlags = 2048
	MpoFlagsReplyPort                   MpoFlags = 4096
	MpoFlagsWeakReplyPort               MpoFlags = 16384
	MpoFlagsNotificationPort            MpoFlags = 17408
	MpoFlagsExceptionPort               MpoFlags = 32768
	MpoFlagsConnectionPortWithPortArray MpoFlags = 65536
)

func (MpoFlags) String added in v0.17.0

func (e MpoFlags) String() string

String returns the MpoFlags constant's name, or its numeric form when the value is not a known constant.

type NXMouseButton

type NXMouseButton int32
const (
	NX_OneButton   NXMouseButton = 0
	NX_LeftButton  NXMouseButton = 1
	NX_RightButton NXMouseButton = 2
)

func (NXMouseButton) String

func (e NXMouseButton) String() string

String returns the NXMouseButton constant's name, or its numeric form when the value is not a known constant.

type Named added in v0.17.0

type Named interface {
	Name() string
	SetName(name string)
}

Named is the Go form of the Objective-C protocol MDLNamed.

type NoiseTexture added in v0.17.0

type NoiseTexture struct {
	Texture
}

NoiseTexture is an idiomatic wrapper over the Objective-C class MDLNoiseTexture.

It embeds Texture, promoting that type's methods.

A generator of texel data that creates a field of random noise.

func NewNoiseTextureCellularNoiseWithFrequencyNameTextureDimensionsChannelEncoding added in v0.17.0

func NewNoiseTextureCellularNoiseWithFrequencyNameTextureDimensionsChannelEncoding(frequency float32, name string, textureDimensions unsafe.Pointer, channelEncoding TextureChannelEncoding) *NoiseTexture

NewNoiseTextureCellularNoiseWithFrequencyNameTextureDimensionsChannelEncoding create a texture containing cellular noise.

func NewNoiseTextureScalarNoiseWithSmoothnessNameTextureDimensionsChannelCountChannelEncodingGrayscale added in v0.17.0

func NewNoiseTextureScalarNoiseWithSmoothnessNameTextureDimensionsChannelCountChannelEncodingGrayscale(smoothness float32, name string, textureDimensions unsafe.Pointer, channelCount int, channelEncoding TextureChannelEncoding, grayscale bool) *NoiseTexture

NewNoiseTextureScalarNoiseWithSmoothnessNameTextureDimensionsChannelCountChannelEncodingGrayscale initializes a noise texture that creates random color noise.

func NewNoiseTextureVectorNoiseWithSmoothnessNameTextureDimensionsChannelEncoding added in v0.17.0

func NewNoiseTextureVectorNoiseWithSmoothnessNameTextureDimensionsChannelEncoding(smoothness float32, name string, textureDimensions unsafe.Pointer, channelEncoding TextureChannelEncoding) *NoiseTexture

NewNoiseTextureVectorNoiseWithSmoothnessNameTextureDimensionsChannelEncoding initializes a noise texture that creates random directional noise.

func NoiseTextureFromID added in v0.17.0

func NoiseTextureFromID(id objc.ID) *NoiseTexture

NoiseTextureFromID adopts an existing Objective-C object as a NoiseTexture (nil for 0), retaining it and registering a release finalizer.

func (*NoiseTexture) WithHasAlphaValues added in v0.17.0

func (nt *NoiseTexture) WithHasAlphaValues(hasAlphaValues bool) *NoiseTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*NoiseTexture) WithIsCube added in v0.17.0

func (nt *NoiseTexture) WithIsCube(isCube bool) *NoiseTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

type NormalMapTexture added in v0.17.0

type NormalMapTexture struct {
	Texture
}

NormalMapTexture is an idiomatic wrapper over the Objective-C class MDLNormalMapTexture.

It embeds Texture, promoting that type's methods.

A generator of texel data that computes a normal map from a supplied texture.

func NewNormalMapTextureByGeneratingNormalMapWithTextureNameSmoothnessContrast added in v0.17.0

func NewNormalMapTextureByGeneratingNormalMapWithTextureNameSmoothnessContrast(sourceTexture *Texture, name string, smoothness float32, contrast float32) *NormalMapTexture

NewNormalMapTextureByGeneratingNormalMapWithTextureNameSmoothnessContrast initializes a normal map to be generated from the specified texture.

func NormalMapTextureFromID added in v0.17.0

func NormalMapTextureFromID(id objc.ID) *NormalMapTexture

NormalMapTextureFromID adopts an existing Objective-C object as a NormalMapTexture (nil for 0), retaining it and registering a release finalizer.

func (*NormalMapTexture) WithHasAlphaValues added in v0.17.0

func (nmt *NormalMapTexture) WithHasAlphaValues(hasAlphaValues bool) *NormalMapTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*NormalMapTexture) WithIsCube added in v0.17.0

func (nmt *NormalMapTexture) WithIsCube(isCube bool) *NormalMapTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

type OSClockid added in v0.17.0

type OSClockid uint32
const (
	OSClockidTime OSClockid = 32
)

func (OSClockid) String added in v0.17.0

func (e OSClockid) String() string

String returns the OSClockid constant's name, or its numeric form when the value is not a known constant.

type Object added in v0.17.0

type Object struct {
	objref.Handle
}

Object is an idiomatic wrapper over the Objective-C class MDLObject.

Object is an abstract base — you do not construct it directly. Construct one of Camera, Light, Mesh, PackedJointAnimation, Skeleton, VoxelArray and pass it where a Object is accepted.

The base class for objects that are part of a 3D asset, including meshes, cameras, and lights.

func ObjectFromID added in v0.17.0

func ObjectFromID(id objc.ID) *Object

ObjectFromID adopts an existing Objective-C object as a Object (nil for 0), retaining it and registering a release finalizer.

func (*Object) AddChild added in v0.17.0

func (o *Object) AddChild(child *Object)

AddChild adds a child object to this object, creating a container for the object’s children if necessary.

func (*Object) Components added in v0.17.0

func (o *Object) Components() []obj.Object

Components returns allows applications to introspect the components on the objects.

func (*Object) Description added in v0.17.0

func (o *Object) Description() string

Description returns the object's -description text.

func (*Object) Hidden added in v0.17.0

func (o *Object) Hidden() bool

Hidden wraps the corresponding Objective-C method.

func (*Object) Instance added in v0.17.0

func (o *Object) Instance() *Object

Instance returns instance object nil, unless this object refers to original data to be instanced. The original data object can be any MDLObject that does not have a parent. If an MDLAsset has been created from a data file, any original objects parsed from that file will be found in the originals property. A typical use of a original and instance might be to have one original chair MDLObject, and instance six chairs around a table. The transform of each chair would be found on the parent MDLObject, but the various items making up the chair would be found in the original object.

func (*Object) IsEqual added in v0.17.0

func (o *Object) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Object) IsKind added in v0.17.0

func (o *Object) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Object) ObjectAtPath added in v0.17.0

func (o *Object) ObjectAtPath(path string) *Object

ObjectAtPath returns the child object at the specified path.

func (*Object) Parent added in v0.17.0

func (o *Object) Parent() *Object

Parent returns parent object. Nil if no parent. Set to nil when you remove this from an object container inside the parent object.

func (*Object) Path added in v0.17.0

func (o *Object) Path() string

Path returns a string representing a path to the object a path is of the form /path/to/object where the path is formed by concatenating the names of the objects up the parent chain. Requesting a path will force any unnamed objects to became uniquely named. Any characters outside of [A-Z][a-z][0-9][:-_.] will be forced to underscore.

func (*Object) String added in v0.17.0

func (o *Object) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Object) WithHidden added in v0.17.0

func (o *Object) WithHidden(hidden bool) *Object

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*Object) WithInstance added in v0.17.0

func (o *Object) WithInstance(instance ObjectProvider) *Object

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*Object) WithParent added in v0.17.0

func (o *Object) WithParent(parent ObjectProvider) *Object

WithParent sets the parent object that contains this object.

type ObjectContainer added in v0.17.0

type ObjectContainer struct {
	objref.Handle
}

ObjectContainer is an idiomatic wrapper over the Objective-C class MDLObjectContainer.

A default implementation for handling object hierarchy relationships in a 3D asset.

func NewObjectContainer added in v0.17.0

func NewObjectContainer() *ObjectContainer

NewObjectContainer creates a new ObjectContainer.

func ObjectContainerFromID added in v0.17.0

func ObjectContainerFromID(id objc.ID) *ObjectContainer

ObjectContainerFromID adopts an existing Objective-C object as a ObjectContainer (nil for 0), retaining it and registering a release finalizer.

func (*ObjectContainer) Description added in v0.17.0

func (oc *ObjectContainer) Description() string

Description returns the object's -description text.

func (*ObjectContainer) IsEqual added in v0.17.0

func (oc *ObjectContainer) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*ObjectContainer) IsKind added in v0.17.0

func (oc *ObjectContainer) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*ObjectContainer) String added in v0.17.0

func (oc *ObjectContainer) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type ObjectContainerComponent added in v0.17.0

type ObjectContainerComponent interface {
	AddObject(object *Object)
	RemoveObject(object *Object)
	ObjectAtIndexedSubscript(index int) *Object
	Count() int
	Objects() []*Object
}

ObjectContainerComponent is the Go form of the Objective-C protocol MDLObjectContainerComponent.

type ObjectProvider added in v0.17.0

type ObjectProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

ObjectProvider is accepted wherever a MDLObject (or one of its subclasses) is expected.

type PackedJointAnimation added in v0.17.0

type PackedJointAnimation struct {
	Object
}

PackedJointAnimation is an idiomatic wrapper over the Objective-C class MDLPackedJointAnimation.

It embeds Object, promoting that type's methods.

func NewPackedJointAnimationWithNameJointPaths added in v0.17.0

func NewPackedJointAnimationWithNameJointPaths(name string, jointPaths []string) *PackedJointAnimation

NewPackedJointAnimationWithNameJointPaths creates a new PackedJointAnimation.

func PackedJointAnimationFromID added in v0.17.0

func PackedJointAnimationFromID(id objc.ID) *PackedJointAnimation

PackedJointAnimationFromID adopts an existing Objective-C object as a PackedJointAnimation (nil for 0), retaining it and registering a release finalizer.

func (*PackedJointAnimation) JointPaths added in v0.17.0

func (pja *PackedJointAnimation) JointPaths() []string

JointPaths returns the joint paths.

JointPaths returns the collection as a Go slice.

func (*PackedJointAnimation) Rotations added in v0.17.0

Rotations returns the rotations.

func (*PackedJointAnimation) Scales added in v0.17.0

Scales returns the scales.

func (*PackedJointAnimation) Translations added in v0.17.0

func (pja *PackedJointAnimation) Translations() *AnimatedVector3Array

Translations returns the translations.

func (*PackedJointAnimation) WithHidden added in v0.17.0

func (pja *PackedJointAnimation) WithHidden(hidden bool) *PackedJointAnimation

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*PackedJointAnimation) WithInstance added in v0.17.0

func (pja *PackedJointAnimation) WithInstance(instance ObjectProvider) *PackedJointAnimation

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*PackedJointAnimation) WithParent added in v0.17.0

func (pja *PackedJointAnimation) WithParent(parent ObjectProvider) *PackedJointAnimation

WithParent sets the parent object that contains this object.

type PathAssetResolver added in v0.17.0

type PathAssetResolver struct {
	objref.Handle
}

PathAssetResolver is an idiomatic wrapper over the Objective-C class MDLPathAssetResolver.

func NewPathAssetResolverWithPath added in v0.17.0

func NewPathAssetResolverWithPath(path string) *PathAssetResolver

NewPathAssetResolverWithPath creates a new PathAssetResolver.

func PathAssetResolverFromID added in v0.17.0

func PathAssetResolverFromID(id objc.ID) *PathAssetResolver

PathAssetResolverFromID adopts an existing Objective-C object as a PathAssetResolver (nil for 0), retaining it and registering a release finalizer.

func (*PathAssetResolver) Description added in v0.17.0

func (par *PathAssetResolver) Description() string

Description returns the object's -description text.

func (*PathAssetResolver) IsEqual added in v0.17.0

func (par *PathAssetResolver) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*PathAssetResolver) IsKind added in v0.17.0

func (par *PathAssetResolver) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*PathAssetResolver) Path added in v0.17.0

func (par *PathAssetResolver) Path() string

Path returns the path.

func (*PathAssetResolver) String added in v0.17.0

func (par *PathAssetResolver) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*PathAssetResolver) WithPath added in v0.17.0

func (par *PathAssetResolver) WithPath(path string) *PathAssetResolver

WithPath sets the path.

type Perm added in v0.17.0

type Perm int32
const (
	PermReadData           Perm = 2
	PermListDirectory      Perm = 2
	PermWriteData          Perm = 4
	PermAddFile            Perm = 4
	PermExecute            Perm = 8
	PermSearch             Perm = 8
	PermDelete             Perm = 16
	PermAppendData         Perm = 32
	PermAddSubdirectory    Perm = 32
	PermDeleteChild        Perm = 64
	PermReadAttributes     Perm = 128
	PermWriteAttributes    Perm = 256
	PermReadExtattributes  Perm = 512
	PermWriteExtattributes Perm = 1024
	PermReadSecurity       Perm = 2048
	PermWriteSecurity      Perm = 4096
	PermChangeOwner        Perm = 8192
	PermSynchronize        Perm = 1048576
)

func (Perm) String added in v0.17.0

func (e Perm) String() string

String returns the Perm constant's name, or its numeric form when the value is not a known constant.

type PhotometricLight added in v0.17.0

type PhotometricLight struct {
	PhysicallyPlausibleLight
}

PhotometricLight is an idiomatic wrapper over the Objective-C class MDLPhotometricLight.

It embeds PhysicallyPlausibleLight, promoting that type's methods.

A light source whose shape, direction, and intensity of illumination are determined by a photometric profile.

func NewPhotometricLightWithIESProfile added in v0.17.0

func NewPhotometricLightWithIESProfile(url string) *PhotometricLight

NewPhotometricLightWithIESProfile initializes a light from photometry data in the file at the specified URL.

func PhotometricLightFromID added in v0.17.0

func PhotometricLightFromID(id objc.ID) *PhotometricLight

PhotometricLightFromID adopts an existing Objective-C object as a PhotometricLight (nil for 0), retaining it and registering a release finalizer.

func (*PhotometricLight) GenerateCubemapFromLight added in v0.17.0

func (pl *PhotometricLight) GenerateCubemapFromLight(textureSize int)

GenerateCubemapFromLight generates a cube map texture from the light’s photometry data.

func (*PhotometricLight) GenerateSphericalHarmonicsFromLight added in v0.17.0

func (pl *PhotometricLight) GenerateSphericalHarmonicsFromLight(sphericalHarmonicsLevel int)

GenerateSphericalHarmonicsFromLight generates spherical harmonics information based on the light’s photometry data.

func (*PhotometricLight) GenerateTexture added in v0.17.0

func (pl *PhotometricLight) GenerateTexture(textureSize int) *Texture

GenerateTexture generate an IES compliant MDLTexture 1D when the number of horizontal angles is one and the innerConeAngle is < 180 2D when the previous statement fails and innerConeAngle < 89 3D in all other cases the parameter textureSize is the size in pixels of the texture image. For a size of N, 1D generates an Nx1 image, 2D generates an NxN image, 3D generates an Nx(N*6) image (i.e. cubemap).

func (*PhotometricLight) LightCubeMap added in v0.17.0

func (pl *PhotometricLight) LightCubeMap() *Texture

LightCubeMap returns the light cube map.

func (*PhotometricLight) SphericalHarmonicsCoefficients added in v0.17.0

func (pl *PhotometricLight) SphericalHarmonicsCoefficients() []byte

SphericalHarmonicsCoefficients returns the spherical harmonics coefficients.

func (*PhotometricLight) SphericalHarmonicsLevel added in v0.17.0

func (pl *PhotometricLight) SphericalHarmonicsLevel() int

SphericalHarmonicsLevel returns the spherical harmonics level.

func (*PhotometricLight) WithAttenuationEndDistance added in v0.17.0

func (pl *PhotometricLight) WithAttenuationEndDistance(attenuationEndDistance float32) *PhotometricLight

WithAttenuationEndDistance sets the distance from the light source, in units of local coordinate space, at which its illumination becomes zero.

func (*PhotometricLight) WithAttenuationStartDistance added in v0.17.0

func (pl *PhotometricLight) WithAttenuationStartDistance(attenuationStartDistance float32) *PhotometricLight

WithAttenuationStartDistance sets the distance from the light source, in units of local coordinate space, at which its illumination begins to diminish.

func (*PhotometricLight) WithColor added in v0.17.0

WithColor sets the color of the light source.

func (*PhotometricLight) WithColorSpace added in v0.17.0

func (pl *PhotometricLight) WithColorSpace(colorSpace string) *PhotometricLight

WithColorSpace sets the name of the Core Graphics color space to be used for interpreting the light’s color information.

func (*PhotometricLight) WithHidden added in v0.17.0

func (pl *PhotometricLight) WithHidden(hidden bool) *PhotometricLight

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*PhotometricLight) WithInnerConeAngle added in v0.17.0

func (pl *PhotometricLight) WithInnerConeAngle(innerConeAngle float32) *PhotometricLight

WithInnerConeAngle sets the radial angle, in degrees, of the area fully illuminated by the light.

func (*PhotometricLight) WithInstance added in v0.17.0

func (pl *PhotometricLight) WithInstance(instance ObjectProvider) *PhotometricLight

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*PhotometricLight) WithLightType added in v0.17.0

func (pl *PhotometricLight) WithLightType(lightType LightType) *PhotometricLight

WithLightType sets the type of the light.

func (*PhotometricLight) WithLumens added in v0.17.0

func (pl *PhotometricLight) WithLumens(lumens float32) *PhotometricLight

WithLumens sets the total visible intensity of the light source, in lumens.

func (*PhotometricLight) WithOuterConeAngle added in v0.17.0

func (pl *PhotometricLight) WithOuterConeAngle(outerConeAngle float32) *PhotometricLight

WithOuterConeAngle sets the radial angle, in degrees, at which the illumination from a spotlight becomes zero.

func (*PhotometricLight) WithParent added in v0.17.0

func (pl *PhotometricLight) WithParent(parent ObjectProvider) *PhotometricLight

WithParent sets the parent object that contains this object.

type PhysicallyPlausibleLight added in v0.17.0

type PhysicallyPlausibleLight struct {
	Light
}

PhysicallyPlausibleLight is an idiomatic wrapper over the Objective-C class MDLPhysicallyPlausibleLight.

PhysicallyPlausibleLight is an abstract base — you do not construct it directly. Construct one of AreaLight, PhotometricLight and pass it where a PhysicallyPlausibleLight is accepted.

A light source for use in shading models based on real-world physics.

func PhysicallyPlausibleLightFromID added in v0.17.0

func PhysicallyPlausibleLightFromID(id objc.ID) *PhysicallyPlausibleLight

PhysicallyPlausibleLightFromID adopts an existing Objective-C object as a PhysicallyPlausibleLight (nil for 0), retaining it and registering a release finalizer.

func (*PhysicallyPlausibleLight) AttenuationEndDistance added in v0.17.0

func (ppl *PhysicallyPlausibleLight) AttenuationEndDistance() float32

AttenuationEndDistance returns the attenuation end distance.

func (*PhysicallyPlausibleLight) AttenuationStartDistance added in v0.17.0

func (ppl *PhysicallyPlausibleLight) AttenuationStartDistance() float32

AttenuationStartDistance returns the attenuation start distance.

func (*PhysicallyPlausibleLight) Color added in v0.17.0

Color returns the color.

func (*PhysicallyPlausibleLight) InnerConeAngle added in v0.17.0

func (ppl *PhysicallyPlausibleLight) InnerConeAngle() float32

InnerConeAngle returns the inner cone angle.

func (*PhysicallyPlausibleLight) Lumens added in v0.17.0

func (ppl *PhysicallyPlausibleLight) Lumens() float32

Lumens returns the lumens.

func (*PhysicallyPlausibleLight) OuterConeAngle added in v0.17.0

func (ppl *PhysicallyPlausibleLight) OuterConeAngle() float32

OuterConeAngle returns the outer cone angle.

func (*PhysicallyPlausibleLight) SetColorByTemperature added in v0.17.0

func (ppl *PhysicallyPlausibleLight) SetColorByTemperature(temperature float32)

SetColorByTemperature sets the light’s color based on a black-body temperature.

func (*PhysicallyPlausibleLight) WithAttenuationEndDistance added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithAttenuationEndDistance(attenuationEndDistance float32) *PhysicallyPlausibleLight

WithAttenuationEndDistance sets the distance from the light source, in units of local coordinate space, at which its illumination becomes zero.

func (*PhysicallyPlausibleLight) WithAttenuationStartDistance added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithAttenuationStartDistance(attenuationStartDistance float32) *PhysicallyPlausibleLight

WithAttenuationStartDistance sets the distance from the light source, in units of local coordinate space, at which its illumination begins to diminish.

func (*PhysicallyPlausibleLight) WithColor added in v0.17.0

WithColor sets the color of the light source.

func (*PhysicallyPlausibleLight) WithColorSpace added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithColorSpace(colorSpace string) *PhysicallyPlausibleLight

WithColorSpace sets the name of the Core Graphics color space to be used for interpreting the light’s color information.

func (*PhysicallyPlausibleLight) WithHidden added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithHidden(hidden bool) *PhysicallyPlausibleLight

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*PhysicallyPlausibleLight) WithInnerConeAngle added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithInnerConeAngle(innerConeAngle float32) *PhysicallyPlausibleLight

WithInnerConeAngle sets the radial angle, in degrees, of the area fully illuminated by the light.

func (*PhysicallyPlausibleLight) WithInstance added in v0.17.0

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*PhysicallyPlausibleLight) WithLightType added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithLightType(lightType LightType) *PhysicallyPlausibleLight

WithLightType sets the type of the light.

func (*PhysicallyPlausibleLight) WithLumens added in v0.17.0

WithLumens sets the total visible intensity of the light source, in lumens.

func (*PhysicallyPlausibleLight) WithOuterConeAngle added in v0.17.0

func (ppl *PhysicallyPlausibleLight) WithOuterConeAngle(outerConeAngle float32) *PhysicallyPlausibleLight

WithOuterConeAngle sets the radial angle, in degrees, at which the illumination from a spotlight becomes zero.

func (*PhysicallyPlausibleLight) WithParent added in v0.17.0

WithParent sets the parent object that contains this object.

type PhysicallyPlausibleLightProvider added in v0.17.0

type PhysicallyPlausibleLightProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

PhysicallyPlausibleLightProvider is accepted wherever a MDLPhysicallyPlausibleLight (or one of its subclasses) is expected.

type PhysicallyPlausibleScatteringFunction added in v0.17.0

type PhysicallyPlausibleScatteringFunction struct {
	ScatteringFunction
}

PhysicallyPlausibleScatteringFunction is an idiomatic wrapper over the Objective-C class MDLPhysicallyPlausibleScatteringFunction.

It embeds ScatteringFunction, promoting that type's methods.

A set of material properties that describes a physically realistic shading model for materials.

func NewPhysicallyPlausibleScatteringFunction added in v0.17.0

func NewPhysicallyPlausibleScatteringFunction() *PhysicallyPlausibleScatteringFunction

NewPhysicallyPlausibleScatteringFunction creates a new PhysicallyPlausibleScatteringFunction.

func PhysicallyPlausibleScatteringFunctionFromID added in v0.17.0

func PhysicallyPlausibleScatteringFunctionFromID(id objc.ID) *PhysicallyPlausibleScatteringFunction

PhysicallyPlausibleScatteringFunctionFromID adopts an existing Objective-C object as a PhysicallyPlausibleScatteringFunction (nil for 0), retaining it and registering a release finalizer.

func (*PhysicallyPlausibleScatteringFunction) Anisotropic added in v0.17.0

Anisotropic returns the anisotropic.

func (*PhysicallyPlausibleScatteringFunction) AnisotropicRotation added in v0.17.0

func (ppsf *PhysicallyPlausibleScatteringFunction) AnisotropicRotation() *MaterialProperty

AnisotropicRotation returns the anisotropic rotation.

func (*PhysicallyPlausibleScatteringFunction) Clearcoat added in v0.17.0

Clearcoat returns the clearcoat.

func (*PhysicallyPlausibleScatteringFunction) ClearcoatGloss added in v0.17.0

ClearcoatGloss returns the clearcoat gloss.

func (*PhysicallyPlausibleScatteringFunction) Metallic added in v0.17.0

Metallic returns the metallic.

func (*PhysicallyPlausibleScatteringFunction) Roughness added in v0.17.0

Roughness returns the roughness.

func (*PhysicallyPlausibleScatteringFunction) Sheen added in v0.17.0

Sheen returns the sheen.

func (*PhysicallyPlausibleScatteringFunction) SheenTint added in v0.17.0

SheenTint returns the sheen tint.

func (*PhysicallyPlausibleScatteringFunction) SpecularAmount added in v0.17.0

SpecularAmount returns the specular amount.

func (*PhysicallyPlausibleScatteringFunction) SpecularTint added in v0.17.0

SpecularTint returns the specular tint.

func (*PhysicallyPlausibleScatteringFunction) Subsurface added in v0.17.0

Subsurface returns the subsurface.

func (*PhysicallyPlausibleScatteringFunction) WithName added in v0.17.0

WithName sets a descriptive name for the scattering function.

type ProbePlacement added in v0.17.0

type ProbePlacement int64

Options affecting automatic placement of light probes in a scene, used with the placeLightProbesWithDensity:heuristic:usingIrradianceDataSource: method.

const (
	// An option to place light probes at each unit coordinate in a three-dimensional grid that evenly divides the region being evaluated.
	ProbePlacementUniformGrid ProbePlacement = 0
	// An option to examine the lighting conditions at various positions in the scene being evaluated, then place light probes only at the locations where each contributes optimally to scene lighting.
	ProbePlacementIrradianceDistribution ProbePlacement = 1
)

func (ProbePlacement) String added in v0.17.0

func (e ProbePlacement) String() string

String returns the ProbePlacement constant's name, or its numeric form when the value is not a known constant.

type PtrauthKey added in v0.17.0

type PtrauthKey int32
const (
	Ptrauth_key_none                     PtrauthKey = -1
	Ptrauth_key_asia                     PtrauthKey = 0
	Ptrauth_key_asib                     PtrauthKey = 1
	Ptrauth_key_asda                     PtrauthKey = 2
	Ptrauth_key_asdb                     PtrauthKey = 3
	Ptrauth_key_process_independent_code PtrauthKey = 0
	Ptrauth_key_process_dependent_code   PtrauthKey = 1
	Ptrauth_key_process_independent_data PtrauthKey = 2
	Ptrauth_key_process_dependent_data   PtrauthKey = 3
	Ptrauth_key_return_address           PtrauthKey = 1
	Ptrauth_key_frame_pointer            PtrauthKey = 3
	Ptrauth_key_function_pointer         PtrauthKey = 0
	Ptrauth_key_block_function           PtrauthKey = 0
	Ptrauth_key_cxx_vtable_pointer       PtrauthKey = 2
	Ptrauth_key_method_list_pointer      PtrauthKey = 2
	Ptrauth_key_objc_isa_pointer         PtrauthKey = 2
	Ptrauth_key_objc_super_pointer       PtrauthKey = 2
	Ptrauth_key_objc_sel_pointer         PtrauthKey = 3
	Ptrauth_key_objc_class_ro_pointer    PtrauthKey = 2
	Ptrauth_key_block_descriptor_pointer PtrauthKey = 2
	Ptrauth_key_init_fini_pointer        PtrauthKey = 0
)

func (PtrauthKey) String added in v0.17.0

func (e PtrauthKey) String() string

String returns the PtrauthKey constant's name, or its numeric form when the value is not a known constant.

type QosClass added in v0.17.0

type QosClass uint32
const (
	QosClassUserInteractive QosClass = 33
	QosClassUserInitiated   QosClass = 25
	QosClassDefault         QosClass = 21
	QosClassUtility         QosClass = 17
	QosClassBackground      QosClass = 9
	QosClassUnspecified     QosClass = 0
)

func (QosClass) String added in v0.17.0

func (e QosClass) String() string

String returns the QosClass constant's name, or its numeric form when the value is not a known constant.

type RelativeAssetResolver added in v0.17.0

type RelativeAssetResolver struct {
	objref.Handle
}

RelativeAssetResolver is an idiomatic wrapper over the Objective-C class MDLRelativeAssetResolver.

func NewRelativeAssetResolverWithAsset added in v0.17.0

func NewRelativeAssetResolverWithAsset(asset *Asset) *RelativeAssetResolver

NewRelativeAssetResolverWithAsset creates a new RelativeAssetResolver.

func RelativeAssetResolverFromID added in v0.17.0

func RelativeAssetResolverFromID(id objc.ID) *RelativeAssetResolver

RelativeAssetResolverFromID adopts an existing Objective-C object as a RelativeAssetResolver (nil for 0), retaining it and registering a release finalizer.

func (*RelativeAssetResolver) Asset added in v0.17.0

func (rar *RelativeAssetResolver) Asset() *Asset

Asset returns the asset.

func (*RelativeAssetResolver) Description added in v0.17.0

func (rar *RelativeAssetResolver) Description() string

Description returns the object's -description text.

func (*RelativeAssetResolver) IsEqual added in v0.17.0

func (rar *RelativeAssetResolver) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*RelativeAssetResolver) IsKind added in v0.17.0

func (rar *RelativeAssetResolver) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*RelativeAssetResolver) String added in v0.17.0

func (rar *RelativeAssetResolver) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*RelativeAssetResolver) WithAsset added in v0.17.0

func (rar *RelativeAssetResolver) WithAsset(asset *Asset) *RelativeAssetResolver

WithAsset sets the asset.

type ScatteringFunction added in v0.17.0

type ScatteringFunction struct {
	objref.Handle
}

ScatteringFunction is an idiomatic wrapper over the Objective-C class MDLScatteringFunction.

ScatteringFunction is an abstract base — you do not construct it directly. Construct one of PhysicallyPlausibleScatteringFunction and pass it where a ScatteringFunction is accepted.

A set of material properties that describes a basic shading model for materials, and the superclass for more complex shading models.

func ScatteringFunctionFromID added in v0.17.0

func ScatteringFunctionFromID(id objc.ID) *ScatteringFunction

ScatteringFunctionFromID adopts an existing Objective-C object as a ScatteringFunction (nil for 0), retaining it and registering a release finalizer.

func (*ScatteringFunction) AmbientOcclusion added in v0.17.0

func (sf *ScatteringFunction) AmbientOcclusion() *MaterialProperty

AmbientOcclusion returns the ambient occlusion.

func (*ScatteringFunction) AmbientOcclusionScale added in v0.17.0

func (sf *ScatteringFunction) AmbientOcclusionScale() *MaterialProperty

AmbientOcclusionScale returns the ambient occlusion scale.

func (*ScatteringFunction) BaseColor added in v0.17.0

func (sf *ScatteringFunction) BaseColor() *MaterialProperty

BaseColor returns the base color.

func (*ScatteringFunction) Description added in v0.17.0

func (sf *ScatteringFunction) Description() string

Description returns the object's -description text.

func (*ScatteringFunction) Emission added in v0.17.0

func (sf *ScatteringFunction) Emission() *MaterialProperty

Emission returns the emission.

func (*ScatteringFunction) InterfaceIndexOfRefraction added in v0.17.0

func (sf *ScatteringFunction) InterfaceIndexOfRefraction() *MaterialProperty

InterfaceIndexOfRefraction returns the interface index of refraction.

func (*ScatteringFunction) IsEqual added in v0.17.0

func (sf *ScatteringFunction) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*ScatteringFunction) IsKind added in v0.17.0

func (sf *ScatteringFunction) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*ScatteringFunction) MaterialIndexOfRefraction added in v0.17.0

func (sf *ScatteringFunction) MaterialIndexOfRefraction() *MaterialProperty

MaterialIndexOfRefraction returns the material index of refraction.

func (*ScatteringFunction) Name added in v0.17.0

func (sf *ScatteringFunction) Name() string

Name returns the name.

func (*ScatteringFunction) Normal added in v0.17.0

func (sf *ScatteringFunction) Normal() *MaterialProperty

Normal returns the normal.

func (*ScatteringFunction) Specular added in v0.17.0

func (sf *ScatteringFunction) Specular() *MaterialProperty

Specular returns the specular.

func (*ScatteringFunction) String added in v0.17.0

func (sf *ScatteringFunction) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*ScatteringFunction) WithName added in v0.17.0

func (sf *ScatteringFunction) WithName(name string) *ScatteringFunction

WithName sets a descriptive name for the scattering function.

type ScatteringFunctionProvider added in v0.17.0

type ScatteringFunctionProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

ScatteringFunctionProvider is accepted wherever a MDLScatteringFunction (or one of its subclasses) is expected.

type Skeleton added in v0.17.0

type Skeleton struct {
	Object
}

Skeleton is an idiomatic wrapper over the Objective-C class MDLSkeleton.

It embeds Object, promoting that type's methods.

func NewSkeletonWithNameJointPaths added in v0.17.0

func NewSkeletonWithNameJointPaths(name string, jointPaths []string) *Skeleton

NewSkeletonWithNameJointPaths creates a new Skeleton.

func SkeletonFromID added in v0.17.0

func SkeletonFromID(id objc.ID) *Skeleton

SkeletonFromID adopts an existing Objective-C object as a Skeleton (nil for 0), retaining it and registering a release finalizer.

func (*Skeleton) JointBindTransforms added in v0.17.0

func (s *Skeleton) JointBindTransforms() *Matrix4x4Array

JointBindTransforms returns the joint bind transforms.

func (*Skeleton) JointPaths added in v0.17.0

func (s *Skeleton) JointPaths() []string

JointPaths returns the joint paths.

JointPaths returns the collection as a Go slice.

func (*Skeleton) JointRestTransforms added in v0.17.0

func (s *Skeleton) JointRestTransforms() *Matrix4x4Array

JointRestTransforms returns the joint rest transforms.

func (*Skeleton) WithHidden added in v0.17.0

func (s *Skeleton) WithHidden(hidden bool) *Skeleton

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*Skeleton) WithInstance added in v0.17.0

func (s *Skeleton) WithInstance(instance ObjectProvider) *Skeleton

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*Skeleton) WithParent added in v0.17.0

func (s *Skeleton) WithParent(parent ObjectProvider) *Skeleton

WithParent sets the parent object that contains this object.

type SkyCubeTexture added in v0.17.0

type SkyCubeTexture struct {
	Texture
}

SkyCubeTexture is an idiomatic wrapper over the Objective-C class MDLSkyCubeTexture.

It embeds Texture, promoting that type's methods.

A generator of texel data that creates cube textures using a physically realistic simulation of the sunlit sky.

func NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationSunAzimuthUpperAtmosphereScatteringGroundAlbedo added in v0.17.0

func NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationSunAzimuthUpperAtmosphereScatteringGroundAlbedo(name string, channelEncoding TextureChannelEncoding, textureDimensions unsafe.Pointer, turbidity float32, sunElevation float32, sunAzimuth float32, upperAtmosphereScattering float32, groundAlbedo float32) *SkyCubeTexture

NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationSunAzimuthUpperAtmosphereScatteringGroundAlbedo creates a new SkyCubeTexture.

func NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationUpperAtmosphereScatteringGroundAlbedo added in v0.17.0

func NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationUpperAtmosphereScatteringGroundAlbedo(name string, channelEncoding TextureChannelEncoding, textureDimensions unsafe.Pointer, turbidity float32, sunElevation float32, upperAtmosphereScattering float32, groundAlbedo float32) *SkyCubeTexture

NewSkyCubeTextureWithNameChannelEncodingTextureDimensionsTurbiditySunElevationUpperAtmosphereScatteringGroundAlbedo initializes a sky cube texture object with the specified parameters.

func SkyCubeTextureFromID added in v0.17.0

func SkyCubeTextureFromID(id objc.ID) *SkyCubeTexture

SkyCubeTextureFromID adopts an existing Objective-C object as a SkyCubeTexture (nil for 0), retaining it and registering a release finalizer.

func (*SkyCubeTexture) Brightness added in v0.17.0

func (sct *SkyCubeTexture) Brightness() float32

Brightness returns the brightness.

func (*SkyCubeTexture) Contrast added in v0.17.0

func (sct *SkyCubeTexture) Contrast() float32

Contrast returns the contrast.

func (*SkyCubeTexture) Exposure added in v0.17.0

func (sct *SkyCubeTexture) Exposure() float32

Exposure returns the exposure.

func (*SkyCubeTexture) Gamma added in v0.17.0

func (sct *SkyCubeTexture) Gamma() float32

Gamma returns the gamma.

func (*SkyCubeTexture) GroundAlbedo added in v0.17.0

func (sct *SkyCubeTexture) GroundAlbedo() float32

GroundAlbedo returns the ground albedo.

func (*SkyCubeTexture) GroundColor added in v0.17.0

func (sct *SkyCubeTexture) GroundColor() coregraphics.CGColorRef

GroundColor returns the ground color.

func (*SkyCubeTexture) HighDynamicRangeCompression added in v0.18.0

func (sct *SkyCubeTexture) HighDynamicRangeCompression() unsafe.Pointer

HighDynamicRangeCompression returns the high dynamic range compression.

func (*SkyCubeTexture) HorizonElevation added in v0.17.0

func (sct *SkyCubeTexture) HorizonElevation() float32

HorizonElevation returns the horizon elevation.

func (*SkyCubeTexture) Saturation added in v0.17.0

func (sct *SkyCubeTexture) Saturation() float32

Saturation returns the saturation.

func (*SkyCubeTexture) SunAzimuth added in v0.17.0

func (sct *SkyCubeTexture) SunAzimuth() float32

SunAzimuth returns the sun azimuth.

func (*SkyCubeTexture) SunElevation added in v0.17.0

func (sct *SkyCubeTexture) SunElevation() float32

SunElevation returns the sun elevation.

func (*SkyCubeTexture) Turbidity added in v0.17.0

func (sct *SkyCubeTexture) Turbidity() float32

Turbidity returns the turbidity.

func (*SkyCubeTexture) UpdateTexture added in v0.17.0

func (sct *SkyCubeTexture) UpdateTexture()

UpdateTexture generates new texel data matching the current sky parameters.

func (*SkyCubeTexture) UpperAtmosphereScattering added in v0.17.0

func (sct *SkyCubeTexture) UpperAtmosphereScattering() float32

UpperAtmosphereScattering returns the upper atmosphere scattering.

func (*SkyCubeTexture) WithBrightness added in v0.17.0

func (sct *SkyCubeTexture) WithBrightness(brightness float32) *SkyCubeTexture

WithBrightness sets the amount of brightness enhancement to apply during tone mapping.

func (*SkyCubeTexture) WithContrast added in v0.17.0

func (sct *SkyCubeTexture) WithContrast(contrast float32) *SkyCubeTexture

WithContrast sets the amount of contrast enhancement to apply during tone mapping.

func (*SkyCubeTexture) WithExposure added in v0.17.0

func (sct *SkyCubeTexture) WithExposure(exposure float32) *SkyCubeTexture

WithExposure sets the amount of exposure compensation to apply during tone mapping.

func (*SkyCubeTexture) WithGamma added in v0.17.0

func (sct *SkyCubeTexture) WithGamma(gamma float32) *SkyCubeTexture

WithGamma sets the amount of gamma correction to apply during tone mapping.

func (*SkyCubeTexture) WithGroundAlbedo added in v0.17.0

func (sct *SkyCubeTexture) WithGroundAlbedo(groundAlbedo float32) *SkyCubeTexture

WithGroundAlbedo sets a factor that influences the clarity of the simulated sky.

func (*SkyCubeTexture) WithGroundColor added in v0.17.0

func (sct *SkyCubeTexture) WithGroundColor(groundColor coregraphics.CGColorRef) *SkyCubeTexture

WithGroundColor sets the color of the simulated ground.

func (*SkyCubeTexture) WithHasAlphaValues added in v0.17.0

func (sct *SkyCubeTexture) WithHasAlphaValues(hasAlphaValues bool) *SkyCubeTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*SkyCubeTexture) WithHighDynamicRangeCompression added in v0.17.0

func (sct *SkyCubeTexture) WithHighDynamicRangeCompression(highDynamicRangeCompression unsafe.Pointer) *SkyCubeTexture

WithHighDynamicRangeCompression sets two parameters that determine the brightness compression curve for colors in the texture image.

func (*SkyCubeTexture) WithHorizonElevation added in v0.17.0

func (sct *SkyCubeTexture) WithHorizonElevation(horizonElevation float32) *SkyCubeTexture

WithHorizonElevation sets the angle, in radians relative to center, below which to render the ground color.

func (*SkyCubeTexture) WithIsCube added in v0.17.0

func (sct *SkyCubeTexture) WithIsCube(isCube bool) *SkyCubeTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

func (*SkyCubeTexture) WithSaturation added in v0.17.0

func (sct *SkyCubeTexture) WithSaturation(saturation float32) *SkyCubeTexture

WithSaturation sets the amount of saturation enhancement to apply during tone mapping.

func (*SkyCubeTexture) WithSunAzimuth added in v0.17.0

func (sct *SkyCubeTexture) WithSunAzimuth(sunAzimuth float32) *SkyCubeTexture

WithSunAzimuth sets the sun azimuth.

func (*SkyCubeTexture) WithSunElevation added in v0.17.0

func (sct *SkyCubeTexture) WithSunElevation(sunElevation float32) *SkyCubeTexture

WithSunElevation sets the sun’s position in the simulated sky.

func (*SkyCubeTexture) WithTurbidity added in v0.17.0

func (sct *SkyCubeTexture) WithTurbidity(turbidity float32) *SkyCubeTexture

WithTurbidity sets the cloudiness or haziness of the simulated sky.

func (*SkyCubeTexture) WithUpperAtmosphereScattering added in v0.17.0

func (sct *SkyCubeTexture) WithUpperAtmosphereScattering(upperAtmosphereScattering float32) *SkyCubeTexture

WithUpperAtmosphereScattering sets a factor that influences the color of the simulated sky.

type StereoscopicCamera added in v0.17.0

type StereoscopicCamera struct {
	Camera
}

StereoscopicCamera is an idiomatic wrapper over the Objective-C class MDLStereoscopicCamera.

It embeds Camera, promoting that type's methods.

A point of view for rendering a stereoscopic display of a 3D scene.

func NewStereoscopicCamera added in v0.17.0

func NewStereoscopicCamera() *StereoscopicCamera

NewStereoscopicCamera creates a new StereoscopicCamera.

func StereoscopicCameraFromID added in v0.17.0

func StereoscopicCameraFromID(id objc.ID) *StereoscopicCamera

StereoscopicCameraFromID adopts an existing Objective-C object as a StereoscopicCamera (nil for 0), retaining it and registering a release finalizer.

func (*StereoscopicCamera) InterPupillaryDistance added in v0.17.0

func (sc *StereoscopicCamera) InterPupillaryDistance() float32

InterPupillaryDistance returns inter-pupillary distance in mm. Default is 63mm.

func (*StereoscopicCamera) LeftProjectionMatrix added in v0.18.0

func (sc *StereoscopicCamera) LeftProjectionMatrix() unsafe.Pointer

LeftProjectionMatrix returns the left projection matrix.

func (*StereoscopicCamera) LeftVergence added in v0.17.0

func (sc *StereoscopicCamera) LeftVergence() float32

LeftVergence returns the left vergence.

func (*StereoscopicCamera) LeftViewMatrix added in v0.18.0

func (sc *StereoscopicCamera) LeftViewMatrix() unsafe.Pointer

LeftViewMatrix returns convenience utilities to create view and projection matrices. The view matrix calculations requires that the world to meters conversion scale be set.

func (*StereoscopicCamera) Overlap added in v0.17.0

func (sc *StereoscopicCamera) Overlap() float32

Overlap returns the amount, as a percentage of image width to offset an image towards the other camera. This value is used in a stereo grade to enhance or reduce the intensity of the stereoscopic effect

func (*StereoscopicCamera) RightProjectionMatrix added in v0.18.0

func (sc *StereoscopicCamera) RightProjectionMatrix() unsafe.Pointer

RightProjectionMatrix returns the right projection matrix.

func (*StereoscopicCamera) RightVergence added in v0.17.0

func (sc *StereoscopicCamera) RightVergence() float32

RightVergence returns the right vergence.

func (*StereoscopicCamera) RightViewMatrix added in v0.18.0

func (sc *StereoscopicCamera) RightViewMatrix() unsafe.Pointer

RightViewMatrix returns the right view matrix.

func (*StereoscopicCamera) WithApertureBladeCount added in v0.17.0

func (sc *StereoscopicCamera) WithApertureBladeCount(apertureBladeCount int) *StereoscopicCamera

WithApertureBladeCount sets the number of blades in the camera’s simulated aperture.

func (*StereoscopicCamera) WithBarrelDistortion added in v0.17.0

func (sc *StereoscopicCamera) WithBarrelDistortion(barrelDistortion float32) *StereoscopicCamera

WithBarrelDistortion sets the first coefficient for determining the radial distortion applied to pixels rendered using the camera.

func (*StereoscopicCamera) WithChromaticAberration added in v0.17.0

func (sc *StereoscopicCamera) WithChromaticAberration(chromaticAberration float32) *StereoscopicCamera

WithChromaticAberration sets the amount of radial color shift around the edges of an image rendered using the camera.

func (*StereoscopicCamera) WithExposure added in v0.17.0

func (sc *StereoscopicCamera) WithExposure(exposure unsafe.Pointer) *StereoscopicCamera

WithExposure sets red, green, and blue factors that scale each color channel in the camera’s image.

func (*StereoscopicCamera) WithExposureCompression added in v0.17.0

func (sc *StereoscopicCamera) WithExposureCompression(exposureCompression unsafe.Pointer) *StereoscopicCamera

WithExposureCompression sets two parameters that determine the brightness compression curve for colors in the camera’s image.

func (*StereoscopicCamera) WithFStop added in v0.17.0

func (sc *StereoscopicCamera) WithFStop(fStop float32) *StereoscopicCamera

WithFStop sets the relative aperture ratio of the camera’s simulated lens.

func (*StereoscopicCamera) WithFarVisibilityDistance added in v0.17.0

func (sc *StereoscopicCamera) WithFarVisibilityDistance(farVisibilityDistance float32) *StereoscopicCamera

WithFarVisibilityDistance sets the camera’s far depth limit.

func (*StereoscopicCamera) WithFieldOfView added in v0.17.0

func (sc *StereoscopicCamera) WithFieldOfView(fieldOfView float32) *StereoscopicCamera

WithFieldOfView sets the camera’s field of view, in degrees.

func (*StereoscopicCamera) WithFisheyeDistortion added in v0.17.0

func (sc *StereoscopicCamera) WithFisheyeDistortion(fisheyeDistortion float32) *StereoscopicCamera

WithFisheyeDistortion sets the second coefficient for determining the radial distortion applied to pixels rendered using the camera.

func (*StereoscopicCamera) WithFlash added in v0.17.0

func (sc *StereoscopicCamera) WithFlash(flash unsafe.Pointer) *StereoscopicCamera

WithFlash sets red, green, and blue factors to be used in brightening darker areas of the camera’s image.

func (*StereoscopicCamera) WithFocalLength added in v0.17.0

func (sc *StereoscopicCamera) WithFocalLength(focalLength float32) *StereoscopicCamera

WithFocalLength sets the focal length, in millimeters, of the camera’s simulated lens.

func (*StereoscopicCamera) WithFocusDistance added in v0.17.0

func (sc *StereoscopicCamera) WithFocusDistance(focusDistance float32) *StereoscopicCamera

WithFocusDistance sets the distance, in meters, at which the lens is focused.

func (*StereoscopicCamera) WithHidden added in v0.17.0

func (sc *StereoscopicCamera) WithHidden(hidden bool) *StereoscopicCamera

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*StereoscopicCamera) WithInstance added in v0.17.0

func (sc *StereoscopicCamera) WithInstance(instance ObjectProvider) *StereoscopicCamera

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*StereoscopicCamera) WithInterPupillaryDistance added in v0.17.0

func (sc *StereoscopicCamera) WithInterPupillaryDistance(interPupillaryDistance float32) *StereoscopicCamera

WithInterPupillaryDistance sets the distance, in millimeters, between the stereoscopic camera’s two viewpoints.

func (*StereoscopicCamera) WithLeftVergence added in v0.17.0

func (sc *StereoscopicCamera) WithLeftVergence(leftVergence float32) *StereoscopicCamera

WithLeftVergence sets the angle, in degrees, at which the camera’s left viewpoint faces toward a central focal point.

func (*StereoscopicCamera) WithMaximumCircleOfConfusion added in v0.17.0

func (sc *StereoscopicCamera) WithMaximumCircleOfConfusion(maximumCircleOfConfusion float32) *StereoscopicCamera

WithMaximumCircleOfConfusion sets the maximum diameter, in millimeters on the imaging plane, at which light from a point source should appear in an image rendered using the camera.

func (*StereoscopicCamera) WithNearVisibilityDistance added in v0.17.0

func (sc *StereoscopicCamera) WithNearVisibilityDistance(nearVisibilityDistance float32) *StereoscopicCamera

WithNearVisibilityDistance sets the camera’s near depth limit.

func (*StereoscopicCamera) WithOpticalVignetting added in v0.17.0

func (sc *StereoscopicCamera) WithOpticalVignetting(opticalVignetting float32) *StereoscopicCamera

WithOpticalVignetting sets the amount of radial light attenuation around the edges of an image rendered using the camera.

func (*StereoscopicCamera) WithOverlap added in v0.17.0

func (sc *StereoscopicCamera) WithOverlap(overlap float32) *StereoscopicCamera

WithOverlap sets the amount, as a fraction of image width, by which the images from the camera’s two viewpoints overlap.

func (*StereoscopicCamera) WithParent added in v0.17.0

func (sc *StereoscopicCamera) WithParent(parent ObjectProvider) *StereoscopicCamera

WithParent sets the parent object that contains this object.

func (*StereoscopicCamera) WithProjection added in v0.17.0

func (sc *StereoscopicCamera) WithProjection(projection CameraProjection) *StereoscopicCamera

WithProjection sets the style of projection transform used by the camera.

func (*StereoscopicCamera) WithRightVergence added in v0.17.0

func (sc *StereoscopicCamera) WithRightVergence(rightVergence float32) *StereoscopicCamera

WithRightVergence sets the angle, in degrees, at which the camera’s right viewpoint faces toward a central focal point.

func (*StereoscopicCamera) WithSensorAspect added in v0.17.0

func (sc *StereoscopicCamera) WithSensorAspect(sensorAspect float32) *StereoscopicCamera

WithSensorAspect sets the ratio of width to height for the camera’s simulated imaging surface.

func (*StereoscopicCamera) WithSensorEnlargement added in v0.17.0

func (sc *StereoscopicCamera) WithSensorEnlargement(sensorEnlargement unsafe.Pointer) *StereoscopicCamera

WithSensorEnlargement sets the horizontal and vertical scale factors that determine the active region of the sensor.

func (*StereoscopicCamera) WithSensorShift added in v0.17.0

func (sc *StereoscopicCamera) WithSensorShift(sensorShift unsafe.Pointer) *StereoscopicCamera

WithSensorShift sets the horizontal and vertical offsets, in millimeters, of the center of the camera image relative to the center of the simulated lens.

func (*StereoscopicCamera) WithSensorVerticalAperture added in v0.17.0

func (sc *StereoscopicCamera) WithSensorVerticalAperture(sensorVerticalAperture float32) *StereoscopicCamera

WithSensorVerticalAperture sets the height, in millimeters, of the camera’s simulated imaging surface.

func (*StereoscopicCamera) WithShutterOpenInterval added in v0.17.0

func (sc *StereoscopicCamera) WithShutterOpenInterval(shutterOpenInterval float64) *StereoscopicCamera

WithShutterOpenInterval sets the duration, in seconds, for which the camera’s simulated shutter is open during each frame.

func (*StereoscopicCamera) WithWorldToMetersConversionScale added in v0.17.0

func (sc *StereoscopicCamera) WithWorldToMetersConversionScale(worldToMetersConversionScale float32) *StereoscopicCamera

WithWorldToMetersConversionScale sets the scale factor to meters from the world coordinate system containing the camera.

type Submesh added in v0.17.0

type Submesh struct {
	objref.Handle
}

Submesh is an idiomatic wrapper over the Objective-C class MDLSubmesh.

A container for index buffer data and material information to be used in rendering all or part of a 3D object.

func NewSubmeshWithMDLSubmeshIndexTypeGeometryType added in v0.17.0

func NewSubmeshWithMDLSubmeshIndexTypeGeometryType(submesh *Submesh, indexType IndexBitDepth, geometryType GeometryType) *Submesh

NewSubmeshWithMDLSubmeshIndexTypeGeometryType initializes a submesh by copying or converting another submesh.

func SubmeshFromID added in v0.17.0

func SubmeshFromID(id objc.ID) *Submesh

SubmeshFromID adopts an existing Objective-C object as a Submesh (nil for 0), retaining it and registering a release finalizer.

func (*Submesh) Description added in v0.17.0

func (s *Submesh) Description() string

Description returns the object's -description text.

func (*Submesh) GeometryType added in v0.17.0

func (s *Submesh) GeometryType() GeometryType

GeometryType returns type of primitive that vertices referenced by the indexBuffer are assembled into

func (*Submesh) IndexCount added in v0.17.0

func (s *Submesh) IndexCount() int

IndexCount returns number of indices in the indexBuffer

func (*Submesh) IndexType added in v0.17.0

func (s *Submesh) IndexType() IndexBitDepth

IndexType returns data type of indices in indexBuffer Support 8, 16, and 32 bit unsigned integer values

func (*Submesh) IsEqual added in v0.17.0

func (s *Submesh) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Submesh) IsKind added in v0.17.0

func (s *Submesh) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Submesh) Material added in v0.17.0

func (s *Submesh) Material() *Material

Material returns material to apply when rendering this object

func (*Submesh) Name added in v0.17.0

func (s *Submesh) Name() string

Name returns identifying name for this object

func (*Submesh) String added in v0.17.0

func (s *Submesh) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Submesh) Topology added in v0.17.0

func (s *Submesh) Topology() *SubmeshTopology

Topology returns topology data structure for use with MDLGeometryTypeVariableTopology ignored for geometry types other than MDLGeometryTypeVariableTopology. A submesh of type MDLGeometryTypeVariableTopology with no topology data is an empty submesh.

func (*Submesh) WithMaterial added in v0.17.0

func (s *Submesh) WithMaterial(material *Material) *Submesh

WithMaterial sets an object that describes the intended surface appearance of the submesh for rendering.

func (*Submesh) WithName added in v0.17.0

func (s *Submesh) WithName(name string) *Submesh

WithName sets a descriptive name for the submesh.

func (*Submesh) WithTopology added in v0.17.0

func (s *Submesh) WithTopology(topology *SubmeshTopology) *Submesh

WithTopology sets a description of how the non-uniform layout of the submesh’s index buffer defines the shape of the mesh.

type SubmeshTopology added in v0.17.0

type SubmeshTopology struct {
	objref.Handle
}

SubmeshTopology is an idiomatic wrapper over the Objective-C class MDLSubmeshTopology.

A description of how a submesh’s index buffer data is arranged and how that arrangement should be used to produce the submesh’s intended 3D shape.

func NewSubmeshTopologyWithSubmesh added in v0.17.0

func NewSubmeshTopologyWithSubmesh(submesh *Submesh) *SubmeshTopology

NewSubmeshTopologyWithSubmesh create a topology object corresponding to the topology in the submesh

func SubmeshTopologyFromID added in v0.17.0

func SubmeshTopologyFromID(id objc.ID) *SubmeshTopology

SubmeshTopologyFromID adopts an existing Objective-C object as a SubmeshTopology (nil for 0), retaining it and registering a release finalizer.

func (*SubmeshTopology) Description added in v0.17.0

func (st *SubmeshTopology) Description() string

Description returns the object's -description text.

func (*SubmeshTopology) EdgeCreaseCount added in v0.17.0

func (st *SubmeshTopology) EdgeCreaseCount() int

EdgeCreaseCount returns the number of edge creases encoded in edgeCreases

func (*SubmeshTopology) FaceCount added in v0.17.0

func (st *SubmeshTopology) FaceCount() int

FaceCount returns the number of faces encoded in faceTopologyBuffer

func (*SubmeshTopology) HoleCount added in v0.17.0

func (st *SubmeshTopology) HoleCount() int

HoleCount returns the number of holes encoded in holes

func (*SubmeshTopology) IsEqual added in v0.17.0

func (st *SubmeshTopology) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*SubmeshTopology) IsKind added in v0.17.0

func (st *SubmeshTopology) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*SubmeshTopology) String added in v0.17.0

func (st *SubmeshTopology) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*SubmeshTopology) VertexCreaseCount added in v0.17.0

func (st *SubmeshTopology) VertexCreaseCount() int

VertexCreaseCount returns the number of vertex creases encoded in vertexCreases

func (*SubmeshTopology) WithEdgeCreaseCount added in v0.17.0

func (st *SubmeshTopology) WithEdgeCreaseCount(edgeCreaseCount int) *SubmeshTopology

WithEdgeCreaseCount sets the number of entries in the edge creases buffers.

func (*SubmeshTopology) WithFaceCount added in v0.17.0

func (st *SubmeshTopology) WithFaceCount(faceCount int) *SubmeshTopology

WithFaceCount sets the number of faces in the submesh’s face topology buffer.

func (*SubmeshTopology) WithHoleCount added in v0.17.0

func (st *SubmeshTopology) WithHoleCount(holeCount int) *SubmeshTopology

WithHoleCount sets the number of entries in the holes buffer.

func (*SubmeshTopology) WithVertexCreaseCount added in v0.17.0

func (st *SubmeshTopology) WithVertexCreaseCount(vertexCreaseCount int) *SubmeshTopology

WithVertexCreaseCount sets the number of entries in the vertex creases buffers.

type Tag added in v0.17.0

type Tag int32
const (
	TagUndefinedTag  Tag = 0
	TagExtendedAllow Tag = 1
	TagExtendedDeny  Tag = 2
)

func (Tag) String added in v0.17.0

func (e Tag) String() string

String returns the Tag constant's name, or its numeric form when the value is not a known constant.

type Texture added in v0.17.0

type Texture struct {
	objref.Handle
}

Texture is an idiomatic wrapper over the Objective-C class MDLTexture.

Texture is an abstract base — you do not construct it directly. Construct one of CheckerboardTexture, ColorSwatchTexture, NoiseTexture, NormalMapTexture, SkyCubeTexture, URLTexture and pass it where a Texture is accepted.

A source of texel data to be used in rendering material surface appearances.

func IrradianceTextureCubeWithTextureNameDimensions added in v0.17.0

func IrradianceTextureCubeWithTextureNameDimensions(texture *Texture, name string, dimensions unsafe.Pointer) *Texture

IrradianceTextureCubeWithTextureNameDimensions generates an irradiance texture from the specified reflectance cube texture.

func IrradianceTextureCubeWithTextureNameDimensionsRoughness added in v0.17.0

func IrradianceTextureCubeWithTextureNameDimensionsRoughness(texture *Texture, name string, dimensions unsafe.Pointer, roughness float32) *Texture

IrradianceTextureCubeWithTextureNameDimensionsRoughness generates an irradiance texture from the specified reflectance cube texture, assuming a surface of the specified roughness.

func NewTextureWithDataTopLeftOriginNameDimensionsRowStrideChannelCountChannelEncodingIsCube added in v0.17.0

func NewTextureWithDataTopLeftOriginNameDimensionsRowStrideChannelCountChannelEncodingIsCube(pixelData []byte, topLeftOrigin bool, name string, dimensions unsafe.Pointer, rowStride int, channelCount int, channelEncoding TextureChannelEncoding, isCube bool) *Texture

NewTextureWithDataTopLeftOriginNameDimensionsRowStrideChannelCountChannelEncodingIsCube initializes a texture object with the specified image data and properties.

func TextureCubeWithImagesNamed added in v0.17.0

func TextureCubeWithImagesNamed(names []string) *Texture

TextureCubeWithImagesNamed loads a cube texture from the specified image files in the app’s main bundle.

func TextureCubeWithImagesNamedBundle added in v0.17.0

func TextureCubeWithImagesNamedBundle(names []string, bundleOrNil obj.Object) *Texture

TextureCubeWithImagesNamedBundle loads a cube texture from the specified image files in the specified bundle.

func TextureFromID added in v0.17.0

func TextureFromID(id objc.ID) *Texture

TextureFromID adopts an existing Objective-C object as a Texture (nil for 0), retaining it and registering a release finalizer.

func TextureNamed added in v0.17.0

func TextureNamed(name string) *Texture

TextureNamed loads the texture with the specified filename from the app’s main bundle.

func TextureNamedBundle added in v0.17.0

func TextureNamedBundle(name string, bundleOrNil obj.Object) *Texture

TextureNamedBundle loads the texture with the specified filename from the specified bundle.

func (*Texture) ChannelCount added in v0.17.0

func (t *Texture) ChannelCount() int

ChannelCount returns the channel count.

func (*Texture) ChannelEncoding added in v0.17.0

func (t *Texture) ChannelEncoding() TextureChannelEncoding

ChannelEncoding returns the channel encoding.

func (*Texture) Description added in v0.17.0

func (t *Texture) Description() string

Description returns the object's -description text.

func (*Texture) Dimensions added in v0.18.0

func (t *Texture) Dimensions() unsafe.Pointer

Dimensions returns the dimensions.

func (*Texture) HasAlphaValues added in v0.17.0

func (t *Texture) HasAlphaValues() bool

HasAlphaValues reports whether hasAlphaValues Can be overridden. If not overridden, hasAlpha will be false if the texture does not have an alpha channel. It wil be true if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*Texture) ImageFromTexture added in v0.17.0

func (t *Texture) ImageFromTexture() coregraphics.CGImageRef

ImageFromTexture returns exports the texture data as a CoreGraphics image.

func (*Texture) ImageFromTextureAtLevel added in v0.17.0

func (t *Texture) ImageFromTextureAtLevel(level int) coregraphics.CGImageRef

ImageFromTextureAtLevel wraps the corresponding Objective-C method.

func (*Texture) IsCube added in v0.17.0

func (t *Texture) IsCube() bool

IsCube reports whether the object is cube.

func (*Texture) IsEqual added in v0.17.0

func (t *Texture) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Texture) IsKind added in v0.17.0

func (t *Texture) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Texture) MipLevelCount added in v0.17.0

func (t *Texture) MipLevelCount() int

MipLevelCount returns the mip level count.

func (*Texture) RowStride added in v0.17.0

func (t *Texture) RowStride() int

RowStride returns the row stride.

func (*Texture) String added in v0.17.0

func (t *Texture) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Texture) TexelDataWithBottomLeftOrigin added in v0.17.0

func (t *Texture) TexelDataWithBottomLeftOrigin() []byte

TexelDataWithBottomLeftOrigin returns the texture’s image data, organized such that its first pixel represents the bottom-left corner of the image.

func (*Texture) TexelDataWithBottomLeftOriginAtMipLevelCreate added in v0.17.0

func (t *Texture) TexelDataWithBottomLeftOriginAtMipLevelCreate(level int, create bool) []byte

TexelDataWithBottomLeftOriginAtMipLevelCreate returns the texture’s image data for the specified mipmap level, organized such that its first pixel represents the bottom-left corner of the image.

func (*Texture) TexelDataWithTopLeftOrigin added in v0.17.0

func (t *Texture) TexelDataWithTopLeftOrigin() []byte

TexelDataWithTopLeftOrigin returns the texture’s image data, organized such that its first pixel represents the top-left corner of the image.

func (*Texture) TexelDataWithTopLeftOriginAtMipLevelCreate added in v0.17.0

func (t *Texture) TexelDataWithTopLeftOriginAtMipLevelCreate(level int, create bool) []byte

TexelDataWithTopLeftOriginAtMipLevelCreate returns the texture’s image data for the specified mipmap level, organized such that its first pixel represents the top-left corner of the image.

func (*Texture) WithHasAlphaValues added in v0.17.0

func (t *Texture) WithHasAlphaValues(hasAlphaValues bool) *Texture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*Texture) WithIsCube added in v0.17.0

func (t *Texture) WithIsCube(isCube bool) *Texture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

func (*Texture) WriteToURL added in v0.17.0

func (t *Texture) WriteToURL(url string) bool

WriteToURL exports the texture data to an image file at the specified URL.

func (*Texture) WriteToURLLevel added in v0.17.0

func (t *Texture) WriteToURLLevel(url string, level int) bool

WriteToURLLevel write a particular level of a mipped texture to URL, deducing type from path extension

func (*Texture) WriteToURLType added in v0.17.0

func (t *Texture) WriteToURLType(nsurl string, type_ corefoundation.CFStringRef) bool

WriteToURLType exports the texture data to an image file at the specified URL, of the specified type.

func (*Texture) WriteToURLTypeLevel added in v0.17.0

func (t *Texture) WriteToURLTypeLevel(nsurl string, type_ corefoundation.CFStringRef, level int) bool

WriteToURLTypeLevel write a particular level of a mipped texture to URL, using a specific UT type

type TextureChannelEncoding added in v0.17.0

type TextureChannelEncoding int64

Options for the data size and type of texel channel values, used by the channelEncoding property.

const (
	// Each channel value per texel is an 8-bit unsigned integer.
	TextureChannelEncodingUInt8 TextureChannelEncoding = 1
	// Each channel value per texel is an 8-bit unsigned integer.
	TextureChannelEncodingUint8 TextureChannelEncoding = 1
	// Each channel value per texel is a 16-bit unsigned integer.
	TextureChannelEncodingUInt16 TextureChannelEncoding = 2
	// Each channel value per texel is a 16-bit unsigned integer.
	TextureChannelEncodingUint16 TextureChannelEncoding = 2
	// Each channel value per texel is a 24-bit unsigned integer.
	TextureChannelEncodingUInt24 TextureChannelEncoding = 3
	// Each channel value per texel is a 24-bit unsigned integer.
	TextureChannelEncodingUint24 TextureChannelEncoding = 3
	// Each channel value per texel is a 32-bit unsigned integer.
	TextureChannelEncodingUInt32 TextureChannelEncoding = 4
	// Each channel value per texel is a 32-bit unsigned integer.
	TextureChannelEncodingUint32 TextureChannelEncoding = 4
	// Each channel value per texel is a 16-bit floating-point value.
	TextureChannelEncodingFloat16   TextureChannelEncoding = 258
	TextureChannelEncodingFloat16SR TextureChannelEncoding = 770
	// Each channel value per texel is a 32-bit floating-point value.
	TextureChannelEncodingFloat32 TextureChannelEncoding = 260
)

func (TextureChannelEncoding) String added in v0.17.0

func (e TextureChannelEncoding) String() string

String returns the TextureChannelEncoding constant's name, or its numeric form when the value is not a known constant.

type TextureFilter added in v0.17.0

type TextureFilter struct {
	objref.Handle
}

TextureFilter is an idiomatic wrapper over the Objective-C class MDLTextureFilter.

A description of filtering modes for a renderer to use when sampling from a texture.

func NewTextureFilter added in v0.17.0

func NewTextureFilter() *TextureFilter

NewTextureFilter creates a new TextureFilter.

func TextureFilterFromID added in v0.17.0

func TextureFilterFromID(id objc.ID) *TextureFilter

TextureFilterFromID adopts an existing Objective-C object as a TextureFilter (nil for 0), retaining it and registering a release finalizer.

func (*TextureFilter) Description added in v0.17.0

func (tf *TextureFilter) Description() string

Description returns the object's -description text.

func (*TextureFilter) IsEqual added in v0.17.0

func (tf *TextureFilter) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TextureFilter) IsKind added in v0.17.0

func (tf *TextureFilter) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TextureFilter) MagFilter added in v0.17.0

func (tf *TextureFilter) MagFilter() MaterialTextureFilterMode

MagFilter returns the mag filter.

func (*TextureFilter) MinFilter added in v0.17.0

func (tf *TextureFilter) MinFilter() MaterialTextureFilterMode

MinFilter returns the min filter.

func (*TextureFilter) MipFilter added in v0.17.0

func (tf *TextureFilter) MipFilter() MaterialMipMapFilterMode

MipFilter returns the mip filter.

func (*TextureFilter) RWrapMode added in v0.17.0

func (tf *TextureFilter) RWrapMode() MaterialTextureWrapMode

RWrapMode returns the r wrap mode.

func (*TextureFilter) SWrapMode added in v0.17.0

func (tf *TextureFilter) SWrapMode() MaterialTextureWrapMode

SWrapMode returns the s wrap mode.

func (*TextureFilter) String added in v0.17.0

func (tf *TextureFilter) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*TextureFilter) TWrapMode added in v0.17.0

func (tf *TextureFilter) TWrapMode() MaterialTextureWrapMode

TWrapMode returns the t wrap mode.

func (*TextureFilter) WithMagFilter added in v0.17.0

func (tf *TextureFilter) WithMagFilter(magFilter MaterialTextureFilterMode) *TextureFilter

WithMagFilter sets the filter mode for rendering textures at sizes larger than that of the original image.

func (*TextureFilter) WithMinFilter added in v0.17.0

func (tf *TextureFilter) WithMinFilter(minFilter MaterialTextureFilterMode) *TextureFilter

WithMinFilter sets the filter mode for rendering textures at sizes smaller than that of the original image.

func (*TextureFilter) WithMipFilter added in v0.17.0

func (tf *TextureFilter) WithMipFilter(mipFilter MaterialMipMapFilterMode) *TextureFilter

WithMipFilter sets the filter mode for rendering textures using mipmapping.

func (*TextureFilter) WithRWrapMode added in v0.17.0

func (tf *TextureFilter) WithRWrapMode(rWrapMode MaterialTextureWrapMode) *TextureFilter

WithRWrapMode sets the coordinate wrapping mode for texture r-coordinates.

func (*TextureFilter) WithSWrapMode added in v0.17.0

func (tf *TextureFilter) WithSWrapMode(sWrapMode MaterialTextureWrapMode) *TextureFilter

WithSWrapMode sets the coordinate wrapping mode for texture t-coordinates.

func (*TextureFilter) WithTWrapMode added in v0.17.0

func (tf *TextureFilter) WithTWrapMode(tWrapMode MaterialTextureWrapMode) *TextureFilter

WithTWrapMode sets the coordinate wrapping mode for texture t-coordinates.

type TextureProvider added in v0.17.0

type TextureProvider interface {
	objref.Object
	// contains filtered or unexported methods
}

TextureProvider is accepted wherever a MDLTexture (or one of its subclasses) is expected.

type TextureSampler added in v0.17.0

type TextureSampler struct {
	objref.Handle
}

TextureSampler is an idiomatic wrapper over the Objective-C class MDLTextureSampler.

An object that pairs a source of texture data with sampling parameters to be used in rendering the texture.

func NewTextureSampler added in v0.17.0

func NewTextureSampler() *TextureSampler

NewTextureSampler creates a new TextureSampler.

func TextureSamplerFromID added in v0.17.0

func TextureSamplerFromID(id objc.ID) *TextureSampler

TextureSamplerFromID adopts an existing Objective-C object as a TextureSampler (nil for 0), retaining it and registering a release finalizer.

func (*TextureSampler) Description added in v0.17.0

func (ts *TextureSampler) Description() string

Description returns the object's -description text.

func (*TextureSampler) HardwareFilter added in v0.17.0

func (ts *TextureSampler) HardwareFilter() *TextureFilter

HardwareFilter returns the hardware filter.

func (*TextureSampler) IsEqual added in v0.17.0

func (ts *TextureSampler) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TextureSampler) IsKind added in v0.17.0

func (ts *TextureSampler) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TextureSampler) String added in v0.17.0

func (ts *TextureSampler) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*TextureSampler) Texture added in v0.17.0

func (ts *TextureSampler) Texture() *Texture

Texture returns the texture.

func (*TextureSampler) Transform added in v0.17.0

func (ts *TextureSampler) Transform() *Transform

Transform returns the transform.

func (*TextureSampler) WithHardwareFilter added in v0.17.0

func (ts *TextureSampler) WithHardwareFilter(hardwareFilter *TextureFilter) *TextureSampler

WithHardwareFilter sets an object that describes filtering modes for sampling from the texture.

func (*TextureSampler) WithTexture added in v0.17.0

func (ts *TextureSampler) WithTexture(texture TextureProvider) *TextureSampler

WithTexture sets the texture object that provides image data for sampling.

func (*TextureSampler) WithTransform added in v0.17.0

func (ts *TextureSampler) WithTransform(transform *Transform) *TextureSampler

WithTransform sets the transformation to be applied to texture coordinate data before sampling from the texture.

type Transform added in v0.17.0

type Transform struct {
	objref.Handle
}

Transform is an idiomatic wrapper over the Objective-C class MDLTransform.

A description of the local coordinate space transformations for a 3D object.

func NewTransform added in v0.17.0

func NewTransform() *Transform

NewTransform creates a new Transform.

func NewTransformWithMatrix added in v0.17.0

func NewTransformWithMatrix(matrix unsafe.Pointer) *Transform

NewTransformWithMatrix initializes a transform object with the specified transform matrix.

func NewTransformWithMatrixResetsTransform added in v0.17.0

func NewTransformWithMatrixResetsTransform(matrix unsafe.Pointer, resetsTransform bool) *Transform

NewTransformWithMatrixResetsTransform creates a new Transform.

func TransformFromID added in v0.17.0

func TransformFromID(id objc.ID) *Transform

TransformFromID adopts an existing Objective-C object as a Transform (nil for 0), retaining it and registering a release finalizer.

func (*Transform) Description added in v0.17.0

func (t *Transform) Description() string

Description returns the object's -description text.

func (*Transform) IsEqual added in v0.17.0

func (t *Transform) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Transform) IsKind added in v0.17.0

func (t *Transform) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Transform) Rotation added in v0.18.0

func (t *Transform) Rotation() unsafe.Pointer

Rotation returns the rotation.

func (*Transform) RotationAtTime added in v0.18.0

func (t *Transform) RotationAtTime(time_ float64) unsafe.Pointer

RotationAtTime returns the orientation of the transform relative to its parent coordinate space, as of the specified time sample.

func (*Transform) RotationMatrixAtTime added in v0.18.0

func (t *Transform) RotationMatrixAtTime(time_ float64) unsafe.Pointer

RotationMatrixAtTime returns the orientation of the transform as a rotation matrix, as of the specified time sample.

func (*Transform) Scale added in v0.18.0

func (t *Transform) Scale() unsafe.Pointer

Scale returns the scale.

func (*Transform) ScaleAtTime added in v0.18.0

func (t *Transform) ScaleAtTime(time_ float64) unsafe.Pointer

ScaleAtTime returns the x-, y-, and z-axis scale factors of the transform relative to its parent coordinate space, as of the specified time sample.

func (*Transform) SetIdentity added in v0.17.0

func (t *Transform) SetIdentity()

SetIdentity sets all factors of the transform to those of the identity transformation.

func (*Transform) SetMatrixForTime added in v0.17.0

func (t *Transform) SetMatrixForTime(matrix unsafe.Pointer, time_ float64)

SetMatrixForTime wraps the corresponding Objective-C method.

func (*Transform) SetRotationForTime added in v0.17.0

func (t *Transform) SetRotationForTime(rotation unsafe.Pointer, time_ float64)

SetRotationForTime sets the orientation of the transform for the specified time sample.

func (*Transform) SetScaleForTime added in v0.17.0

func (t *Transform) SetScaleForTime(scale unsafe.Pointer, time_ float64)

SetScaleForTime sets the x-, y-, and z-axis scale factors of the transform for the specified time sample.

func (*Transform) SetShearForTime added in v0.17.0

func (t *Transform) SetShearForTime(shear unsafe.Pointer, time_ float64)

SetShearForTime sets the x-, y-, and z-axis shear factors of the transform for the specified time sample.

func (*Transform) SetTranslationForTime added in v0.17.0

func (t *Transform) SetTranslationForTime(translation unsafe.Pointer, time_ float64)

SetTranslationForTime sets the x-, y-, and z-axis offsets of the transform for the specified time sample.

func (*Transform) Shear added in v0.18.0

func (t *Transform) Shear() unsafe.Pointer

Shear returns the shear.

func (*Transform) ShearAtTime added in v0.18.0

func (t *Transform) ShearAtTime(time_ float64) unsafe.Pointer

ShearAtTime returns the x-, y-, and z-axis shear factors of the transform relative to its parent coordinate space, as of the specified time sample.

func (*Transform) String added in v0.17.0

func (t *Transform) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*Transform) Translation added in v0.18.0

func (t *Transform) Translation() unsafe.Pointer

Translation returns if these properties are read and animation data exists the earliest value is returned. Otherwise, if there is no animation data, the value of the property is the same at all times and that value is returned. If written, timing information for said property is removed. To retain or add timing information, use the set:forTime selectors instead.

func (*Transform) TranslationAtTime added in v0.18.0

func (t *Transform) TranslationAtTime(time_ float64) unsafe.Pointer

TranslationAtTime returns the x-, y-, and z-axis offsets of the transform relative to its parent coordinate space, as of the specified time sample.

func (*Transform) WithRotation added in v0.17.0

func (t *Transform) WithRotation(rotation unsafe.Pointer) *Transform

WithRotation sets the orientation, as a vector of Euler angles in radians, of the transform relative to its parent coordinate space.

func (*Transform) WithScale added in v0.17.0

func (t *Transform) WithScale(scale unsafe.Pointer) *Transform

WithScale sets the x-, y-, and z-axis scale factors of the transform relative to its parent coordinate space.

func (*Transform) WithShear added in v0.17.0

func (t *Transform) WithShear(shear unsafe.Pointer) *Transform

WithShear sets the x-, y-, and z-axis shear factors of the transform relative to its parent coordinate space.

func (*Transform) WithTranslation added in v0.17.0

func (t *Transform) WithTranslation(translation unsafe.Pointer) *Transform

WithTranslation sets the x-, y-, and z-axis offsets of the transform relative to its parent coordinate space.

type TransformComponent added in v0.17.0

type TransformComponent interface {
}

TransformComponent is the Go form of the Objective-C protocol MDLTransformComponent.

type TransformMatrixOp added in v0.17.0

type TransformMatrixOp struct {
	objref.Handle
}

TransformMatrixOp is an idiomatic wrapper over the Objective-C class MDLTransformMatrixOp.

func NewTransformMatrixOp added in v0.17.0

func NewTransformMatrixOp() *TransformMatrixOp

NewTransformMatrixOp creates a new TransformMatrixOp.

func TransformMatrixOpFromID added in v0.17.0

func TransformMatrixOpFromID(id objc.ID) *TransformMatrixOp

TransformMatrixOpFromID adopts an existing Objective-C object as a TransformMatrixOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformMatrixOp) AnimatedValue added in v0.17.0

func (tmo *TransformMatrixOp) AnimatedValue() *AnimatedMatrix4x4

AnimatedValue returns the animated value.

func (*TransformMatrixOp) Description added in v0.17.0

func (tmo *TransformMatrixOp) Description() string

Description returns the object's -description text.

func (*TransformMatrixOp) IsEqual added in v0.17.0

func (tmo *TransformMatrixOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformMatrixOp) IsKind added in v0.17.0

func (tmo *TransformMatrixOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformMatrixOp) Name added in v0.17.0

func (tmo *TransformMatrixOp) Name() string

Name returns the name.

func (*TransformMatrixOp) String added in v0.17.0

func (tmo *TransformMatrixOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformOp added in v0.17.0

type TransformOp interface {
	Float4x4AtTime(time_ float64) unsafe.Pointer
	Double4x4AtTime(time_ float64) unsafe.Pointer
	IsInverseOp() bool
	Name() string
}

TransformOp is the Go form of the Objective-C protocol MDLTransformOp.

type TransformOpRotationOrder added in v0.17.0

type TransformOpRotationOrder uint64
const (
	TransformOpRotationOrderXYZ TransformOpRotationOrder = 1
	TransformOpRotationOrderXZY TransformOpRotationOrder = 2
	TransformOpRotationOrderYXZ TransformOpRotationOrder = 3
	TransformOpRotationOrderYZX TransformOpRotationOrder = 4
	TransformOpRotationOrderZXY TransformOpRotationOrder = 5
	TransformOpRotationOrderZYX TransformOpRotationOrder = 6
)

func (TransformOpRotationOrder) String added in v0.17.0

func (e TransformOpRotationOrder) String() string

String returns the TransformOpRotationOrder constant's name, or its numeric form when the value is not a known constant.

type TransformOrientOp added in v0.17.0

type TransformOrientOp struct {
	objref.Handle
}

TransformOrientOp is an idiomatic wrapper over the Objective-C class MDLTransformOrientOp.

func NewTransformOrientOp added in v0.17.0

func NewTransformOrientOp() *TransformOrientOp

NewTransformOrientOp creates a new TransformOrientOp.

func TransformOrientOpFromID added in v0.17.0

func TransformOrientOpFromID(id objc.ID) *TransformOrientOp

TransformOrientOpFromID adopts an existing Objective-C object as a TransformOrientOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformOrientOp) AnimatedValue added in v0.17.0

func (too *TransformOrientOp) AnimatedValue() *AnimatedQuaternion

AnimatedValue returns the animated value.

func (*TransformOrientOp) Description added in v0.17.0

func (too *TransformOrientOp) Description() string

Description returns the object's -description text.

func (*TransformOrientOp) IsEqual added in v0.17.0

func (too *TransformOrientOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformOrientOp) IsKind added in v0.17.0

func (too *TransformOrientOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformOrientOp) Name added in v0.17.0

func (too *TransformOrientOp) Name() string

Name returns the name.

func (*TransformOrientOp) String added in v0.17.0

func (too *TransformOrientOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformRotateOp added in v0.17.0

type TransformRotateOp struct {
	objref.Handle
}

TransformRotateOp is an idiomatic wrapper over the Objective-C class MDLTransformRotateOp.

func NewTransformRotateOp added in v0.17.0

func NewTransformRotateOp() *TransformRotateOp

NewTransformRotateOp creates a new TransformRotateOp.

func TransformRotateOpFromID added in v0.17.0

func TransformRotateOpFromID(id objc.ID) *TransformRotateOp

TransformRotateOpFromID adopts an existing Objective-C object as a TransformRotateOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformRotateOp) AnimatedValue added in v0.17.0

func (tro *TransformRotateOp) AnimatedValue() *AnimatedVector3

AnimatedValue returns the animated value.

func (*TransformRotateOp) Description added in v0.17.0

func (tro *TransformRotateOp) Description() string

Description returns the object's -description text.

func (*TransformRotateOp) IsEqual added in v0.17.0

func (tro *TransformRotateOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformRotateOp) IsKind added in v0.17.0

func (tro *TransformRotateOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformRotateOp) Name added in v0.17.0

func (tro *TransformRotateOp) Name() string

Name returns the name.

func (*TransformRotateOp) String added in v0.17.0

func (tro *TransformRotateOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformRotateXOp added in v0.17.0

type TransformRotateXOp struct {
	objref.Handle
}

TransformRotateXOp is an idiomatic wrapper over the Objective-C class MDLTransformRotateXOp.

func NewTransformRotateXOp added in v0.17.0

func NewTransformRotateXOp() *TransformRotateXOp

NewTransformRotateXOp creates a new TransformRotateXOp.

func TransformRotateXOpFromID added in v0.17.0

func TransformRotateXOpFromID(id objc.ID) *TransformRotateXOp

TransformRotateXOpFromID adopts an existing Objective-C object as a TransformRotateXOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformRotateXOp) AnimatedValue added in v0.17.0

func (trxo *TransformRotateXOp) AnimatedValue() *AnimatedScalar

AnimatedValue returns the animated value.

func (*TransformRotateXOp) Description added in v0.17.0

func (trxo *TransformRotateXOp) Description() string

Description returns the object's -description text.

func (*TransformRotateXOp) IsEqual added in v0.17.0

func (trxo *TransformRotateXOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformRotateXOp) IsKind added in v0.17.0

func (trxo *TransformRotateXOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformRotateXOp) Name added in v0.17.0

func (trxo *TransformRotateXOp) Name() string

Name returns the name.

func (*TransformRotateXOp) String added in v0.17.0

func (trxo *TransformRotateXOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformRotateYOp added in v0.17.0

type TransformRotateYOp struct {
	objref.Handle
}

TransformRotateYOp is an idiomatic wrapper over the Objective-C class MDLTransformRotateYOp.

func NewTransformRotateYOp added in v0.17.0

func NewTransformRotateYOp() *TransformRotateYOp

NewTransformRotateYOp creates a new TransformRotateYOp.

func TransformRotateYOpFromID added in v0.17.0

func TransformRotateYOpFromID(id objc.ID) *TransformRotateYOp

TransformRotateYOpFromID adopts an existing Objective-C object as a TransformRotateYOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformRotateYOp) AnimatedValue added in v0.17.0

func (tryo *TransformRotateYOp) AnimatedValue() *AnimatedScalar

AnimatedValue returns the animated value.

func (*TransformRotateYOp) Description added in v0.17.0

func (tryo *TransformRotateYOp) Description() string

Description returns the object's -description text.

func (*TransformRotateYOp) IsEqual added in v0.17.0

func (tryo *TransformRotateYOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformRotateYOp) IsKind added in v0.17.0

func (tryo *TransformRotateYOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformRotateYOp) Name added in v0.17.0

func (tryo *TransformRotateYOp) Name() string

Name returns the name.

func (*TransformRotateYOp) String added in v0.17.0

func (tryo *TransformRotateYOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformRotateZOp added in v0.17.0

type TransformRotateZOp struct {
	objref.Handle
}

TransformRotateZOp is an idiomatic wrapper over the Objective-C class MDLTransformRotateZOp.

func NewTransformRotateZOp added in v0.17.0

func NewTransformRotateZOp() *TransformRotateZOp

NewTransformRotateZOp creates a new TransformRotateZOp.

func TransformRotateZOpFromID added in v0.17.0

func TransformRotateZOpFromID(id objc.ID) *TransformRotateZOp

TransformRotateZOpFromID adopts an existing Objective-C object as a TransformRotateZOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformRotateZOp) AnimatedValue added in v0.17.0

func (trzo *TransformRotateZOp) AnimatedValue() *AnimatedScalar

AnimatedValue returns the animated value.

func (*TransformRotateZOp) Description added in v0.17.0

func (trzo *TransformRotateZOp) Description() string

Description returns the object's -description text.

func (*TransformRotateZOp) IsEqual added in v0.17.0

func (trzo *TransformRotateZOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformRotateZOp) IsKind added in v0.17.0

func (trzo *TransformRotateZOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformRotateZOp) Name added in v0.17.0

func (trzo *TransformRotateZOp) Name() string

Name returns the name.

func (*TransformRotateZOp) String added in v0.17.0

func (trzo *TransformRotateZOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformScaleOp added in v0.17.0

type TransformScaleOp struct {
	objref.Handle
}

TransformScaleOp is an idiomatic wrapper over the Objective-C class MDLTransformScaleOp.

func NewTransformScaleOp added in v0.17.0

func NewTransformScaleOp() *TransformScaleOp

NewTransformScaleOp creates a new TransformScaleOp.

func TransformScaleOpFromID added in v0.17.0

func TransformScaleOpFromID(id objc.ID) *TransformScaleOp

TransformScaleOpFromID adopts an existing Objective-C object as a TransformScaleOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformScaleOp) AnimatedValue added in v0.17.0

func (tso *TransformScaleOp) AnimatedValue() *AnimatedVector3

AnimatedValue returns the animated value.

func (*TransformScaleOp) Description added in v0.17.0

func (tso *TransformScaleOp) Description() string

Description returns the object's -description text.

func (*TransformScaleOp) IsEqual added in v0.17.0

func (tso *TransformScaleOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformScaleOp) IsKind added in v0.17.0

func (tso *TransformScaleOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformScaleOp) Name added in v0.17.0

func (tso *TransformScaleOp) Name() string

Name returns the name.

func (*TransformScaleOp) String added in v0.17.0

func (tso *TransformScaleOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type TransformStack added in v0.17.0

type TransformStack struct {
	objref.Handle
}

TransformStack is an idiomatic wrapper over the Objective-C class MDLTransformStack.

func NewTransformStack added in v0.17.0

func NewTransformStack() *TransformStack

NewTransformStack creates a new TransformStack.

func TransformStackFromID added in v0.17.0

func TransformStackFromID(id objc.ID) *TransformStack

TransformStackFromID adopts an existing Objective-C object as a TransformStack (nil for 0), retaining it and registering a release finalizer.

func (*TransformStack) AddMatrixOpInverse added in v0.17.0

func (ts *TransformStack) AddMatrixOpInverse(animatedValueName string, inverse bool) *TransformMatrixOp

AddMatrixOpInverse adds matrix op inverse.

func (*TransformStack) AddOrientOpInverse added in v0.17.0

func (ts *TransformStack) AddOrientOpInverse(animatedValueName string, inverse bool) *TransformOrientOp

AddOrientOpInverse adds orient op inverse.

func (*TransformStack) AddRotateOpOrderInverse added in v0.17.0

func (ts *TransformStack) AddRotateOpOrderInverse(animatedValueName string, order TransformOpRotationOrder, inverse bool) *TransformRotateOp

AddRotateOpOrderInverse adds rotate op order inverse.

func (*TransformStack) AddRotateXOpInverse added in v0.17.0

func (ts *TransformStack) AddRotateXOpInverse(animatedValueName string, inverse bool) *TransformRotateXOp

AddRotateXOpInverse adds rotate x op inverse.

func (*TransformStack) AddRotateYOpInverse added in v0.17.0

func (ts *TransformStack) AddRotateYOpInverse(animatedValueName string, inverse bool) *TransformRotateYOp

AddRotateYOpInverse adds rotate y op inverse.

func (*TransformStack) AddRotateZOpInverse added in v0.17.0

func (ts *TransformStack) AddRotateZOpInverse(animatedValueName string, inverse bool) *TransformRotateZOp

AddRotateZOpInverse adds rotate z op inverse.

func (*TransformStack) AddScaleOpInverse added in v0.17.0

func (ts *TransformStack) AddScaleOpInverse(animatedValueName string, inverse bool) *TransformScaleOp

AddScaleOpInverse adds scale op inverse.

func (*TransformStack) AddTranslateOpInverse added in v0.17.0

func (ts *TransformStack) AddTranslateOpInverse(animatedValueName string, inverse bool) *TransformTranslateOp

AddTranslateOpInverse adds translate op inverse.

func (*TransformStack) AnimatedValueWithName added in v0.17.0

func (ts *TransformStack) AnimatedValueWithName(name string) *AnimatedValue

AnimatedValueWithName wraps the corresponding Objective-C method.

func (*TransformStack) Count added in v0.17.0

func (ts *TransformStack) Count() int

Count returns the count.

func (*TransformStack) Description added in v0.17.0

func (ts *TransformStack) Description() string

Description returns the object's -description text.

func (*TransformStack) Double4x4AtTime added in v0.18.0

func (ts *TransformStack) Double4x4AtTime(time_ float64) unsafe.Pointer

Double4x4AtTime wraps the corresponding Objective-C method.

func (*TransformStack) Float4x4AtTime added in v0.18.0

func (ts *TransformStack) Float4x4AtTime(time_ float64) unsafe.Pointer

Float4x4AtTime wraps the corresponding Objective-C method.

func (*TransformStack) IsEqual added in v0.17.0

func (ts *TransformStack) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformStack) IsKind added in v0.17.0

func (ts *TransformStack) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformStack) KeyTimes added in v0.17.0

func (ts *TransformStack) KeyTimes() []obj.Object

KeyTimes returns the key times.

KeyTimes returns the collection as a Go slice.

func (*TransformStack) String added in v0.17.0

func (ts *TransformStack) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*TransformStack) TransformOps added in v0.17.0

func (ts *TransformStack) TransformOps() []obj.Object

TransformOps returns the transform ops.

type TransformTranslateOp added in v0.17.0

type TransformTranslateOp struct {
	objref.Handle
}

TransformTranslateOp is an idiomatic wrapper over the Objective-C class MDLTransformTranslateOp.

func NewTransformTranslateOp added in v0.17.0

func NewTransformTranslateOp() *TransformTranslateOp

NewTransformTranslateOp creates a new TransformTranslateOp.

func TransformTranslateOpFromID added in v0.17.0

func TransformTranslateOpFromID(id objc.ID) *TransformTranslateOp

TransformTranslateOpFromID adopts an existing Objective-C object as a TransformTranslateOp (nil for 0), retaining it and registering a release finalizer.

func (*TransformTranslateOp) AnimatedValue added in v0.17.0

func (tto *TransformTranslateOp) AnimatedValue() *AnimatedVector3

AnimatedValue returns the animated value.

func (*TransformTranslateOp) Description added in v0.17.0

func (tto *TransformTranslateOp) Description() string

Description returns the object's -description text.

func (*TransformTranslateOp) IsEqual added in v0.17.0

func (tto *TransformTranslateOp) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*TransformTranslateOp) IsKind added in v0.17.0

func (tto *TransformTranslateOp) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*TransformTranslateOp) Name added in v0.17.0

func (tto *TransformTranslateOp) Name() string

Name returns the name.

func (*TransformTranslateOp) String added in v0.17.0

func (tto *TransformTranslateOp) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type Type added in v0.17.0

type Type int32
const (
	TypeExtended Type = 256
	TypeAccess   Type = 0
	TypeDefault  Type = 1
	TypeAfs      Type = 2
	TypeCoda     Type = 3
	TypeNtfs     Type = 4
	TypeNwfs     Type = 5
)

func (Type) String added in v0.17.0

func (e Type) String() string

String returns the Type constant's name, or its numeric form when the value is not a known constant.

type URLTexture added in v0.17.0

type URLTexture struct {
	Texture
}

URLTexture is an idiomatic wrapper over the Objective-C class MDLURLTexture.

It embeds Texture, promoting that type's methods.

A lightweight reference to a URL from which to load texture data.

func NewURLTextureWithURLName added in v0.17.0

func NewURLTextureWithURLName(url string, name string) *URLTexture

NewURLTextureWithURLName initializes a texture that loads its texel data from a file at the specified URL.

func URLTextureFromID added in v0.17.0

func URLTextureFromID(id objc.ID) *URLTexture

URLTextureFromID adopts an existing Objective-C object as a URLTexture (nil for 0), retaining it and registering a release finalizer.

func (*URLTexture) URL added in v0.17.0

func (ut *URLTexture) URL() string

URL returns the URL.

func (*URLTexture) WithHasAlphaValues added in v0.17.0

func (ut *URLTexture) WithHasAlphaValues(hasAlphaValues bool) *URLTexture

WithHasAlphaValues sets hasAlphaValues Can be overridden. If not overridden, hasAlpha will be NO if the texture does not have an alpha channel. It wil be YES if the texture has an alpha channel and there is at least one non-opaque texel in it.

func (*URLTexture) WithIsCube added in v0.17.0

func (ut *URLTexture) WithIsCube(isCube bool) *URLTexture

WithIsCube sets a Boolean value that indicates whether the texture is a cube textures.

func (*URLTexture) WithURL added in v0.17.0

func (ut *URLTexture) WithURL(url string) *URLTexture

WithURL sets the URL from which to load texture data.

type Utility added in v0.17.0

type Utility struct {
	objref.Handle
}

Utility is an idiomatic wrapper over the Objective-C class MDLUtility.

func NewUtility added in v0.17.0

func NewUtility() *Utility

NewUtility creates a new Utility.

func UtilityFromID added in v0.17.0

func UtilityFromID(id objc.ID) *Utility

UtilityFromID adopts an existing Objective-C object as a Utility (nil for 0), retaining it and registering a release finalizer.

func (*Utility) Description added in v0.17.0

func (u *Utility) Description() string

Description returns the object's -description text.

func (*Utility) IsEqual added in v0.17.0

func (u *Utility) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*Utility) IsKind added in v0.17.0

func (u *Utility) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*Utility) String added in v0.17.0

func (u *Utility) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

type VertexAttribute added in v0.17.0

type VertexAttribute struct {
	objref.Handle
}

VertexAttribute is an idiomatic wrapper over the Objective-C class MDLVertexAttribute.

A description of the format of per-vertex data for a single vertex attribute in a mesh object.

func NewVertexAttribute added in v0.17.0

func NewVertexAttribute() *VertexAttribute

NewVertexAttribute creates a new VertexAttribute.

func NewVertexAttributeWithNameFormatOffsetBufferIndex added in v0.17.0

func NewVertexAttributeWithNameFormatOffsetBufferIndex(name string, format VertexFormat, offset int, bufferIndex int) *VertexAttribute

NewVertexAttributeWithNameFormatOffsetBufferIndex initializes a vertex attribute object with the specified property values.

func VertexAttributeFromID added in v0.17.0

func VertexAttributeFromID(id objc.ID) *VertexAttribute

VertexAttributeFromID adopts an existing Objective-C object as a VertexAttribute (nil for 0), retaining it and registering a release finalizer.

func (*VertexAttribute) BufferIndex added in v0.17.0

func (va *VertexAttribute) BufferIndex() int

BufferIndex returns index of the buffer in mesh's vertexBuffer array in which this attribute resides

func (*VertexAttribute) Description added in v0.17.0

func (va *VertexAttribute) Description() string

Description returns the object's -description text.

func (*VertexAttribute) Format added in v0.17.0

func (va *VertexAttribute) Format() VertexFormat

Format returns format (including number of components) of the attribute If the value is MDLVertexFormatInvalid. Other values of this object will be ignored when setting the MDLVertexDescriptor object in a Mesh. The initial value is MDLVertexFormatInvalid.

func (*VertexAttribute) IsEqual added in v0.17.0

func (va *VertexAttribute) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*VertexAttribute) IsKind added in v0.17.0

func (va *VertexAttribute) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*VertexAttribute) Name added in v0.17.0

func (va *VertexAttribute) Name() string

Name returns identifying name of the attribute derived from model file, or one of the predefined MDLVertexAttribute strings

func (*VertexAttribute) Offset added in v0.17.0

func (va *VertexAttribute) Offset() int

Offset returns offset in bytes of the attrbute in each element of the vertex buffer

func (*VertexAttribute) String added in v0.17.0

func (va *VertexAttribute) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*VertexAttribute) Time added in v0.17.0

func (va *VertexAttribute) Time() float64

Time returns the time the attribute is intended for. morph targets would store their times here

func (*VertexAttribute) WithBufferIndex added in v0.17.0

func (va *VertexAttribute) WithBufferIndex(bufferIndex int) *VertexAttribute

WithBufferIndex sets the index of the vertex buffer containing data for this attribute in a mesh’s vertexBuffers array.

func (*VertexAttribute) WithFormat added in v0.17.0

func (va *VertexAttribute) WithFormat(format VertexFormat) *VertexAttribute

WithFormat sets the format of per-vertex data for the attribute.

func (*VertexAttribute) WithInitializationValue added in v0.17.0

func (va *VertexAttribute) WithInitializationValue(initializationValue unsafe.Pointer) *VertexAttribute

WithInitializationValue sets the default value for vertex data for this attribute.

func (*VertexAttribute) WithName added in v0.17.0

func (va *VertexAttribute) WithName(name string) *VertexAttribute

WithName sets an identifier for the semantic use of the vertex attribute.

func (*VertexAttribute) WithOffset added in v0.17.0

func (va *VertexAttribute) WithOffset(offset int) *VertexAttribute

WithOffset sets the offset, in bytes, of vertex data for the attribute in a vertex buffer, relative to the start of data for each vertex.

func (*VertexAttribute) WithTime added in v0.17.0

func (va *VertexAttribute) WithTime(time_ float64) *VertexAttribute

WithTime sets the time the attribute is intended for. morph targets would store their times here

type VertexAttributeData added in v0.17.0

type VertexAttributeData struct {
	objref.Handle
}

VertexAttributeData is an idiomatic wrapper over the Objective-C class MDLVertexAttributeData.

An object that provides convenience access to vertex data for a specific vertex attribute of a mesh.

func NewVertexAttributeData added in v0.17.0

func NewVertexAttributeData() *VertexAttributeData

NewVertexAttributeData creates a new VertexAttributeData.

func VertexAttributeDataFromID added in v0.17.0

func VertexAttributeDataFromID(id objc.ID) *VertexAttributeData

VertexAttributeDataFromID adopts an existing Objective-C object as a VertexAttributeData (nil for 0), retaining it and registering a release finalizer.

func (*VertexAttributeData) BufferSize added in v0.17.0

func (vad *VertexAttributeData) BufferSize() int

BufferSize returns the buffer size.

func (*VertexAttributeData) DataStart added in v0.18.0

func (vad *VertexAttributeData) DataStart() unsafe.Pointer

DataStart returns the data start.

func (*VertexAttributeData) Description added in v0.17.0

func (vad *VertexAttributeData) Description() string

Description returns the object's -description text.

func (*VertexAttributeData) Format added in v0.17.0

func (vad *VertexAttributeData) Format() VertexFormat

Format returns the format.

func (*VertexAttributeData) IsEqual added in v0.17.0

func (vad *VertexAttributeData) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*VertexAttributeData) IsKind added in v0.17.0

func (vad *VertexAttributeData) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*VertexAttributeData) Map added in v0.17.0

func (vad *VertexAttributeData) Map() *MeshBufferMap

Map returns the map.

func (*VertexAttributeData) Stride added in v0.17.0

func (vad *VertexAttributeData) Stride() int

Stride returns the stride.

func (*VertexAttributeData) String added in v0.17.0

func (vad *VertexAttributeData) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*VertexAttributeData) WithBufferSize added in v0.17.0

func (vad *VertexAttributeData) WithBufferSize(bufferSize int) *VertexAttributeData

WithBufferSize sets the buffer size.

func (*VertexAttributeData) WithDataStart added in v0.17.0

func (vad *VertexAttributeData) WithDataStart(dataStart unsafe.Pointer) *VertexAttributeData

WithDataStart sets the offset, in bytes, from the start of the data to where vertex attribute information begins.

func (*VertexAttributeData) WithFormat added in v0.17.0

func (vad *VertexAttributeData) WithFormat(format VertexFormat) *VertexAttributeData

WithFormat sets the format of per-vertex data for the attribute.

func (*VertexAttributeData) WithMap added in v0.17.0

WithMap sets the map.

func (*VertexAttributeData) WithStride added in v0.17.0

func (vad *VertexAttributeData) WithStride(stride int) *VertexAttributeData

WithStride sets the stride, in bytes, between vertex information for consecutive vertices in the data.

type VertexBufferLayout added in v0.17.0

type VertexBufferLayout struct {
	objref.Handle
}

VertexBufferLayout is an idiomatic wrapper over the Objective-C class MDLVertexBufferLayout.

A MDLVertexBufferLayout object describes layout information for a vertex buffer in a MDLMesh object. A collection of vertex layer objects, vertex attribute objects, and additional information forms a MDLVertexDescriptor object, which completely describes the layout of vertex buffers for a mesh.

func NewVertexBufferLayoutWithStride added in v0.17.0

func NewVertexBufferLayoutWithStride(stride int) *VertexBufferLayout

NewVertexBufferLayoutWithStride creates a new VertexBufferLayout.

func VertexBufferLayoutFromID added in v0.17.0

func VertexBufferLayoutFromID(id objc.ID) *VertexBufferLayout

VertexBufferLayoutFromID adopts an existing Objective-C object as a VertexBufferLayout (nil for 0), retaining it and registering a release finalizer.

func (*VertexBufferLayout) Description added in v0.17.0

func (vbl *VertexBufferLayout) Description() string

Description returns the object's -description text.

func (*VertexBufferLayout) IsEqual added in v0.17.0

func (vbl *VertexBufferLayout) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*VertexBufferLayout) IsKind added in v0.17.0

func (vbl *VertexBufferLayout) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*VertexBufferLayout) Stride added in v0.17.0

func (vbl *VertexBufferLayout) Stride() int

Stride returns the stride.

func (*VertexBufferLayout) String added in v0.17.0

func (vbl *VertexBufferLayout) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*VertexBufferLayout) WithStride added in v0.17.0

func (vbl *VertexBufferLayout) WithStride(stride int) *VertexBufferLayout

WithStride sets the stride, in bytes, between data for separate vertices in a vertex buffer.

type VertexDescriptor added in v0.17.0

type VertexDescriptor struct {
	objref.Handle
}

VertexDescriptor is an idiomatic wrapper over the Objective-C class MDLVertexDescriptor.

A description of the structure, format, and layout for vertex data buffers associated with a mesh.

func NewVertexDescriptorWithVertexDescriptor added in v0.17.0

func NewVertexDescriptorWithVertexDescriptor(vertexDescriptor *VertexDescriptor) *VertexDescriptor

NewVertexDescriptorWithVertexDescriptor creates a new vertex descriptor by performing a deep copy of the specified vertex descriptor.

func VertexDescriptorFromID added in v0.17.0

func VertexDescriptorFromID(id objc.ID) *VertexDescriptor

VertexDescriptorFromID adopts an existing Objective-C object as a VertexDescriptor (nil for 0), retaining it and registering a release finalizer.

func (*VertexDescriptor) AddOrReplaceAttribute added in v0.17.0

func (vd *VertexDescriptor) AddOrReplaceAttribute(attribute *VertexAttribute)

AddOrReplaceAttribute adds the specified vertex attribute to the vertex descriptor, replacing any existing attribute with the same name.

func (*VertexDescriptor) AttributeNamed added in v0.17.0

func (vd *VertexDescriptor) AttributeNamed(name string) *VertexAttribute

AttributeNamed returns the vertex attribute with the specified name in the vertex descriptor.

func (*VertexDescriptor) Attributes added in v0.17.0

func (vd *VertexDescriptor) Attributes() []*VertexAttribute

Attributes returns an array of MDLVertexAttribute objects ay describing the current attribute state of vertex buffers in an MDLMesh mesh

Attributes returns the collection as a Go slice.

func (*VertexDescriptor) Description added in v0.17.0

func (vd *VertexDescriptor) Description() string

Description returns the object's -description text.

func (*VertexDescriptor) IsEqual added in v0.17.0

func (vd *VertexDescriptor) IsEqual(other obj.Object) bool

IsEqual reports Objective-C equality (isEqual:) with another object.

func (*VertexDescriptor) IsKind added in v0.17.0

func (vd *VertexDescriptor) IsKind(className string) bool

IsKind reports whether the object is an instance of the named class or a subclass.

func (*VertexDescriptor) Layouts added in v0.17.0

func (vd *VertexDescriptor) Layouts() []*VertexBufferLayout

Layouts returns an array of MDLVertexBufferLayout An array describing the current layout state of vertex buffers in an MDLMesh mesh

Layouts returns the collection as a Go slice.

func (*VertexDescriptor) RemoveAttributeNamed added in v0.17.0

func (vd *VertexDescriptor) RemoveAttributeNamed(name string)

RemoveAttributeNamed remove the named attribute if it exists

func (*VertexDescriptor) Reset added in v0.17.0

func (vd *VertexDescriptor) Reset()

Reset resets a vertex descriptor to its default state.

func (*VertexDescriptor) SetPackedOffsets added in v0.17.0

func (vd *VertexDescriptor) SetPackedOffsets()

SetPackedOffsets sets the offset for each vertex attribute to the minimum value to pack vertex data together in a single buffer.

func (*VertexDescriptor) SetPackedStrides added in v0.17.0

func (vd *VertexDescriptor) SetPackedStrides()

SetPackedStrides sets the stride for each vertex layout to the minimum value to pack vertex data together in a single buffer.

func (*VertexDescriptor) String added in v0.17.0

func (vd *VertexDescriptor) String() string

String returns the object's -description text, so a wrapper prints usefully under fmt.

func (*VertexDescriptor) WithAttributes added in v0.17.0

func (vd *VertexDescriptor) WithAttributes(items ...*VertexAttribute) *VertexDescriptor

WithAttributes sets the list of vertex attributes described by the vertex descriptor.

func (*VertexDescriptor) WithLayouts added in v0.17.0

func (vd *VertexDescriptor) WithLayouts(items ...*VertexBufferLayout) *VertexDescriptor

WithLayouts sets the list of vertex buffer layouts described by the vertex descriptor.

type VertexFormat added in v0.17.0

type VertexFormat uint64

Descriptions of the data size and layout for a vertex attribute, used by the format property.

const (
	// The vertex attribute has just been initialized or its format is unknown.
	VertexFormatInvalid VertexFormat = 0
	// A bit mask for vertex attributes in packed vector formats.
	VertexFormatPackedBit VertexFormat = 4096
	// A bit mask for vertex attributes whose components are in 8-bit unsigned integer format.
	VertexFormatUCharBits VertexFormat = 65536
	// A bit mask for vertex attributes whose components are in 8-bit signed integer format.
	VertexFormatCharBits VertexFormat = 131072
	// A bit mask for vertex attributes whose components are in 8-bit unsigned normalized integer format.
	VertexFormatUCharNormalizedBits VertexFormat = 196608
	// A bit mask for vertex attributes whose components are in 8-bit signed normalized integer format.
	VertexFormatCharNormalizedBits VertexFormat = 262144
	// A bit mask for vertex attributes whose components are in 16-bit unsigned integer format.
	VertexFormatUShortBits VertexFormat = 327680
	// A bit mask for vertex attributes whose components are in 16-bit signed integer format.
	VertexFormatShortBits VertexFormat = 393216
	// A bit mask for vertex attributes whose components are in 16-bit unsigned normalized integer format.
	VertexFormatUShortNormalizedBits VertexFormat = 458752
	// A bit mask for vertex attributes whose components are in 16-bit signed normalized integer format.
	VertexFormatShortNormalizedBits VertexFormat = 524288
	// A bit mask for vertex attributes whose components are in 32-bit unsigned integer format.
	VertexFormatUIntBits VertexFormat = 589824
	// A bit mask for vertex attributes whose components are in 32-bit signed integer format.
	VertexFormatIntBits VertexFormat = 655360
	// A bit mask for vertex attributes whose components are in 16-bit floating-point format.
	VertexFormatHalfBits VertexFormat = 720896
	// A bit mask for vertex attributes whose components are in 32-bit floating-point format.
	VertexFormatFloatBits VertexFormat = 786432
	// The attribute value for each vertex is a scalar of unsigned 8-bit integer type.
	VertexFormatUChar VertexFormat = 65537
	// The attribute value for each vertex is a vector with 2 components, each of unsigned 8-bit integer type.
	VertexFormatUChar2 VertexFormat = 65538
	// The attribute value for each vertex is a vector with 3 components, each of unsigned 8-bit integer type.
	VertexFormatUChar3 VertexFormat = 65539
	// The attribute value for each vertex is a vector with 4 components, each of unsigned 8-bit integer type.
	VertexFormatUChar4 VertexFormat = 65540
	// The attribute value for each vertex is a scalar of signed 8-bit integer type.
	VertexFormatChar VertexFormat = 131073
	// The attribute value for each vertex is a vector with 2 components, each of signed 8-bit integer type.
	VertexFormatChar2 VertexFormat = 131074
	// The attribute value for each vertex is a vector with 3 components, each of signed 8-bit integer type.
	VertexFormatChar3 VertexFormat = 131075
	// The attribute value for each vertex is a vector with 4 components, each of signed 8-bit integer type.
	VertexFormatChar4 VertexFormat = 131076
	// The attribute value for each vertex is a normalized scalar of unsigned 8-bit integer type.
	VertexFormatUCharNormalized VertexFormat = 196609
	// The attribute value for each vertex is a vector with 2 components, each with a normalized value of unsigned 8-bit integer type.
	VertexFormatUChar2Normalized VertexFormat = 196610
	// The attribute value for each vertex is a vector with 3 components, each with a normalized value of unsigned 8-bit integer type.
	VertexFormatUChar3Normalized VertexFormat = 196611
	// The attribute value for each vertex is a vector with 4 components, each with a normalized value of unsigned 8-bit integer type.
	VertexFormatUChar4Normalized VertexFormat = 196612
	// The attribute value for each vertex is a normalized scalar of signed 8-bit integer type.
	VertexFormatCharNormalized VertexFormat = 262145
	// The attribute value for each vertex is a vector with 2 components, each with a normalized value of signed 8-bit integer type.
	VertexFormatChar2Normalized VertexFormat = 262146
	// The attribute value for each vertex is a vector with 3 components, each with a normalized value of signed 8-bit integer type.
	VertexFormatChar3Normalized VertexFormat = 262147
	// The attribute value for each vertex is a vector with 4 components, each with a normalized value of signed 8-bit integer type.
	VertexFormatChar4Normalized VertexFormat = 262148
	// The attribute value for each vertex is a scalar of unsigned 16-bit integer type.
	VertexFormatUShort VertexFormat = 327681
	// The attribute value for each vertex is a vector with 2 components, each of unsigned 16-bit integer type.
	VertexFormatUShort2 VertexFormat = 327682
	// The attribute value for each vertex is a vector with 3 components, each of unsigned 16-bit integer type.
	VertexFormatUShort3 VertexFormat = 327683
	// The attribute value for each vertex is a vector with 4 components, each of unsigned 16-bit integer type.
	VertexFormatUShort4 VertexFormat = 327684
	// The attribute value for each vertex is a scalar of signed 16-bit integer type.
	VertexFormatShort VertexFormat = 393217
	// The attribute value for each vertex is a vector with 2 components, each of signed 16-bit integer type.
	VertexFormatShort2 VertexFormat = 393218
	// The attribute value for each vertex is a vector with 3 components, each of signed 16-bit integer type.
	VertexFormatShort3 VertexFormat = 393219
	// The attribute value for each vertex is a vector with 4 components, each of signed 16-bit integer type.
	VertexFormatShort4 VertexFormat = 393220
	// The attribute value for each vertex is a normalized scalar of unsigned 16-bit integer type.
	VertexFormatUShortNormalized VertexFormat = 458753
	// The attribute value for each vertex is a vector with 2 components, each with a normalized value of unsigned 16-bit integer type.
	VertexFormatUShort2Normalized VertexFormat = 458754
	// The attribute value for each vertex is a vector with 3 components, each with a normalized value of unsigned 16-bit integer type.
	VertexFormatUShort3Normalized VertexFormat = 458755
	// The attribute value for each vertex is a vector with 4 components, each with a normalized value of unsigned 16-bit integer type.
	VertexFormatUShort4Normalized VertexFormat = 458756
	// The attribute value for each vertex is a normalized scalar of signed 16-bit integer type.
	VertexFormatShortNormalized VertexFormat = 524289
	// The attribute value for each vertex is a vector with 2 components, each with a normalized value of signed 16-bit integer type.
	VertexFormatShort2Normalized VertexFormat = 524290
	// The attribute value for each vertex is a vector with 3 components, each with a normalized value of signed 16-bit integer type.
	VertexFormatShort3Normalized VertexFormat = 524291
	// The attribute value for each vertex is a vector with 4 components, each with a normalized value of signed 16-bit integer type.
	VertexFormatShort4Normalized VertexFormat = 524292
	// The attribute value for each vertex is a scalar of unsigned 32-bit integer type.
	VertexFormatUInt VertexFormat = 589825
	// The attribute value for each vertex is a vector with 2 components, each of unsigned 32-bit integer type.
	VertexFormatUInt2 VertexFormat = 589826
	// The attribute value for each vertex is a vector with 3 components, each of unsigned 32-bit integer type.
	VertexFormatUInt3 VertexFormat = 589827
	// The attribute value for each vertex is a vector with 4 components, each of unsigned 32-bit integer type.
	VertexFormatUInt4 VertexFormat = 589828
	// The attribute value for each vertex is a scalar of signed 32-bit integer type.
	VertexFormatInt VertexFormat = 655361
	// The attribute value for each vertex is a vector with 2 components, each of signed 32-bit integer type.
	VertexFormatInt2 VertexFormat = 655362
	// The attribute value for each vertex is a vector with 3 components, each of signed 32-bit integer type.
	VertexFormatInt3 VertexFormat = 655363
	// The attribute value for each vertex is a vector with 4 components, each of signed 32-bit integer type.
	VertexFormatInt4 VertexFormat = 655364
	// The attribute value for each vertex is a scalar of 16-bit floating-point type.
	VertexFormatHalf VertexFormat = 720897
	// The attribute value for each vertex is a vector with 2 components, each of 16-bit floating-point type.
	VertexFormatHalf2 VertexFormat = 720898
	// The attribute value for each vertex is a vector with 3 components, each of 16-bit floating-point type.
	VertexFormatHalf3 VertexFormat = 720899
	// The attribute value for each vertex is a vector with 4 components, each of 16-bit floating-point type.
	VertexFormatHalf4 VertexFormat = 720900
	// The attribute value for each vertex is a scalar of 32-bit floating-point type.
	VertexFormatFloat VertexFormat = 786433
	// The attribute value for each vertex is a vector with 2 components, each of 32-bit floating-point type.
	VertexFormatFloat2 VertexFormat = 786434
	// The attribute value for each vertex is a vector with 3 components, each of 32-bit floating-point type.
	VertexFormatFloat3 VertexFormat = 786435
	// The attribute value for each vertex is a vector with 4 components, each of 32-bit floating-point type.
	VertexFormatFloat4 VertexFormat = 786436
	// The attribute value for each vertex is a packed vector with 4 components of signed integer type. The first three components are 10 bits each, and the fourth component is 2 bits.
	VertexFormatInt1010102Normalized VertexFormat = 659460
	// The attribute value for each vertex is a packed vector with 4 components of unsigned integer type. The first three components are 10 bits each, and the fourth component is 2 bits.
	VertexFormatUInt1010102Normalized VertexFormat = 593924
)

func (VertexFormat) String added in v0.17.0

func (e VertexFormat) String() string

String returns the VertexFormat constant's name, or its numeric form when the value is not a known constant.

type VirtualMemoryGuardExceptionCode added in v0.17.0

type VirtualMemoryGuardExceptionCode uint32
const (
	KGUARD_EXC_DEALLOC_GAP                   VirtualMemoryGuardExceptionCode = 1
	KGUARD_EXC_RECLAIM_COPYIO_FAILURE        VirtualMemoryGuardExceptionCode = 2
	KGUARD_EXC_RECLAIM_INDEX_FAILURE         VirtualMemoryGuardExceptionCode = 4
	KGUARD_EXC_RECLAIM_DEALLOCATE_FAILURE    VirtualMemoryGuardExceptionCode = 8
	KGUARD_EXC_RECLAIM_ACCOUNTING_FAILURE    VirtualMemoryGuardExceptionCode = 9
	KGUARD_EXC_SEC_IOPL_ON_EXEC_PAGE         VirtualMemoryGuardExceptionCode = 10
	KGUARD_EXC_SEC_EXEC_ON_IOPL_PAGE         VirtualMemoryGuardExceptionCode = 11
	KGUARD_EXC_SEC_UPL_WRITE_ON_EXEC_REGION  VirtualMemoryGuardExceptionCode = 12
	KGUARD_EXC_LARGE_ALLOCATION_TELEMETRY    VirtualMemoryGuardExceptionCode = 13
	KGUARD_EXC_SEC_ACCESS_FAULT              VirtualMemoryGuardExceptionCode = 98
	KGUARD_EXC_SEC_ASYNC_ACCESS_FAULT        VirtualMemoryGuardExceptionCode = 99
	KGUARD_EXC_SEC_COPY_DENIED               VirtualMemoryGuardExceptionCode = 100
	KGUARD_EXC_SEC_SHARING_DENIED            VirtualMemoryGuardExceptionCode = 101
	KGUARD_EXC_MTE_SYNC_FAULT                VirtualMemoryGuardExceptionCode = 200
	KGUARD_EXC_MTE_ASYNC_USER_FAULT          VirtualMemoryGuardExceptionCode = 201
	KGUARD_EXC_MTE_ASYNC_KERN_FAULT          VirtualMemoryGuardExceptionCode = 202
	KGUARD_EXC_GUARD_OBJECT_ASYNC_USER_FAULT VirtualMemoryGuardExceptionCode = 203
	KGUARD_EXC_GUARD_OBJECT_ASYNC_KERN_FAULT VirtualMemoryGuardExceptionCode = 204
)

func (VirtualMemoryGuardExceptionCode) String added in v0.17.0

String returns the VirtualMemoryGuardExceptionCode constant's name, or its numeric form when the value is not a known constant.

type VoxelArray added in v0.17.0

type VoxelArray struct {
	Object
}

VoxelArray is an idiomatic wrapper over the Objective-C class MDLVoxelArray.

It embeds Object, promoting that type's methods.

A model of a 3D object’s solid volume as a collection of voxels, or cubic units.

func NewVoxelArrayWithAssetDivisionsInteriorNBWidthExteriorNBWidthPatchRadius added in v0.17.0

func NewVoxelArrayWithAssetDivisionsInteriorNBWidthExteriorNBWidthPatchRadius(asset *Asset, divisions int, interiorNBWidth float32, exteriorNBWidth float32, patchRadius float32) *VoxelArray

NewVoxelArrayWithAssetDivisionsInteriorNBWidthExteriorNBWidthPatchRadius initializes a voxel array that models the volume of 3D objects in the specified asset, creating voxel shells for the specified distances from the object’s surface.

func NewVoxelArrayWithAssetDivisionsInteriorShellsExteriorShellsPatchRadius added in v0.17.0

func NewVoxelArrayWithAssetDivisionsInteriorShellsExteriorShellsPatchRadius(asset *Asset, divisions int, interiorShells int, exteriorShells int, patchRadius float32) *VoxelArray

NewVoxelArrayWithAssetDivisionsInteriorShellsExteriorShellsPatchRadius initializes a voxel array that models the volume of 3D objects in the specified asset and creates the specified number of voxel shells.

func NewVoxelArrayWithAssetDivisionsPatchRadius added in v0.17.0

func NewVoxelArrayWithAssetDivisionsPatchRadius(asset *Asset, divisions int, patchRadius float32) *VoxelArray

NewVoxelArrayWithAssetDivisionsPatchRadius initialize a voxel grid from an MDLAsset. Attempts to create a closed volume model by applying "patches" of radius patchRadius to any holes found in the orginal mesh. Choose a patch radius that will be large enough to fill in the largest hole in the model.

func VoxelArrayFromID added in v0.17.0

func VoxelArrayFromID(id objc.ID) *VoxelArray

VoxelArrayFromID adopts an existing Objective-C object as a VoxelArray (nil for 0), retaining it and registering a release finalizer.

func (*VoxelArray) CoarseMesh added in v0.17.0

func (va *VoxelArray) CoarseMesh() *Mesh

CoarseMesh creates a coarse mesh from the voxel grid

func (*VoxelArray) ConvertToSignedShellField added in v0.17.0

func (va *VoxelArray) ConvertToSignedShellField()

ConvertToSignedShellField converts volume grid into a signed shell field by surrounding the surface voxels, which have shell level values of zero, by an inner layer of voxels with shell level values of negative one and an outer layer of voxels with shell level values of positive one. The volume model must be closed in order to generate a signed shell field.

func (*VoxelArray) Count added in v0.17.0

func (va *VoxelArray) Count() int

Count returns the number of voxels in the grid

func (*VoxelArray) DifferenceWithVoxels added in v0.17.0

func (va *VoxelArray) DifferenceWithVoxels(voxels *VoxelArray)

DifferenceWithVoxels reduces the voxel array to cover only the portion of its volume not covered by another voxel array.

func (*VoxelArray) IndexOfSpatialLocation added in v0.18.0

func (va *VoxelArray) IndexOfSpatialLocation(location unsafe.Pointer) unsafe.Pointer

IndexOfSpatialLocation returns voxel information corresponding to the specified point in the world coordinate space of the asset from which the voxel array was created.

func (*VoxelArray) IntersectWithVoxels added in v0.17.0

func (va *VoxelArray) IntersectWithVoxels(voxels *VoxelArray)

IntersectWithVoxels reduces the voxel array to cover only the volume within both it and another voxel array.

func (*VoxelArray) IsValidSignedShellField added in v0.17.0

func (va *VoxelArray) IsValidSignedShellField() bool

IsValidSignedShellField reports whether the volume grid is in a valid signed shell field form. This property will be set to true after calling generateSignedShellField. All other methods that modify the voxel grid will cause this property to be set to false. Setting shellFieldInteriorThickness and shellFieldExteriorThickness will not affect the value of this property.

func (*VoxelArray) SetVoxelAtIndex added in v0.17.0

func (va *VoxelArray) SetVoxelAtIndex(index unsafe.Pointer)

SetVoxelAtIndex sets voxel characteristics at the specified index in the array.

func (*VoxelArray) SetVoxelsForMeshDivisionsInteriorNBWidthExteriorNBWidthPatchRadius added in v0.17.0

func (va *VoxelArray) SetVoxelsForMeshDivisionsInteriorNBWidthExteriorNBWidthPatchRadius(mesh *Mesh, divisions int, interiorNBWidth float32, exteriorNBWidth float32, patchRadius float32)

SetVoxelsForMeshDivisionsInteriorNBWidthExteriorNBWidthPatchRadius sets voxel values in the array to model the volume of the specified mesh and creates voxel shells for the specified distances from the object’s surface.

func (*VoxelArray) SetVoxelsForMeshDivisionsInteriorShellsExteriorShellsPatchRadius added in v0.17.0

func (va *VoxelArray) SetVoxelsForMeshDivisionsInteriorShellsExteriorShellsPatchRadius(mesh *Mesh, divisions int, interiorShells int, exteriorShells int, patchRadius float32)

SetVoxelsForMeshDivisionsInteriorShellsExteriorShellsPatchRadius sets voxel values in the array to model the volume of the specified mesh and creates the specified number of voxel shells.

func (*VoxelArray) SetVoxelsForMeshDivisionsPatchRadius added in v0.17.0

func (va *VoxelArray) SetVoxelsForMeshDivisionsPatchRadius(mesh *Mesh, divisions int, patchRadius float32)

SetVoxelsForMeshDivisionsPatchRadius set voxels corresponding to a mesh. Routine will attempt to create a closed volume model by applying "patches" of a given radius to any holes it may find in the mesh.

func (*VoxelArray) ShellFieldExteriorThickness added in v0.17.0

func (va *VoxelArray) ShellFieldExteriorThickness() float32

ShellFieldExteriorThickness returns if voxel grid is in a valid signed shell field form, sets the exterior thickness to the desired width, as measured from the model surface. If the voxel grid is not in a valid signed shell field form, the value of this property is zero.

func (*VoxelArray) ShellFieldInteriorThickness added in v0.17.0

func (va *VoxelArray) ShellFieldInteriorThickness() float32

ShellFieldInteriorThickness returns if voxel grid is in a valid signed shell field form, sets the interior thickness to the desired width, as measured from the model surface. If the voxel grid is not in a valid signed shell field form, the value of this property is zero.

func (*VoxelArray) SpatialLocationOfIndex added in v0.18.0

func (va *VoxelArray) SpatialLocationOfIndex(index unsafe.Pointer) unsafe.Pointer

SpatialLocationOfIndex returns the location of the specified voxel in world coordinate space.

func (*VoxelArray) UnionWithVoxels added in v0.17.0

func (va *VoxelArray) UnionWithVoxels(voxels *VoxelArray)

UnionWithVoxels extends the voxel array to also cover the volume of the specified voxel array.

func (*VoxelArray) VoxelExistsAtIndexAllowAnyXAllowAnyYAllowAnyZAllowAnyShell added in v0.17.0

func (va *VoxelArray) VoxelExistsAtIndexAllowAnyXAllowAnyYAllowAnyZAllowAnyShell(index unsafe.Pointer, allowAnyX bool, allowAnyY bool, allowAnyZ bool, allowAnyShell bool) bool

VoxelExistsAtIndexAllowAnyXAllowAnyYAllowAnyZAllowAnyShell returns a Boolean value indicating whether the voxel array contains voxel data for the specified index.

func (*VoxelArray) VoxelIndices added in v0.17.0

func (va *VoxelArray) VoxelIndices() []byte

VoxelIndices returns a data object containing all voxels within the voxel array.

func (*VoxelArray) WithHidden added in v0.17.0

func (va *VoxelArray) WithHidden(hidden bool) *VoxelArray

WithHidden sets a Boolean value indicating whether this object should be used in rendering.

func (*VoxelArray) WithInstance added in v0.17.0

func (va *VoxelArray) WithInstance(instance ObjectProvider) *VoxelArray

WithInstance sets the primary object, if applicable, of which this object is an instance.

func (*VoxelArray) WithParent added in v0.17.0

func (va *VoxelArray) WithParent(parent ObjectProvider) *VoxelArray

WithParent sets the parent object that contains this object.

func (*VoxelArray) WithShellFieldExteriorThickness added in v0.17.0

func (va *VoxelArray) WithShellFieldExteriorThickness(shellFieldExteriorThickness float32) *VoxelArray

WithShellFieldExteriorThickness sets if voxel grid is in a valid signed shell field form, sets the exterior thickness to the desired width, as measured from the model surface. If the voxel grid is not in a valid signed shell field form, the value of this property is zero.

func (*VoxelArray) WithShellFieldInteriorThickness added in v0.17.0

func (va *VoxelArray) WithShellFieldInteriorThickness(shellFieldInteriorThickness float32) *VoxelArray

WithShellFieldInteriorThickness sets if voxel grid is in a valid signed shell field form, sets the interior thickness to the desired width, as measured from the model surface. If the voxel grid is not in a valid signed shell field form, the value of this property is zero.

type XpcListenerCreateFlags added in v0.17.0

type XpcListenerCreateFlags uint64

Bitmask — values may be combined with |.

const (
	XpcListenerCreateFlagsNone            XpcListenerCreateFlags = 0
	XpcListenerCreateFlagsInactive        XpcListenerCreateFlags = 1
	XpcListenerCreateFlagsForceMach       XpcListenerCreateFlags = 2
	XpcListenerCreateFlagsForceXpcservice XpcListenerCreateFlags = 4
)

func (XpcListenerCreateFlags) String added in v0.17.0

func (e XpcListenerCreateFlags) String() string

String returns the XpcListenerCreateFlags constant's name, or its numeric form when the value is not a known constant.

type XpcSessionCreateFlags added in v0.17.0

type XpcSessionCreateFlags uint64

Bitmask — values may be combined with |.

const (
	XpcSessionCreateFlagsNone           XpcSessionCreateFlags = 0
	XpcSessionCreateFlagsInactive       XpcSessionCreateFlags = 1
	XpcSessionCreateFlagsMachPrivileged XpcSessionCreateFlags = 2
)

func (XpcSessionCreateFlags) String added in v0.17.0

func (e XpcSessionCreateFlags) String() string

String returns the XpcSessionCreateFlags constant's name, or its numeric form when the value is not a known constant.

Source Files

Jump to

Keyboard shortcuts

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