raylib

package module
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Oct 10, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

README

raylib

LLGo bindings for raylib 6.0.0. The generated package exposes the public raylib.h API, camera helpers from rcamera.h, and raylib value types and constants. Functions that take a raylib struct as their first argument are available as methods where LLGo can represent that form.

Installation

Install LLGo, raylib, and pkg-config:

brew install raylib pkg-config

The binding links with pkg-config --libs raylib and therefore uses the raylib installation selected by your PKG_CONFIG_PATH.

Usage

package main

import (
	"github.com/goplus/lib/c"
	"github.com/llarhub/raylib"
)

func main() {
	raylib.InitWindow(800, 450, c.AllocaCStr("raylib + LLGo"))
	defer raylib.CloseWindow()
	for !raylib.WindowShouldClose() {
		raylib.BeginDrawing()
		raylib.RAYWHITE.ClearBackground()
		raylib.EndDrawing()
	}
}

The package also supports headless data operations such as raylib.GenImageColor; call the generated Image.Unload method when an image is no longer needed.

Verification

Run the standard Go check and the LLGo tests from the repository root:

go test ./...
llgo test ./...

The LLGo test exercises image generation, resource release, generated constants, and value type layout. The binding is generated from the raylib headers installed on the build machine, so keep the raylib API version aligned with the headers and library used at link time.

Documentation

Index

Constants

View Source
const LLGoPackage = "link: $(pkg-config --libs raylib); -lraylib"
View Source
const RAYLIB_VERSION = "6.0"
View Source
const RAYLIB_VERSION_MAJOR = 6
View Source
const RAYLIB_VERSION_MINOR = 0
View Source
const RAYLIB_VERSION_PATCH = 0

Variables

This section is empty.

Functions

func AttachAudioMixedProcessor

func AttachAudioMixedProcessor(processor AudioCallback)

func BeginBlendMode

func BeginBlendMode(mode c.Int)

func BeginDrawing

func BeginDrawing()

func BeginScissorMode

func BeginScissorMode(x c.Int, y c.Int, width c.Int, height c.Int)

func ChangeDirectory

func ChangeDirectory(dirPath *c.Char) bool

func CheckCollisionBoxes

func CheckCollisionBoxes(box1 BoundingBox, box2 BoundingBox) bool

func CheckCollisionRecs

func CheckCollisionRecs(rec1 Rectangle, rec2 Rectangle) bool

Basic shapes collision detection functions

func ClearWindowState

func ClearWindowState(flags c.Uint)

func CloseAudioDevice

func CloseAudioDevice()

func CloseWindow

func CloseWindow()

func CodepointToUTF8

func CodepointToUTF8(codepoint c.Int, utf8Size *c.Int) *c.Char

func ColorIsEqual

func ColorIsEqual(col1 Color, col2 Color) bool

Color/pixel related functions

func CompressData

func CompressData(data *uint8, dataSize c.Int, compDataSize *c.Int) *uint8

Compression/Encoding functionality

func ComputeCRC32

func ComputeCRC32(data *uint8, dataSize c.Int) c.Uint

func ComputeMD5

func ComputeMD5(data *uint8, dataSize c.Int) *c.Uint

func ComputeSHA1

func ComputeSHA1(data *uint8, dataSize c.Int) *c.Uint

func ComputeSHA256

func ComputeSHA256(data *uint8, dataSize c.Int) *c.Uint

func DecodeDataBase64

func DecodeDataBase64(text *c.Char, outputSize *c.Int) *uint8

func DecompressData

func DecompressData(compData *uint8, compDataSize c.Int, dataSize *c.Int) *uint8

func DetachAudioMixedProcessor

func DetachAudioMixedProcessor(processor AudioCallback)

func DirectoryExists

func DirectoryExists(dirPath *c.Char) bool

func DisableCursor

func DisableCursor()

func DisableEventWaiting

func DisableEventWaiting()

func DrawCircle

func DrawCircle(centerX c.Int, centerY c.Int, radius c.Float, color Color)

func DrawCircleLines

func DrawCircleLines(centerX c.Int, centerY c.Int, radius c.Float, color Color)

func DrawEllipse

func DrawEllipse(centerX c.Int, centerY c.Int, radiusH c.Float, radiusV c.Float, color Color)

func DrawEllipseLines

func DrawEllipseLines(centerX c.Int, centerY c.Int, radiusH c.Float, radiusV c.Float, color Color)

func DrawFPS

func DrawFPS(posX c.Int, posY c.Int)

Text drawing functions

func DrawGrid

func DrawGrid(slices c.Int, spacing c.Float)

func DrawLine

func DrawLine(startPosX c.Int, startPosY c.Int, endPosX c.Int, endPosY c.Int, color Color)

func DrawPixel

func DrawPixel(posX c.Int, posY c.Int, color Color)

Basic shapes drawing functions

func DrawRectangle

func DrawRectangle(posX c.Int, posY c.Int, width c.Int, height c.Int, color Color)

func DrawRectangleGradientH

func DrawRectangleGradientH(posX c.Int, posY c.Int, width c.Int, height c.Int, left Color, right Color)

func DrawRectangleGradientV

func DrawRectangleGradientV(posX c.Int, posY c.Int, width c.Int, height c.Int, top Color, bottom Color)

func DrawRectangleLines

func DrawRectangleLines(posX c.Int, posY c.Int, width c.Int, height c.Int, color Color)

func DrawText

func DrawText(text *c.Char, posX c.Int, posY c.Int, fontSize c.Int, color Color)

func EnableCursor

func EnableCursor()

func EnableEventWaiting

func EnableEventWaiting()

func EncodeDataBase64

func EncodeDataBase64(data *uint8, dataSize c.Int, outputSize *c.Int) *c.Char

func EndBlendMode

func EndBlendMode()

func EndDrawing

func EndDrawing()

func EndMode2D

func EndMode2D()

func EndMode3D

func EndMode3D()

func EndScissorMode

func EndScissorMode()

func EndShaderMode

func EndShaderMode()

func EndTextureMode

func EndTextureMode()

func EndVrStereoMode

func EndVrStereoMode()

func ExportDataAsCode

func ExportDataAsCode(data *uint8, dataSize c.Int, fileName *c.Char) bool

func FileCopy

func FileCopy(srcPath *c.Char, dstPath *c.Char) c.Int

func FileExists

func FileExists(fileName *c.Char) bool

func FileMove

func FileMove(srcPath *c.Char, dstPath *c.Char) c.Int

func FileRemove

func FileRemove(fileName *c.Char) c.Int

func FileRename

func FileRename(fileName *c.Char, fileRename *c.Char) c.Int

func FileTextFindIndex

func FileTextFindIndex(fileName *c.Char, search *c.Char) c.Int

func FileTextReplace

func FileTextReplace(fileName *c.Char, search *c.Char, replacement *c.Char) c.Int

func GetApplicationDirectory

func GetApplicationDirectory() *c.Char

func GetCharPressed

func GetCharPressed() c.Int

func GetClipboardText

func GetClipboardText() *c.Char

func GetCodepoint

func GetCodepoint(text *c.Char, codepointSize *c.Int) c.Int

func GetCodepointCount

func GetCodepointCount(text *c.Char) c.Int

func GetCodepointNext

func GetCodepointNext(text *c.Char, codepointSize *c.Int) c.Int

func GetCodepointPrevious

func GetCodepointPrevious(text *c.Char, codepointSize *c.Int) c.Int

func GetCurrentMonitor

func GetCurrentMonitor() c.Int

func GetDirectoryFileCount

func GetDirectoryFileCount(dirPath *c.Char) c.Uint

func GetDirectoryFileCountEx

func GetDirectoryFileCountEx(basePath *c.Char, filter *c.Char, scanSubdirs bool) c.Uint

func GetDirectoryPath

func GetDirectoryPath(filePath *c.Char) *c.Char

func GetFPS

func GetFPS() c.Int

func GetFileExtension

func GetFileExtension(fileName *c.Char) *c.Char

func GetFileLength

func GetFileLength(fileName *c.Char) c.Int

func GetFileModTime

func GetFileModTime(fileName *c.Char) c.Long

func GetFileName

func GetFileName(filePath *c.Char) *c.Char

func GetFileNameWithoutExt

func GetFileNameWithoutExt(filePath *c.Char) *c.Char

func GetFrameTime

func GetFrameTime() c.Float

func GetGamepadAxisCount

func GetGamepadAxisCount(gamepad c.Int) c.Int

func GetGamepadAxisMovement

func GetGamepadAxisMovement(gamepad c.Int, axis c.Int) c.Float

func GetGamepadButtonPressed

func GetGamepadButtonPressed() c.Int

func GetGamepadName

func GetGamepadName(gamepad c.Int) *c.Char

func GetGestureDetected

func GetGestureDetected() c.Int

func GetGestureDragAngle

func GetGestureDragAngle() c.Float

func GetGestureHoldDuration

func GetGestureHoldDuration() c.Float

func GetGesturePinchAngle

func GetGesturePinchAngle() c.Float

func GetKeyName

func GetKeyName(key c.Int) *c.Char

func GetKeyPressed

func GetKeyPressed() c.Int

func GetMasterVolume

func GetMasterVolume() c.Float

func GetMonitorCount

func GetMonitorCount() c.Int

func GetMonitorHeight

func GetMonitorHeight(monitor c.Int) c.Int

func GetMonitorName

func GetMonitorName(monitor c.Int) *c.Char

func GetMonitorPhysicalHeight

func GetMonitorPhysicalHeight(monitor c.Int) c.Int

func GetMonitorPhysicalWidth

func GetMonitorPhysicalWidth(monitor c.Int) c.Int

func GetMonitorRefreshRate

func GetMonitorRefreshRate(monitor c.Int) c.Int

func GetMonitorWidth

func GetMonitorWidth(monitor c.Int) c.Int

func GetMouseWheelMove

func GetMouseWheelMove() c.Float

func GetMouseX

func GetMouseX() c.Int

func GetMouseY

func GetMouseY() c.Int

func GetPixelDataSize

func GetPixelDataSize(width c.Int, height c.Int, format c.Int) c.Int

func GetPrevDirectoryPath

func GetPrevDirectoryPath(dirPath *c.Char) *c.Char

func GetRandomValue

func GetRandomValue(min c.Int, max c.Int) c.Int

func GetRenderHeight

func GetRenderHeight() c.Int

func GetRenderWidth

func GetRenderWidth() c.Int

func GetScreenHeight

func GetScreenHeight() c.Int

func GetScreenWidth

func GetScreenWidth() c.Int

func GetTextBetween

func GetTextBetween(text *c.Char, begin *c.Char, end *c.Char) *c.Char

func GetTime

func GetTime() c.Double

func GetTouchPointCount

func GetTouchPointCount() c.Int

func GetTouchPointId

func GetTouchPointId(index c.Int) c.Int

func GetTouchX

func GetTouchX() c.Int

Input-related functions: touch

func GetTouchY

func GetTouchY() c.Int

func GetWindowHandle

func GetWindowHandle() unsafe.Pointer

func GetWorkingDirectory

func GetWorkingDirectory() *c.Char

func HideCursor

func HideCursor()

func InitAudioDevice

func InitAudioDevice()

Audio device management functions

func InitWindow

func InitWindow(width c.Int, height c.Int, title *c.Char)

Window-related functions

func IsAudioDeviceReady

func IsAudioDeviceReady() bool

func IsCursorHidden

func IsCursorHidden() bool

func IsCursorOnScreen

func IsCursorOnScreen() bool

func IsFileDropped

func IsFileDropped() bool

func IsFileExtension

func IsFileExtension(fileName *c.Char, ext *c.Char) bool

func IsFileNameValid

func IsFileNameValid(fileName *c.Char) bool

func IsGamepadAvailable

func IsGamepadAvailable(gamepad c.Int) bool

Input-related functions: gamepads

func IsGamepadButtonDown

func IsGamepadButtonDown(gamepad c.Int, button c.Int) bool

func IsGamepadButtonPressed

func IsGamepadButtonPressed(gamepad c.Int, button c.Int) bool

func IsGamepadButtonReleased

func IsGamepadButtonReleased(gamepad c.Int, button c.Int) bool

func IsGamepadButtonUp

func IsGamepadButtonUp(gamepad c.Int, button c.Int) bool

func IsGestureDetected

func IsGestureDetected(gesture c.Uint) bool

func IsKeyDown

func IsKeyDown(key c.Int) bool

func IsKeyPressed

func IsKeyPressed(key c.Int) bool

Input-related functions: keyboard

func IsKeyPressedRepeat

func IsKeyPressedRepeat(key c.Int) bool

func IsKeyReleased

func IsKeyReleased(key c.Int) bool

func IsKeyUp

func IsKeyUp(key c.Int) bool

func IsMouseButtonDown

func IsMouseButtonDown(button c.Int) bool

func IsMouseButtonPressed

func IsMouseButtonPressed(button c.Int) bool

Input-related functions: mouse

func IsMouseButtonReleased

func IsMouseButtonReleased(button c.Int) bool

func IsMouseButtonUp

func IsMouseButtonUp(button c.Int) bool

func IsPathFile

func IsPathFile(path *c.Char) bool

func IsWindowFocused

func IsWindowFocused() bool

func IsWindowFullscreen

func IsWindowFullscreen() bool

func IsWindowHidden

func IsWindowHidden() bool

func IsWindowMaximized

func IsWindowMaximized() bool

func IsWindowMinimized

func IsWindowMinimized() bool

func IsWindowReady

func IsWindowReady() bool

func IsWindowResized

func IsWindowResized() bool

func IsWindowState

func IsWindowState(flag c.Uint) bool

func LoadCodepoints

func LoadCodepoints(text *c.Char, count *c.Int) *c.Int

func LoadFileData

func LoadFileData(fileName *c.Char, dataSize *c.Int) *uint8

File system management functions

func LoadFileText

func LoadFileText(fileName *c.Char) *c.Char

func LoadRandomSequence

func LoadRandomSequence(count c.Uint, min c.Int, max c.Int) *c.Int

func LoadTextLines

func LoadTextLines(text *c.Char, count *c.Int) **c.Char

Text strings management functions (no UTF-8 strings, only byte chars) WARNING 1: Most of these functions use internal static buffers[], it's recommended to store returned data on user-side for re-use WARNING 2: Some functions allocate memory internally for the returned strings, those strings must be freed by user using MemFree()

func LoadUTF8

func LoadUTF8(codepoints *c.Int, length c.Int) *c.Char

Text codepoints management functions (unicode characters)

func MakeDirectory

func MakeDirectory(dirPath *c.Char) c.Int

func MaximizeWindow

func MaximizeWindow()

func MeasureText

func MeasureText(text *c.Char, fontSize c.Int) c.Int

func MemAlloc

func MemAlloc(size c.Uint) unsafe.Pointer

Memory management, using internal allocators

func MemFree

func MemFree(ptr unsafe.Pointer)

func MemRealloc

func MemRealloc(ptr unsafe.Pointer, size c.Uint) unsafe.Pointer

func MinimizeWindow

func MinimizeWindow()

func OpenURL

func OpenURL(url *c.Char)

func PollInputEvents

func PollInputEvents()

func RestoreWindow

func RestoreWindow()

func SaveFileData

func SaveFileData(fileName *c.Char, data unsafe.Pointer, dataSize c.Int) bool

func SaveFileText

func SaveFileText(fileName *c.Char, text *c.Char) bool

func SetAudioStreamBufferSizeDefault

func SetAudioStreamBufferSizeDefault(size c.Int)

func SetAutomationEventBaseFrame

func SetAutomationEventBaseFrame(frame c.Int)

func SetClipboardText

func SetClipboardText(text *c.Char)

func SetConfigFlags

func SetConfigFlags(flags c.Uint)

func SetExitKey

func SetExitKey(key c.Int)

func SetGamepadMappings

func SetGamepadMappings(mappings *c.Char) c.Int

func SetGamepadVibration

func SetGamepadVibration(gamepad c.Int, leftMotor c.Float, rightMotor c.Float, duration c.Float)

func SetGesturesEnabled

func SetGesturesEnabled(flags c.Uint)

------------------------------------------------------------------------------------ Gestures and Touch Handling Functions (Module: rgestures) ------------------------------------------------------------------------------------

func SetLoadFileDataCallback

func SetLoadFileDataCallback(callback LoadFileDataCallback)

File access custom callbacks WARNING: Callbacks setup is intended for advanced users

func SetLoadFileTextCallback

func SetLoadFileTextCallback(callback LoadFileTextCallback)

func SetMasterVolume

func SetMasterVolume(volume c.Float)

func SetMouseCursor

func SetMouseCursor(cursor c.Int)

func SetMouseOffset

func SetMouseOffset(offsetX c.Int, offsetY c.Int)

func SetMousePosition

func SetMousePosition(x c.Int, y c.Int)

func SetMouseScale

func SetMouseScale(scaleX c.Float, scaleY c.Float)

func SetPixelColor

func SetPixelColor(dstPtr unsafe.Pointer, color Color, format c.Int)

func SetRandomSeed

func SetRandomSeed(seed c.Uint)

Random values generation functions

func SetSaveFileDataCallback

func SetSaveFileDataCallback(callback SaveFileDataCallback)

func SetSaveFileTextCallback

func SetSaveFileTextCallback(callback SaveFileTextCallback)

func SetTargetFPS

func SetTargetFPS(fps c.Int)

Timing-related functions

func SetTextLineSpacing

func SetTextLineSpacing(spacing c.Int)

Text font info functions

func SetTraceLogCallback

func SetTraceLogCallback(callback TraceLogCallback)

func SetTraceLogLevel

func SetTraceLogLevel(logLevel c.Int)

Logging system

func SetWindowFocused

func SetWindowFocused()

func SetWindowMaxSize

func SetWindowMaxSize(width c.Int, height c.Int)

func SetWindowMinSize

func SetWindowMinSize(width c.Int, height c.Int)

func SetWindowMonitor

func SetWindowMonitor(monitor c.Int)

func SetWindowOpacity

func SetWindowOpacity(opacity c.Float)

func SetWindowPosition

func SetWindowPosition(x c.Int, y c.Int)

func SetWindowSize

func SetWindowSize(width c.Int, height c.Int)

func SetWindowState

func SetWindowState(flags c.Uint)

func SetWindowTitle

func SetWindowTitle(title *c.Char)

func ShowCursor

func ShowCursor()

Cursor-related functions

func StartAutomationEventRecording

func StartAutomationEventRecording()

func StopAutomationEventRecording

func StopAutomationEventRecording()

func SwapScreenBuffer

func SwapScreenBuffer()

Custom frame control functions NOTE: Those functions are intended for advanced users that want full control over the frame processing By default EndDrawing() does this job: draws everything + SwapScreenBuffer() + manage frame timing + PollInputEvents() To avoid that behaviour and control frame processes manually, enable in config.h: SUPPORT_CUSTOM_FRAME_CONTROL

func TakeScreenshot

func TakeScreenshot(fileName *c.Char)

Misc. functions

func TextAppend

func TextAppend(text *c.Char, append *c.Char, position *c.Int)

func TextCopy

func TextCopy(dst *c.Char, src *c.Char) c.Int

func TextFindIndex

func TextFindIndex(text *c.Char, search *c.Char) c.Int

func TextFormat

func TextFormat(text *c.Char, __llgo_va_list ...any) *c.Char

func TextInsert

func TextInsert(text *c.Char, insert *c.Char, position c.Int) *c.Char

func TextInsertAlloc

func TextInsertAlloc(text *c.Char, insert *c.Char, position c.Int) *c.Char

func TextIsEqual

func TextIsEqual(text1 *c.Char, text2 *c.Char) bool

func TextJoin

func TextJoin(textList **c.Char, count c.Int, delimiter *c.Char) *c.Char

func TextLength

func TextLength(text *c.Char) c.Uint

func TextRemoveSpaces

func TextRemoveSpaces(text *c.Char) *c.Char

func TextReplace

func TextReplace(text *c.Char, search *c.Char, replacement *c.Char) *c.Char

func TextReplaceAlloc

func TextReplaceAlloc(text *c.Char, search *c.Char, replacement *c.Char) *c.Char

func TextReplaceBetween

func TextReplaceBetween(text *c.Char, begin *c.Char, end *c.Char, replacement *c.Char) *c.Char

func TextReplaceBetweenAlloc

func TextReplaceBetweenAlloc(text *c.Char, begin *c.Char, end *c.Char, replacement *c.Char) *c.Char

func TextSplit

func TextSplit(text *c.Char, delimiter c.Char, count *c.Int) **c.Char

func TextSubtext

func TextSubtext(text *c.Char, position c.Int, length c.Int) *c.Char

func TextToCamel

func TextToCamel(text *c.Char) *c.Char

func TextToFloat

func TextToFloat(text *c.Char) c.Float

func TextToInteger

func TextToInteger(text *c.Char) c.Int

func TextToLower

func TextToLower(text *c.Char) *c.Char

func TextToPascal

func TextToPascal(text *c.Char) *c.Char

func TextToSnake

func TextToSnake(text *c.Char) *c.Char

func TextToUpper

func TextToUpper(text *c.Char) *c.Char

func ToggleBorderlessWindowed

func ToggleBorderlessWindowed()

func ToggleFullscreen

func ToggleFullscreen()

func TraceLog

func TraceLog(logLevel c.Int, text *c.Char, __llgo_va_list ...any)

func UnloadCodepoints

func UnloadCodepoints(codepoints *c.Int)

func UnloadFileData

func UnloadFileData(data *uint8)

func UnloadFileText

func UnloadFileText(text *c.Char)

func UnloadRandomSequence

func UnloadRandomSequence(sequence *c.Int)

func UnloadTextLines

func UnloadTextLines(text **c.Char, lineCount c.Int)

func UnloadUTF8

func UnloadUTF8(text *c.Char)

func UnloadWaveSamples

func UnloadWaveSamples(samples *c.Float)

func WaitTime

func WaitTime(seconds c.Double)

func WindowShouldClose

func WindowShouldClose() bool

Types

type AudioCallback

type AudioCallback = func(_llcppg_param1 unsafe.Pointer, _llcppg_param2 c.Uint)

------------------------------------------------------------------------------------ Audio Loading and Playing Functions (Module: audio) ------------------------------------------------------------------------------------

llgo:type C

type AudioStream

type AudioStream struct {
	Buffer     *RAudioBuffer
	Processor  *RAudioProcessor
	SampleRate c.Uint
	SampleSize c.Uint
	Channels   c.Uint
}

AudioStream, custom audio stream

func LoadAudioStream

func LoadAudioStream(sampleRate c.Uint, sampleSize c.Uint, channels c.Uint) AudioStream

AudioStream management functions

func (AudioStream) AttachAudioStreamProcessor

func (self AudioStream) AttachAudioStreamProcessor(processor AudioCallback)

llgo:link AudioStream.AttachAudioStreamProcessor C.AttachAudioStreamProcessor

func (AudioStream) DetachAudioStreamProcessor

func (self AudioStream) DetachAudioStreamProcessor(processor AudioCallback)

llgo:link AudioStream.DetachAudioStreamProcessor C.DetachAudioStreamProcessor

func (AudioStream) IsAudioStreamPlaying

func (self AudioStream) IsAudioStreamPlaying() bool

llgo:link AudioStream.IsAudioStreamPlaying C.IsAudioStreamPlaying

func (AudioStream) IsAudioStreamProcessed

func (self AudioStream) IsAudioStreamProcessed() bool

llgo:link AudioStream.IsAudioStreamProcessed C.IsAudioStreamProcessed

func (AudioStream) IsAudioStreamValid

func (self AudioStream) IsAudioStreamValid() bool

llgo:link AudioStream.IsAudioStreamValid C.IsAudioStreamValid

func (AudioStream) Pause

func (self AudioStream) Pause()

llgo:link AudioStream.Pause C.PauseAudioStream

func (AudioStream) Play

func (self AudioStream) Play()

llgo:link AudioStream.Play C.PlayAudioStream

func (AudioStream) Resume

func (self AudioStream) Resume()

llgo:link AudioStream.Resume C.ResumeAudioStream

func (AudioStream) SetAudioStreamCallback

func (self AudioStream) SetAudioStreamCallback(callback AudioCallback)

llgo:link AudioStream.SetAudioStreamCallback C.SetAudioStreamCallback

func (AudioStream) SetAudioStreamPan

func (self AudioStream) SetAudioStreamPan(pan c.Float)

llgo:link AudioStream.SetAudioStreamPan C.SetAudioStreamPan

func (AudioStream) SetAudioStreamPitch

func (self AudioStream) SetAudioStreamPitch(pitch c.Float)

llgo:link AudioStream.SetAudioStreamPitch C.SetAudioStreamPitch

func (AudioStream) SetAudioStreamVolume

func (self AudioStream) SetAudioStreamVolume(volume c.Float)

llgo:link AudioStream.SetAudioStreamVolume C.SetAudioStreamVolume

func (AudioStream) Stop

func (self AudioStream) Stop()

llgo:link AudioStream.Stop C.StopAudioStream

func (AudioStream) Unload

func (self AudioStream) Unload()

llgo:link AudioStream.Unload C.UnloadAudioStream

func (AudioStream) Update

func (self AudioStream) Update(data unsafe.Pointer, frameCount c.Int)

llgo:link AudioStream.Update C.UpdateAudioStream

type AutomationEvent

type AutomationEvent struct {
	Frame  c.Uint
	Type   c.Uint
	Params [4]c.Int
}

Automation event

func (AutomationEvent) Play

func (self AutomationEvent) Play()

llgo:link AutomationEvent.Play C.PlayAutomationEvent

type AutomationEventList

type AutomationEventList struct {
	Capacity c.Uint
	Count    c.Uint
	Events   *AutomationEvent
}

Automation event list

func LoadAutomationEventList

func LoadAutomationEventList(fileName *c.Char) AutomationEventList

Automation events functionality

func (AutomationEventList) Export

func (self AutomationEventList) Export(fileName *c.Char) bool

llgo:link AutomationEventList.Export C.ExportAutomationEventList

func (*AutomationEventList) Set

func (self *AutomationEventList) Set()

llgo:link (*AutomationEventList).Set C.SetAutomationEventList

func (AutomationEventList) Unload

func (self AutomationEventList) Unload()

llgo:link AutomationEventList.Unload C.UnloadAutomationEventList

type BlendMode

type BlendMode c.Uint

Color blending modes (pre-defined)

const (
	// Blend textures considering alpha (default)
	BLEND_ALPHA BlendMode = 0
	// Blend textures adding colors
	BLEND_ADDITIVE BlendMode = 1
	// Blend textures multiplying colors
	BLEND_MULTIPLIED BlendMode = 2
	// Blend textures adding colors (alternative)
	BLEND_ADD_COLORS BlendMode = 3
	// Blend textures subtracting colors (alternative)
	BLEND_SUBTRACT_COLORS BlendMode = 4
	// Blend premultiplied textures considering alpha
	BLEND_ALPHA_PREMULTIPLY BlendMode = 5
	// Blend textures using custom src/dst factors (use rlSetBlendFactors())
	BLEND_CUSTOM BlendMode = 6
	// Blend textures using custom rgb/alpha separate src/dst factors (use rlSetBlendFactorsSeparate())
	BLEND_CUSTOM_SEPARATE BlendMode = 7
)

type BoneInfo

type BoneInfo struct {
	Name   [32]c.Char
	Parent c.Int
}

Bone, skeletal animation bone

type BoundingBox

type BoundingBox struct {
	Min Vector3
	Max Vector3
}

BoundingBox

func (BoundingBox) CheckCollisionBoxSphere

func (self BoundingBox) CheckCollisionBoxSphere(center Vector3, radius c.Float) bool

llgo:link BoundingBox.CheckCollisionBoxSphere C.CheckCollisionBoxSphere

func (BoundingBox) Draw

func (self BoundingBox) Draw(color Color)

llgo:link BoundingBox.Draw C.DrawBoundingBox

type Camera

type Camera = Camera3D

func (Camera) DrawBillboard

func (self Camera) DrawBillboard(texture Texture2D, position Vector3, scale c.Float, tint Color)

llgo:link Camera.DrawBillboard C.DrawBillboard

func (Camera) DrawBillboardPro

func (self Camera) DrawBillboardPro(texture Texture2D, source Rectangle, position Vector3, up Vector3, size Vector2, origin Vector2, rotation c.Float, tint Color)

llgo:link Camera.DrawBillboardPro C.DrawBillboardPro

func (Camera) DrawBillboardRec

func (self Camera) DrawBillboardRec(texture Texture2D, source Rectangle, position Vector3, size Vector2, tint Color)

llgo:link Camera.DrawBillboardRec C.DrawBillboardRec

func (*Camera) Forward

func (self *Camera) Forward() Vector3

llgo:link (*Camera).Forward C.GetCameraForward

func (*Camera) GetCameraUp

func (self *Camera) GetCameraUp() Vector3

llgo:link (*Camera).GetCameraUp C.GetCameraUp

func (Camera) Matrix

func (self Camera) Matrix() Matrix

llgo:link Camera.Matrix C.GetCameraMatrix

func (*Camera) MoveForward

func (self *Camera) MoveForward(distance c.Float, moveInWorldPlane bool)

Camera movement

llgo:link (*Camera).MoveForward C.CameraMoveForward

func (*Camera) MoveRight

func (self *Camera) MoveRight(distance c.Float, moveInWorldPlane bool)

llgo:link (*Camera).MoveRight C.CameraMoveRight

func (*Camera) MoveToTarget

func (self *Camera) MoveToTarget(delta c.Float)

llgo:link (*Camera).MoveToTarget C.CameraMoveToTarget

func (*Camera) MoveUp

func (self *Camera) MoveUp(distance c.Float)

llgo:link (*Camera).MoveUp C.CameraMoveUp

func (*Camera) Pitch

func (self *Camera) Pitch(angle c.Float, lockView bool, rotateAroundTarget bool, rotateUp bool)

llgo:link (*Camera).Pitch C.CameraPitch

func (*Camera) ProjectionMatrix

func (self *Camera) ProjectionMatrix(aspect c.Float) Matrix

llgo:link (*Camera).ProjectionMatrix C.GetCameraProjectionMatrix

func (*Camera) Right

func (self *Camera) Right() Vector3

llgo:link (*Camera).Right C.GetCameraRight

func (*Camera) Roll

func (self *Camera) Roll(angle c.Float)

llgo:link (*Camera).Roll C.CameraRoll

func (*Camera) Update

func (self *Camera) Update(mode c.Int)

------------------------------------------------------------------------------------ Camera System Functions (Module: rcamera) ------------------------------------------------------------------------------------

llgo:link (*Camera).Update C.UpdateCamera

func (*Camera) UpdateCameraPro

func (self *Camera) UpdateCameraPro(movement Vector3, rotation Vector3, zoom c.Float)

llgo:link (*Camera).UpdateCameraPro C.UpdateCameraPro

func (*Camera) ViewMatrix

func (self *Camera) ViewMatrix() Matrix

llgo:link (*Camera).ViewMatrix C.GetCameraViewMatrix

func (*Camera) Yaw

func (self *Camera) Yaw(angle c.Float, rotateAroundTarget bool)

Camera rotation

llgo:link (*Camera).Yaw C.CameraYaw

type Camera2D

type Camera2D struct {
	Offset   Vector2
	Target   Vector2
	Rotation c.Float
	Zoom     c.Float
}

Camera2D, defines position/orientation in 2d space

func (Camera2D) BeginMode2D

func (self Camera2D) BeginMode2D()

llgo:link Camera2D.BeginMode2D C.BeginMode2D

func (Camera2D) CameraMatrix2D

func (self Camera2D) CameraMatrix2D() Matrix

llgo:link Camera2D.CameraMatrix2D C.GetCameraMatrix2D

type Camera3D

type Camera3D struct {
	Position   Vector3
	Target     Vector3
	Up         Vector3
	Fovy       c.Float
	Projection c.Int
}

Camera, defines position/orientation in 3d space

func (Camera3D) BeginMode3D

func (self Camera3D) BeginMode3D()

llgo:link Camera3D.BeginMode3D C.BeginMode3D

type CameraMode

type CameraMode c.Uint

Camera system modes

const (
	// Camera custom, controlled by user (UpdateCamera() does nothing)
	CAMERA_CUSTOM CameraMode = 0
	// Camera free mode
	CAMERA_FREE CameraMode = 1
	// Camera orbital, around target, zoom supported
	CAMERA_ORBITAL CameraMode = 2
	// Camera first person
	CAMERA_FIRST_PERSON CameraMode = 3
	// Camera third person
	CAMERA_THIRD_PERSON CameraMode = 4
)

type CameraProjection

type CameraProjection c.Uint

Camera projection

const (
	// Perspective projection
	CAMERA_PERSPECTIVE CameraProjection = 0
	// Orthographic projection
	CAMERA_ORTHOGRAPHIC CameraProjection = 1
)

type Color

type Color struct {
	R uint8
	G uint8
	B uint8
	A uint8
}

Color, 4 components, R8G8B8A8 (32bit)

func ColorFromHSV

func ColorFromHSV(hue c.Float, saturation c.Float, value c.Float) Color

func ColorTint

func ColorTint(color Color, tint Color) Color

func GetColor

func GetColor(hexValue c.Uint) Color

func GetPixelColor

func GetPixelColor(srcPtr unsafe.Pointer, format c.Int) Color

func (Color) Alpha

func (self Color) Alpha(alpha c.Float) Color

llgo:link Color.Alpha C.ColorAlpha

func (Color) AlphaBlend

func (self Color) AlphaBlend(src Color, tint Color) Color

llgo:link Color.AlphaBlend C.ColorAlphaBlend

func (Color) Brightness

func (self Color) Brightness(factor c.Float) Color

llgo:link Color.Brightness C.ColorBrightness

func (Color) ClearBackground

func (self Color) ClearBackground()

Drawing-related functions

llgo:link Color.ClearBackground C.ClearBackground

func (Color) Contrast

func (self Color) Contrast(contrast c.Float) Color

llgo:link Color.Contrast C.ColorContrast

func (Color) Fade

func (self Color) Fade(alpha c.Float) Color

llgo:link Color.Fade C.Fade

func (Color) Lerp

func (self Color) Lerp(color2 Color, factor c.Float) Color

llgo:link Color.Lerp C.ColorLerp

func (Color) Normalize

func (self Color) Normalize() Vector4

llgo:link Color.Normalize C.ColorNormalize

func (Color) ToHSV

func (self Color) ToHSV() Vector3

llgo:link Color.ToHSV C.ColorToHSV

func (Color) ToInt

func (self Color) ToInt() c.Int

llgo:link Color.ToInt C.ColorToInt

func (*Color) UnloadImageColors

func (self *Color) UnloadImageColors()

llgo:link (*Color).UnloadImageColors C.UnloadImageColors

func (*Color) UnloadImagePalette

func (self *Color) UnloadImagePalette()

llgo:link (*Color).UnloadImagePalette C.UnloadImagePalette

type ConfigFlags

type ConfigFlags c.Uint

---------------------------------------------------------------------------------- Enumerators Definition ---------------------------------------------------------------------------------- System/Window config flags NOTE: Every bit registers one state (use it with bit masks) By default all flags are set to 0

const (
	// Set to try enabling V-Sync on GPU
	FLAG_VSYNC_HINT ConfigFlags = 64
	// Set to run program in fullscreen
	FLAG_FULLSCREEN_MODE ConfigFlags = 2
	// Set to allow resizable window
	FLAG_WINDOW_RESIZABLE ConfigFlags = 4
	// Set to disable window decoration (frame and buttons)
	FLAG_WINDOW_UNDECORATED ConfigFlags = 8
	// Set to hide window
	FLAG_WINDOW_HIDDEN ConfigFlags = 128
	// Set to minimize window (iconify)
	FLAG_WINDOW_MINIMIZED ConfigFlags = 512
	// Set to maximize window (expanded to monitor)
	FLAG_WINDOW_MAXIMIZED ConfigFlags = 1024
	// Set to window non focused
	FLAG_WINDOW_UNFOCUSED ConfigFlags = 2048
	// Set to window always on top
	FLAG_WINDOW_TOPMOST ConfigFlags = 4096
	// Set to allow windows running while minimized
	FLAG_WINDOW_ALWAYS_RUN ConfigFlags = 256
	// Set to allow transparent framebuffer
	FLAG_WINDOW_TRANSPARENT ConfigFlags = 16
	// Set to support HighDPI
	FLAG_WINDOW_HIGHDPI ConfigFlags = 8192
	// Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED
	FLAG_WINDOW_MOUSE_PASSTHROUGH ConfigFlags = 16384
	// Set to run program in borderless windowed mode
	FLAG_BORDERLESS_WINDOWED_MODE ConfigFlags = 32768
	// Set to try enabling MSAA 4X
	FLAG_MSAA_4X_HINT ConfigFlags = 32
	// Set to try enabling interlaced video format (for V3D)
	FLAG_INTERLACED_HINT ConfigFlags = 65536
)

type CubemapLayout

type CubemapLayout c.Uint

Cubemap layouts

const (
	// Automatically detect layout type
	CUBEMAP_LAYOUT_AUTO_DETECT CubemapLayout = 0
	// Layout is defined by a vertical line with faces
	CUBEMAP_LAYOUT_LINE_VERTICAL CubemapLayout = 1
	// Layout is defined by a horizontal line with faces
	CUBEMAP_LAYOUT_LINE_HORIZONTAL CubemapLayout = 2
	// Layout is defined by a 3x4 cross with cubemap faces
	CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR CubemapLayout = 3
	// Layout is defined by a 4x3 cross with cubemap faces
	CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE CubemapLayout = 4
)

type FilePathList

type FilePathList struct {
	Count c.Uint
	Paths **c.Char
}

File path list

func LoadDirectoryFiles

func LoadDirectoryFiles(dirPath *c.Char) FilePathList

func LoadDirectoryFilesEx

func LoadDirectoryFilesEx(basePath *c.Char, filter *c.Char, scanSubdirs bool) FilePathList

func LoadDroppedFiles

func LoadDroppedFiles() FilePathList

func (FilePathList) UnloadDirectoryFiles

func (self FilePathList) UnloadDirectoryFiles()

llgo:link FilePathList.UnloadDirectoryFiles C.UnloadDirectoryFiles

func (FilePathList) UnloadDroppedFiles

func (self FilePathList) UnloadDroppedFiles()

llgo:link FilePathList.UnloadDroppedFiles C.UnloadDroppedFiles

type Float3

type Float3 struct {
	V [3]c.Float
}

type Float16

type Float16 struct {
	V [16]c.Float
}

type Font

type Font struct {
	BaseSize     c.Int
	GlyphCount   c.Int
	GlyphPadding c.Int
	Texture      Texture2D
	Recs         *Rectangle
	Glyphs       *GlyphInfo
}

Font, font texture and GlyphInfo array data

func GetFontDefault

func GetFontDefault() Font

Font loading/unloading functions

func LoadFont

func LoadFont(fileName *c.Char) Font

func LoadFontEx

func LoadFontEx(fileName *c.Char, fontSize c.Int, codepoints *c.Int, codepointCount c.Int) Font

func LoadFontFromMemory

func LoadFontFromMemory(fileType *c.Char, fileData *uint8, dataSize c.Int, fontSize c.Int, codepoints *c.Int, codepointCount c.Int) Font

func (Font) DrawTextCodepoint

func (self Font) DrawTextCodepoint(codepoint c.Int, position Vector2, fontSize c.Float, tint Color)

llgo:link Font.DrawTextCodepoint C.DrawTextCodepoint

func (Font) DrawTextCodepoints

func (self Font) DrawTextCodepoints(codepoints *c.Int, codepointCount c.Int, position Vector2, fontSize c.Float, spacing c.Float, tint Color)

llgo:link Font.DrawTextCodepoints C.DrawTextCodepoints

func (Font) DrawTextEx

func (self Font) DrawTextEx(text *c.Char, position Vector2, fontSize c.Float, spacing c.Float, tint Color)

llgo:link Font.DrawTextEx C.DrawTextEx

func (Font) DrawTextPro

func (self Font) DrawTextPro(text *c.Char, position Vector2, origin Vector2, rotation c.Float, fontSize c.Float, spacing c.Float, tint Color)

llgo:link Font.DrawTextPro C.DrawTextPro

func (Font) ExportFontAsCode

func (self Font) ExportFontAsCode(fileName *c.Char) bool

llgo:link Font.ExportFontAsCode C.ExportFontAsCode

func (Font) GlyphAtlasRec

func (self Font) GlyphAtlasRec(codepoint c.Int) Rectangle

llgo:link Font.GlyphAtlasRec C.GetGlyphAtlasRec

func (Font) GlyphIndex

func (self Font) GlyphIndex(codepoint c.Int) c.Int

llgo:link Font.GlyphIndex C.GetGlyphIndex

func (Font) GlyphInfo

func (self Font) GlyphInfo(codepoint c.Int) GlyphInfo

llgo:link Font.GlyphInfo C.GetGlyphInfo

func (Font) ImageTextEx

func (self Font) ImageTextEx(text *c.Char, fontSize c.Float, spacing c.Float, tint Color) Image

llgo:link Font.ImageTextEx C.ImageTextEx

func (Font) IsFontValid

func (self Font) IsFontValid() bool

llgo:link Font.IsFontValid C.IsFontValid

func (Font) MeasureTextCodepoints

func (self Font) MeasureTextCodepoints(codepoints *c.Int, length c.Int, fontSize c.Float, spacing c.Float) Vector2

llgo:link Font.MeasureTextCodepoints C.MeasureTextCodepoints

func (Font) MeasureTextEx

func (self Font) MeasureTextEx(text *c.Char, fontSize c.Float, spacing c.Float) Vector2

llgo:link Font.MeasureTextEx C.MeasureTextEx

func (Font) Unload

func (self Font) Unload()

llgo:link Font.Unload C.UnloadFont

type FontType

type FontType c.Uint

Font type, defines generation method

const (
	// Default font generation, anti-aliased
	FONT_DEFAULT FontType = 0
	// Bitmap font generation, no anti-aliasing
	FONT_BITMAP FontType = 1
	// SDF font generation, requires external shader
	FONT_SDF FontType = 2
)

type GamepadAxis

type GamepadAxis c.Uint

Gamepad axes

const (
	// Gamepad left stick X axis
	GAMEPAD_AXIS_LEFT_X GamepadAxis = 0
	// Gamepad left stick Y axis
	GAMEPAD_AXIS_LEFT_Y GamepadAxis = 1
	// Gamepad right stick X axis
	GAMEPAD_AXIS_RIGHT_X GamepadAxis = 2
	// Gamepad right stick Y axis
	GAMEPAD_AXIS_RIGHT_Y GamepadAxis = 3
	// Gamepad back trigger left, pressure level: [1..-1]
	GAMEPAD_AXIS_LEFT_TRIGGER GamepadAxis = 4
	// Gamepad back trigger right, pressure level: [1..-1]
	GAMEPAD_AXIS_RIGHT_TRIGGER GamepadAxis = 5
)

type GamepadButton

type GamepadButton c.Uint

Gamepad buttons

const (
	// Unknown button, for error checking
	GAMEPAD_BUTTON_UNKNOWN GamepadButton = 0
	// Gamepad left DPAD up button
	GAMEPAD_BUTTON_LEFT_FACE_UP GamepadButton = 1
	// Gamepad left DPAD right button
	GAMEPAD_BUTTON_LEFT_FACE_RIGHT GamepadButton = 2
	// Gamepad left DPAD down button
	GAMEPAD_BUTTON_LEFT_FACE_DOWN GamepadButton = 3
	// Gamepad left DPAD left button
	GAMEPAD_BUTTON_LEFT_FACE_LEFT GamepadButton = 4
	// Gamepad right button up (i.e. PS3: Triangle, Xbox: Y)
	GAMEPAD_BUTTON_RIGHT_FACE_UP GamepadButton = 5
	// Gamepad right button right (i.e. PS3: Circle, Xbox: B)
	GAMEPAD_BUTTON_RIGHT_FACE_RIGHT GamepadButton = 6
	// Gamepad right button down (i.e. PS3: Cross, Xbox: A)
	GAMEPAD_BUTTON_RIGHT_FACE_DOWN GamepadButton = 7
	// Gamepad right button left (i.e. PS3: Square, Xbox: X)
	GAMEPAD_BUTTON_RIGHT_FACE_LEFT GamepadButton = 8
	// Gamepad top/back trigger left (first), it could be a trailing button
	GAMEPAD_BUTTON_LEFT_TRIGGER_1 GamepadButton = 9
	// Gamepad top/back trigger left (second), it could be a trailing button
	GAMEPAD_BUTTON_LEFT_TRIGGER_2 GamepadButton = 10
	// Gamepad top/back trigger right (first), it could be a trailing button
	GAMEPAD_BUTTON_RIGHT_TRIGGER_1 GamepadButton = 11
	// Gamepad top/back trigger right (second), it could be a trailing button
	GAMEPAD_BUTTON_RIGHT_TRIGGER_2 GamepadButton = 12
	// Gamepad center buttons, left one (i.e. PS3: Select)
	GAMEPAD_BUTTON_MIDDLE_LEFT GamepadButton = 13
	// Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX)
	GAMEPAD_BUTTON_MIDDLE GamepadButton = 14
	// Gamepad center buttons, right one (i.e. PS3: Start)
	GAMEPAD_BUTTON_MIDDLE_RIGHT GamepadButton = 15
	// Gamepad joystick pressed button left
	GAMEPAD_BUTTON_LEFT_THUMB GamepadButton = 16
	// Gamepad joystick pressed button right
	GAMEPAD_BUTTON_RIGHT_THUMB GamepadButton = 17
)

type Gesture

type Gesture c.Uint

Gesture NOTE: Provided as bit-wise flags to enable only desired gestures

const (
	// No gesture
	GESTURE_NONE Gesture = 0
	// Tap gesture
	GESTURE_TAP Gesture = 1
	// Double tap gesture
	GESTURE_DOUBLETAP Gesture = 2
	// Hold gesture
	GESTURE_HOLD Gesture = 4
	// Drag gesture
	GESTURE_DRAG Gesture = 8
	// Swipe right gesture
	GESTURE_SWIPE_RIGHT Gesture = 16
	// Swipe left gesture
	GESTURE_SWIPE_LEFT Gesture = 32
	// Swipe up gesture
	GESTURE_SWIPE_UP Gesture = 64
	// Swipe down gesture
	GESTURE_SWIPE_DOWN Gesture = 128
	// Pinch in gesture
	GESTURE_PINCH_IN Gesture = 256
	// Pinch out gesture
	GESTURE_PINCH_OUT Gesture = 512
)

type GlyphInfo

type GlyphInfo struct {
	Value    c.Int
	OffsetX  c.Int
	OffsetY  c.Int
	AdvanceX c.Int
	Image    Image
}

GlyphInfo, font characters glyphs info

func LoadFontData

func LoadFontData(fileData *uint8, dataSize c.Int, fontSize c.Int, codepoints *c.Int, codepointCount c.Int, type_ c.Int, glyphCount *c.Int) *GlyphInfo

func (*GlyphInfo) GenImageFontAtlas

func (self *GlyphInfo) GenImageFontAtlas(glyphRecs **Rectangle, glyphCount c.Int, fontSize c.Int, padding c.Int, packMethod c.Int) Image

llgo:link (*GlyphInfo).GenImageFontAtlas C.GenImageFontAtlas

func (*GlyphInfo) UnloadFontData

func (self *GlyphInfo) UnloadFontData(glyphCount c.Int)

llgo:link (*GlyphInfo).UnloadFontData C.UnloadFontData

type Image

type Image struct {
	Data    unsafe.Pointer
	Width   c.Int
	Height  c.Int
	Mipmaps c.Int
	Format  c.Int
}

Image, pixel data stored in CPU memory (RAM)

func GenImageCellular

func GenImageCellular(width c.Int, height c.Int, tileSize c.Int) Image

func GenImageChecked

func GenImageChecked(width c.Int, height c.Int, checksX c.Int, checksY c.Int, col1 Color, col2 Color) Image

func GenImageColor

func GenImageColor(width c.Int, height c.Int, color Color) Image

Image generation functions

func GenImageGradientLinear

func GenImageGradientLinear(width c.Int, height c.Int, direction c.Int, start Color, end Color) Image

func GenImageGradientRadial

func GenImageGradientRadial(width c.Int, height c.Int, density c.Float, inner Color, outer Color) Image

func GenImageGradientSquare

func GenImageGradientSquare(width c.Int, height c.Int, density c.Float, inner Color, outer Color) Image

func GenImagePerlinNoise

func GenImagePerlinNoise(width c.Int, height c.Int, offsetX c.Int, offsetY c.Int, scale c.Float) Image

func GenImageText

func GenImageText(width c.Int, height c.Int, text *c.Char) Image

func GenImageWhiteNoise

func GenImageWhiteNoise(width c.Int, height c.Int, factor c.Float) Image

func GetClipboardImage

func GetClipboardImage() Image

func ImageText

func ImageText(text *c.Char, fontSize c.Int, color Color) Image

func LoadImage

func LoadImage(fileName *c.Char) Image

Image loading functions NOTE: These functions do not require GPU access

func LoadImageAnim

func LoadImageAnim(fileName *c.Char, frames *c.Int) Image

func LoadImageAnimFromMemory

func LoadImageAnimFromMemory(fileType *c.Char, fileData *uint8, dataSize c.Int, frames *c.Int) Image

func LoadImageFromMemory

func LoadImageFromMemory(fileType *c.Char, fileData *uint8, dataSize c.Int) Image

func LoadImageFromScreen

func LoadImageFromScreen() Image

func LoadImageRaw

func LoadImageRaw(fileName *c.Char, width c.Int, height c.Int, format c.Int, headerSize c.Int) Image

func (Image) AlphaBorder

func (self Image) AlphaBorder(threshold c.Float) Rectangle

llgo:link Image.AlphaBorder C.GetImageAlphaBorder

func (*Image) AlphaClear

func (self *Image) AlphaClear(color Color, threshold c.Float)

llgo:link (*Image).AlphaClear C.ImageAlphaClear

func (*Image) AlphaCrop

func (self *Image) AlphaCrop(threshold c.Float)

llgo:link (*Image).AlphaCrop C.ImageAlphaCrop

func (*Image) AlphaMask

func (self *Image) AlphaMask(alphaMask Image)

llgo:link (*Image).AlphaMask C.ImageAlphaMask

func (*Image) AlphaPremultiply

func (self *Image) AlphaPremultiply()

llgo:link (*Image).AlphaPremultiply C.ImageAlphaPremultiply

func (*Image) BlurGaussian

func (self *Image) BlurGaussian(blurSize c.Int)

llgo:link (*Image).BlurGaussian C.ImageBlurGaussian

func (*Image) ClearBackground

func (self *Image) ClearBackground(color Color)

Image drawing functions NOTE: Image software-rendering functions (CPU)

llgo:link (*Image).ClearBackground C.ImageClearBackground

func (Image) Color

func (self Image) Color(x c.Int, y c.Int) Color

llgo:link Image.Color C.GetImageColor

func (*Image) ColorBrightness

func (self *Image) ColorBrightness(brightness c.Int)

llgo:link (*Image).ColorBrightness C.ImageColorBrightness

func (*Image) ColorContrast

func (self *Image) ColorContrast(contrast c.Float)

llgo:link (*Image).ColorContrast C.ImageColorContrast

func (*Image) ColorGrayscale

func (self *Image) ColorGrayscale()

llgo:link (*Image).ColorGrayscale C.ImageColorGrayscale

func (*Image) ColorInvert

func (self *Image) ColorInvert()

llgo:link (*Image).ColorInvert C.ImageColorInvert

func (*Image) ColorReplace

func (self *Image) ColorReplace(color Color, replace Color)

llgo:link (*Image).ColorReplace C.ImageColorReplace

func (*Image) ColorTint

func (self *Image) ColorTint(color Color)

llgo:link (*Image).ColorTint C.ImageColorTint

func (Image) Copy

func (self Image) Copy() Image

Image manipulation functions

llgo:link Image.Copy C.ImageCopy

func (*Image) Crop

func (self *Image) Crop(crop Rectangle)

llgo:link (*Image).Crop C.ImageCrop

func (*Image) Dither

func (self *Image) Dither(rBpp c.Int, gBpp c.Int, bBpp c.Int, aBpp c.Int)

llgo:link (*Image).Dither C.ImageDither

func (*Image) Draw

func (self *Image) Draw(src Image, srcRec Rectangle, dstRec Rectangle, tint Color)

llgo:link (*Image).Draw C.ImageDraw

func (*Image) DrawCircle

func (self *Image) DrawCircle(centerX c.Int, centerY c.Int, radius c.Int, color Color)

llgo:link (*Image).DrawCircle C.ImageDrawCircle

func (*Image) DrawCircleLines

func (self *Image) DrawCircleLines(centerX c.Int, centerY c.Int, radius c.Int, color Color)

llgo:link (*Image).DrawCircleLines C.ImageDrawCircleLines

func (*Image) DrawCircleLinesV

func (self *Image) DrawCircleLinesV(center Vector2, radius c.Int, color Color)

llgo:link (*Image).DrawCircleLinesV C.ImageDrawCircleLinesV

func (*Image) DrawCircleV

func (self *Image) DrawCircleV(center Vector2, radius c.Int, color Color)

llgo:link (*Image).DrawCircleV C.ImageDrawCircleV

func (*Image) DrawLine

func (self *Image) DrawLine(startPosX c.Int, startPosY c.Int, endPosX c.Int, endPosY c.Int, color Color)

llgo:link (*Image).DrawLine C.ImageDrawLine

func (*Image) DrawLineEx

func (self *Image) DrawLineEx(start Vector2, end Vector2, thick c.Int, color Color)

llgo:link (*Image).DrawLineEx C.ImageDrawLineEx

func (*Image) DrawLineV

func (self *Image) DrawLineV(start Vector2, end Vector2, color Color)

llgo:link (*Image).DrawLineV C.ImageDrawLineV

func (*Image) DrawPixel

func (self *Image) DrawPixel(posX c.Int, posY c.Int, color Color)

llgo:link (*Image).DrawPixel C.ImageDrawPixel

func (*Image) DrawPixelV

func (self *Image) DrawPixelV(position Vector2, color Color)

llgo:link (*Image).DrawPixelV C.ImageDrawPixelV

func (*Image) DrawRectangle

func (self *Image) DrawRectangle(posX c.Int, posY c.Int, width c.Int, height c.Int, color Color)

llgo:link (*Image).DrawRectangle C.ImageDrawRectangle

func (*Image) DrawRectangleLines

func (self *Image) DrawRectangleLines(rec Rectangle, thick c.Int, color Color)

llgo:link (*Image).DrawRectangleLines C.ImageDrawRectangleLines

func (*Image) DrawRectangleRec

func (self *Image) DrawRectangleRec(rec Rectangle, color Color)

llgo:link (*Image).DrawRectangleRec C.ImageDrawRectangleRec

func (*Image) DrawRectangleV

func (self *Image) DrawRectangleV(position Vector2, size Vector2, color Color)

llgo:link (*Image).DrawRectangleV C.ImageDrawRectangleV

func (*Image) DrawText

func (self *Image) DrawText(text *c.Char, posX c.Int, posY c.Int, fontSize c.Int, color Color)

llgo:link (*Image).DrawText C.ImageDrawText

func (*Image) DrawTextEx

func (self *Image) DrawTextEx(font Font, text *c.Char, position Vector2, fontSize c.Float, spacing c.Float, tint Color)

llgo:link (*Image).DrawTextEx C.ImageDrawTextEx

func (*Image) DrawTriangle

func (self *Image) DrawTriangle(v1 Vector2, v2 Vector2, v3 Vector2, color Color)

llgo:link (*Image).DrawTriangle C.ImageDrawTriangle

func (*Image) DrawTriangleEx

func (self *Image) DrawTriangleEx(v1 Vector2, v2 Vector2, v3 Vector2, c1 Color, c2 Color, c3 Color)

llgo:link (*Image).DrawTriangleEx C.ImageDrawTriangleEx

func (*Image) DrawTriangleFan

func (self *Image) DrawTriangleFan(points *Vector2, pointCount c.Int, color Color)

llgo:link (*Image).DrawTriangleFan C.ImageDrawTriangleFan

func (*Image) DrawTriangleLines

func (self *Image) DrawTriangleLines(v1 Vector2, v2 Vector2, v3 Vector2, color Color)

llgo:link (*Image).DrawTriangleLines C.ImageDrawTriangleLines

func (*Image) DrawTriangleStrip

func (self *Image) DrawTriangleStrip(points *Vector2, pointCount c.Int, color Color)

llgo:link (*Image).DrawTriangleStrip C.ImageDrawTriangleStrip

func (Image) Export

func (self Image) Export(fileName *c.Char) bool

llgo:link Image.Export C.ExportImage

func (Image) ExportImageAsCode

func (self Image) ExportImageAsCode(fileName *c.Char) bool

llgo:link Image.ExportImageAsCode C.ExportImageAsCode

func (Image) ExportImageToMemory

func (self Image) ExportImageToMemory(fileType *c.Char, fileSize *c.Int) *uint8

llgo:link Image.ExportImageToMemory C.ExportImageToMemory

func (*Image) FlipHorizontal

func (self *Image) FlipHorizontal()

llgo:link (*Image).FlipHorizontal C.ImageFlipHorizontal

func (*Image) FlipVertical

func (self *Image) FlipVertical()

llgo:link (*Image).FlipVertical C.ImageFlipVertical

func (Image) From

func (self Image) From(rec Rectangle) Image

llgo:link Image.From C.ImageFromImage

func (Image) FromChannel

func (self Image) FromChannel(selectedChannel c.Int) Image

llgo:link Image.FromChannel C.ImageFromChannel

func (Image) GenMeshCubicmap

func (self Image) GenMeshCubicmap(cubeSize Vector3) Mesh

llgo:link Image.GenMeshCubicmap C.GenMeshCubicmap

func (Image) GenMeshHeightmap

func (self Image) GenMeshHeightmap(size Vector3) Mesh

llgo:link Image.GenMeshHeightmap C.GenMeshHeightmap

func (*Image) ImageFormat

func (self *Image) ImageFormat(newFormat c.Int)

llgo:link (*Image).ImageFormat C.ImageFormat

func (*Image) ImageMipmaps

func (self *Image) ImageMipmaps()

llgo:link (*Image).ImageMipmaps C.ImageMipmaps

func (Image) IsImageValid

func (self Image) IsImageValid() bool

llgo:link Image.IsImageValid C.IsImageValid

func (*Image) KernelConvolution

func (self *Image) KernelConvolution(kernel *c.Float, kernelSize c.Int)

llgo:link (*Image).KernelConvolution C.ImageKernelConvolution

func (Image) LoadFontFrom

func (self Image) LoadFontFrom(key Color, firstChar c.Int) Font

llgo:link Image.LoadFontFrom C.LoadFontFromImage

func (Image) LoadImageColors

func (self Image) LoadImageColors() *Color

llgo:link Image.LoadImageColors C.LoadImageColors

func (Image) LoadImagePalette

func (self Image) LoadImagePalette(maxPaletteSize c.Int, colorCount *c.Int) *Color

llgo:link Image.LoadImagePalette C.LoadImagePalette

func (Image) LoadTextureCubemap

func (self Image) LoadTextureCubemap(layout c.Int) TextureCubemap

llgo:link Image.LoadTextureCubemap C.LoadTextureCubemap

func (Image) LoadTextureFrom

func (self Image) LoadTextureFrom() Texture2D

llgo:link Image.LoadTextureFrom C.LoadTextureFromImage

func (*Image) Resize

func (self *Image) Resize(newWidth c.Int, newHeight c.Int)

llgo:link (*Image).Resize C.ImageResize

func (*Image) ResizeCanvas

func (self *Image) ResizeCanvas(newWidth c.Int, newHeight c.Int, offsetX c.Int, offsetY c.Int, fill Color)

llgo:link (*Image).ResizeCanvas C.ImageResizeCanvas

func (*Image) ResizeNN

func (self *Image) ResizeNN(newWidth c.Int, newHeight c.Int)

llgo:link (*Image).ResizeNN C.ImageResizeNN

func (*Image) Rotate

func (self *Image) Rotate(degrees c.Int)

llgo:link (*Image).Rotate C.ImageRotate

func (*Image) RotateCCW

func (self *Image) RotateCCW()

llgo:link (*Image).RotateCCW C.ImageRotateCCW

func (*Image) RotateCW

func (self *Image) RotateCW()

llgo:link (*Image).RotateCW C.ImageRotateCW

func (Image) SetWindowIcon

func (self Image) SetWindowIcon()

llgo:link Image.SetWindowIcon C.SetWindowIcon

func (*Image) SetWindowIcons

func (self *Image) SetWindowIcons(count c.Int)

llgo:link (*Image).SetWindowIcons C.SetWindowIcons

func (*Image) ToPOT

func (self *Image) ToPOT(fill Color)

llgo:link (*Image).ToPOT C.ImageToPOT

func (Image) Unload

func (self Image) Unload()

llgo:link Image.Unload C.UnloadImage

type KeyboardKey

type KeyboardKey c.Uint

Keyboard keys (US keyboard layout) NOTE: Use GetKeyPressed() to allow redefining required keys for alternative layouts

const (
	// Key: NULL, used for no key pressed
	KEY_NULL KeyboardKey = 0
	// Key: '
	KEY_APOSTROPHE KeyboardKey = 39
	// Key: ,
	KEY_COMMA KeyboardKey = 44
	// Key: -
	KEY_MINUS KeyboardKey = 45
	// Key: .
	KEY_PERIOD KeyboardKey = 46
	// Key: /
	KEY_SLASH KeyboardKey = 47
	// Key: 0
	KEY_ZERO KeyboardKey = 48
	// Key: 1
	KEY_ONE KeyboardKey = 49
	// Key: 2
	KEY_TWO KeyboardKey = 50
	// Key: 3
	KEY_THREE KeyboardKey = 51
	// Key: 4
	KEY_FOUR KeyboardKey = 52
	// Key: 5
	KEY_FIVE KeyboardKey = 53
	// Key: 6
	KEY_SIX KeyboardKey = 54
	// Key: 7
	KEY_SEVEN KeyboardKey = 55
	// Key: 8
	KEY_EIGHT KeyboardKey = 56
	// Key: 9
	KEY_NINE KeyboardKey = 57
	// Key: ;
	KEY_SEMICOLON KeyboardKey = 59
	// Key: =
	KEY_EQUAL KeyboardKey = 61
	// Key: A | a
	KEY_A KeyboardKey = 65
	// Key: B | b
	KEY_B KeyboardKey = 66
	// Key: C | c
	KEY_C KeyboardKey = 67
	// Key: D | d
	KEY_D KeyboardKey = 68
	// Key: E | e
	KEY_E KeyboardKey = 69
	// Key: F | f
	KEY_F KeyboardKey = 70
	// Key: G | g
	KEY_G KeyboardKey = 71
	// Key: H | h
	KEY_H KeyboardKey = 72
	// Key: I | i
	KEY_I KeyboardKey = 73
	// Key: J | j
	KEY_J KeyboardKey = 74
	// Key: K | k
	KEY_K KeyboardKey = 75
	// Key: L | l
	KEY_L KeyboardKey = 76
	// Key: M | m
	KEY_M KeyboardKey = 77
	// Key: N | n
	KEY_N KeyboardKey = 78
	// Key: O | o
	KEY_O KeyboardKey = 79
	// Key: P | p
	KEY_P KeyboardKey = 80
	// Key: Q | q
	KEY_Q KeyboardKey = 81
	// Key: R | r
	KEY_R KeyboardKey = 82
	// Key: S | s
	KEY_S KeyboardKey = 83
	// Key: T | t
	KEY_T KeyboardKey = 84
	// Key: U | u
	KEY_U KeyboardKey = 85
	// Key: V | v
	KEY_V KeyboardKey = 86
	// Key: W | w
	KEY_W KeyboardKey = 87
	// Key: X | x
	KEY_X KeyboardKey = 88
	// Key: Y | y
	KEY_Y KeyboardKey = 89
	// Key: Z | z
	KEY_Z KeyboardKey = 90
	// Key: [
	KEY_LEFT_BRACKET KeyboardKey = 91
	// Key: '\'
	KEY_BACKSLASH KeyboardKey = 92
	// Key: ]
	KEY_RIGHT_BRACKET KeyboardKey = 93
	// Key: `
	KEY_GRAVE KeyboardKey = 96
	// Key: Space
	KEY_SPACE KeyboardKey = 32
	// Key: Esc
	KEY_ESCAPE KeyboardKey = 256
	// Key: Enter
	KEY_ENTER KeyboardKey = 257
	// Key: Tab
	KEY_TAB KeyboardKey = 258
	// Key: Backspace
	KEY_BACKSPACE KeyboardKey = 259
	// Key: Ins
	KEY_INSERT KeyboardKey = 260
	// Key: Del
	KEY_DELETE KeyboardKey = 261
	// Key: Cursor right
	KEY_RIGHT KeyboardKey = 262
	// Key: Cursor left
	KEY_LEFT KeyboardKey = 263
	// Key: Cursor down
	KEY_DOWN KeyboardKey = 264
	// Key: Cursor up
	KEY_UP KeyboardKey = 265
	// Key: Page up
	KEY_PAGE_UP KeyboardKey = 266
	// Key: Page down
	KEY_PAGE_DOWN KeyboardKey = 267
	// Key: Home
	KEY_HOME KeyboardKey = 268
	// Key: End
	KEY_END KeyboardKey = 269
	// Key: Caps lock
	KEY_CAPS_LOCK KeyboardKey = 280
	// Key: Scroll down
	KEY_SCROLL_LOCK KeyboardKey = 281
	// Key: Num lock
	KEY_NUM_LOCK KeyboardKey = 282
	// Key: Print screen
	KEY_PRINT_SCREEN KeyboardKey = 283
	// Key: Pause
	KEY_PAUSE KeyboardKey = 284
	// Key: F1
	KEY_F1 KeyboardKey = 290
	// Key: F2
	KEY_F2 KeyboardKey = 291
	// Key: F3
	KEY_F3 KeyboardKey = 292
	// Key: F4
	KEY_F4 KeyboardKey = 293
	// Key: F5
	KEY_F5 KeyboardKey = 294
	// Key: F6
	KEY_F6 KeyboardKey = 295
	// Key: F7
	KEY_F7 KeyboardKey = 296
	// Key: F8
	KEY_F8 KeyboardKey = 297
	// Key: F9
	KEY_F9 KeyboardKey = 298
	// Key: F10
	KEY_F10 KeyboardKey = 299
	// Key: F11
	KEY_F11 KeyboardKey = 300
	// Key: F12
	KEY_F12 KeyboardKey = 301
	// Key: Shift left
	KEY_LEFT_SHIFT KeyboardKey = 340
	// Key: Control left
	KEY_LEFT_CONTROL KeyboardKey = 341
	// Key: Alt left
	KEY_LEFT_ALT KeyboardKey = 342
	// Key: Super left
	KEY_LEFT_SUPER KeyboardKey = 343
	// Key: Shift right
	KEY_RIGHT_SHIFT KeyboardKey = 344
	// Key: Control right
	KEY_RIGHT_CONTROL KeyboardKey = 345
	// Key: Alt right
	KEY_RIGHT_ALT KeyboardKey = 346
	// Key: Super right
	KEY_RIGHT_SUPER KeyboardKey = 347
	// Key: KB menu
	KEY_KB_MENU KeyboardKey = 348
	// Key: Keypad 0
	KEY_KP_0 KeyboardKey = 320
	// Key: Keypad 1
	KEY_KP_1 KeyboardKey = 321
	// Key: Keypad 2
	KEY_KP_2 KeyboardKey = 322
	// Key: Keypad 3
	KEY_KP_3 KeyboardKey = 323
	// Key: Keypad 4
	KEY_KP_4 KeyboardKey = 324
	// Key: Keypad 5
	KEY_KP_5 KeyboardKey = 325
	// Key: Keypad 6
	KEY_KP_6 KeyboardKey = 326
	// Key: Keypad 7
	KEY_KP_7 KeyboardKey = 327
	// Key: Keypad 8
	KEY_KP_8 KeyboardKey = 328
	// Key: Keypad 9
	KEY_KP_9 KeyboardKey = 329
	// Key: Keypad .
	KEY_KP_DECIMAL KeyboardKey = 330
	// Key: Keypad /
	KEY_KP_DIVIDE KeyboardKey = 331
	// Key: Keypad *
	KEY_KP_MULTIPLY KeyboardKey = 332
	// Key: Keypad -
	KEY_KP_SUBTRACT KeyboardKey = 333
	// Key: Keypad +
	KEY_KP_ADD KeyboardKey = 334
	// Key: Keypad Enter
	KEY_KP_ENTER KeyboardKey = 335
	// Key: Keypad =
	KEY_KP_EQUAL KeyboardKey = 336
	// Key: Android back button
	KEY_BACK KeyboardKey = 4
	// Key: Android menu button
	KEY_MENU KeyboardKey = 5
	// Key: Android volume up button
	KEY_VOLUME_UP KeyboardKey = 24
	// Key: Android volume down button
	KEY_VOLUME_DOWN KeyboardKey = 25
)

type LoadFileDataCallback

type LoadFileDataCallback = func(_llcppg_param1 *c.Char, _llcppg_param2 *c.Int) *uint8

llgo:type C

type LoadFileTextCallback

type LoadFileTextCallback = func(_llcppg_param1 *c.Char) *c.Char

llgo:type C

type Material

type Material struct {
	Shader Shader
	Maps   *MaterialMap
	Params [4]c.Float
}

Material, includes shader and maps

func LoadMaterialDefault

func LoadMaterialDefault() Material

func LoadMaterials

func LoadMaterials(fileName *c.Char, materialCount *c.Int) *Material

Material loading/unloading functions

func (Material) IsMaterialValid

func (self Material) IsMaterialValid() bool

llgo:link Material.IsMaterialValid C.IsMaterialValid

func (*Material) SetMaterialTexture

func (self *Material) SetMaterialTexture(mapType c.Int, texture Texture2D)

llgo:link (*Material).SetMaterialTexture C.SetMaterialTexture

func (Material) Unload

func (self Material) Unload()

llgo:link Material.Unload C.UnloadMaterial

type MaterialMap

type MaterialMap struct {
	Texture Texture2D
	Color   Color
	Value   c.Float
}

MaterialMap

type MaterialMapIndex

type MaterialMapIndex c.Uint

Material map index

const (
	// Albedo material (same as: MATERIAL_MAP_DIFFUSE)
	MATERIAL_MAP_ALBEDO MaterialMapIndex = 0
	// Metalness material (same as: MATERIAL_MAP_SPECULAR)
	MATERIAL_MAP_METALNESS MaterialMapIndex = 1
	// Normal material
	MATERIAL_MAP_NORMAL MaterialMapIndex = 2
	// Roughness material
	MATERIAL_MAP_ROUGHNESS MaterialMapIndex = 3
	// Ambient occlusion material
	MATERIAL_MAP_OCCLUSION MaterialMapIndex = 4
	// Emission material
	MATERIAL_MAP_EMISSION MaterialMapIndex = 5
	// Heightmap material
	MATERIAL_MAP_HEIGHT MaterialMapIndex = 6
	// Cubemap material (NOTE: Uses GL_TEXTURE_CUBE_MAP)
	MATERIAL_MAP_CUBEMAP MaterialMapIndex = 7
	// Irradiance material (NOTE: Uses GL_TEXTURE_CUBE_MAP)
	MATERIAL_MAP_IRRADIANCE MaterialMapIndex = 8
	// Prefilter material (NOTE: Uses GL_TEXTURE_CUBE_MAP)
	MATERIAL_MAP_PREFILTER MaterialMapIndex = 9
	// Brdf material
	MATERIAL_MAP_BRDF MaterialMapIndex = 10
)

type Matrix

type Matrix struct {
	M0  c.Float
	M4  c.Float
	M8  c.Float
	M12 c.Float
	M1  c.Float
	M5  c.Float
	M9  c.Float
	M13 c.Float
	M2  c.Float
	M6  c.Float
	M10 c.Float
	M14 c.Float
	M3  c.Float
	M7  c.Float
	M11 c.Float
	M15 c.Float
}

Matrix, 4x4 components, column major, OpenGL style, right-handed

type Mesh

type Mesh struct {
	VertexCount   c.Int
	TriangleCount c.Int
	Vertices      *c.Float
	Texcoords     *c.Float
	Texcoords2    *c.Float
	Normals       *c.Float
	Tangents      *c.Float
	Colors        *uint8
	Indices       *uint16
	BoneCount     c.Int
	BoneIndices   *uint8
	BoneWeights   *c.Float
	AnimVertices  *c.Float
	AnimNormals   *c.Float
	VaoId         c.Uint
	VboId         *c.Uint
}

Mesh, vertex data and vao/vbo

func GenMeshCone

func GenMeshCone(radius c.Float, height c.Float, slices c.Int) Mesh

func GenMeshCube

func GenMeshCube(width c.Float, height c.Float, length c.Float) Mesh

func GenMeshCylinder

func GenMeshCylinder(radius c.Float, height c.Float, slices c.Int) Mesh

func GenMeshHemiSphere

func GenMeshHemiSphere(radius c.Float, rings c.Int, slices c.Int) Mesh

func GenMeshKnot

func GenMeshKnot(radius c.Float, size c.Float, radSeg c.Int, sides c.Int) Mesh

func GenMeshPlane

func GenMeshPlane(width c.Float, length c.Float, resX c.Int, resZ c.Int) Mesh

func GenMeshPoly

func GenMeshPoly(sides c.Int, radius c.Float) Mesh

Mesh generation functions

func GenMeshSphere

func GenMeshSphere(radius c.Float, rings c.Int, slices c.Int) Mesh

func GenMeshTorus

func GenMeshTorus(radius c.Float, size c.Float, radSeg c.Int, sides c.Int) Mesh

func (Mesh) BoundingBox

func (self Mesh) BoundingBox() BoundingBox

llgo:link Mesh.BoundingBox C.GetMeshBoundingBox

func (Mesh) Draw

func (self Mesh) Draw(material Material, transform Matrix)

llgo:link Mesh.Draw C.DrawMesh

func (Mesh) DrawMeshInstanced

func (self Mesh) DrawMeshInstanced(material Material, transforms *Matrix, instances c.Int)

llgo:link Mesh.DrawMeshInstanced C.DrawMeshInstanced

func (Mesh) Export

func (self Mesh) Export(fileName *c.Char) bool

llgo:link Mesh.Export C.ExportMesh

func (Mesh) ExportMeshAsCode

func (self Mesh) ExportMeshAsCode(fileName *c.Char) bool

llgo:link Mesh.ExportMeshAsCode C.ExportMeshAsCode

func (*Mesh) GenMeshTangents

func (self *Mesh) GenMeshTangents()

llgo:link (*Mesh).GenMeshTangents C.GenMeshTangents

func (Mesh) LoadModelFrom

func (self Mesh) LoadModelFrom() Model

llgo:link Mesh.LoadModelFrom C.LoadModelFromMesh

func (Mesh) Unload

func (self Mesh) Unload()

llgo:link Mesh.Unload C.UnloadMesh

func (Mesh) UpdateMeshBuffer

func (self Mesh) UpdateMeshBuffer(index c.Int, data unsafe.Pointer, dataSize c.Int, offset c.Int)

llgo:link Mesh.UpdateMeshBuffer C.UpdateMeshBuffer

func (*Mesh) Upload

func (self *Mesh) Upload(dynamic bool)

Mesh management functions

llgo:link (*Mesh).Upload C.UploadMesh

type Model

type Model struct {
	Transform     Matrix
	MeshCount     c.Int
	MaterialCount c.Int
	Meshes        *Mesh
	Materials     *Material
	MeshMaterial  *c.Int
	Skeleton      ModelSkeleton
	CurrentPose   ModelAnimPose
	BoneMatrices  *Matrix
}

Model, meshes, materials and animation data

func LoadModel

func LoadModel(fileName *c.Char) Model

Model management functions

func (Model) BoundingBox

func (self Model) BoundingBox() BoundingBox

llgo:link Model.BoundingBox C.GetModelBoundingBox

func (Model) Draw

func (self Model) Draw(position Vector3, scale c.Float, tint Color)

Model drawing functions

llgo:link Model.Draw C.DrawModel

func (Model) DrawModelEx

func (self Model) DrawModelEx(position Vector3, rotationAxis Vector3, rotationAngle c.Float, scale Vector3, tint Color)

llgo:link Model.DrawModelEx C.DrawModelEx

func (Model) DrawModelWires

func (self Model) DrawModelWires(position Vector3, scale c.Float, tint Color)

llgo:link Model.DrawModelWires C.DrawModelWires

func (Model) DrawModelWiresEx

func (self Model) DrawModelWiresEx(position Vector3, rotationAxis Vector3, rotationAngle c.Float, scale Vector3, tint Color)

llgo:link Model.DrawModelWiresEx C.DrawModelWiresEx

func (Model) IsModelAnimationValid

func (self Model) IsModelAnimationValid(anim ModelAnimation) bool

llgo:link Model.IsModelAnimationValid C.IsModelAnimationValid

func (Model) IsModelValid

func (self Model) IsModelValid() bool

llgo:link Model.IsModelValid C.IsModelValid

func (*Model) SetModelMeshMaterial

func (self *Model) SetModelMeshMaterial(meshId c.Int, materialId c.Int)

llgo:link (*Model).SetModelMeshMaterial C.SetModelMeshMaterial

func (Model) Unload

func (self Model) Unload()

llgo:link Model.Unload C.UnloadModel

func (Model) UpdateModelAnimation

func (self Model) UpdateModelAnimation(anim ModelAnimation, frame c.Float)

llgo:link Model.UpdateModelAnimation C.UpdateModelAnimation

func (Model) UpdateModelAnimationEx

func (self Model) UpdateModelAnimationEx(animA ModelAnimation, frameA c.Float, animB ModelAnimation, frameB c.Float, blend c.Float)

llgo:link Model.UpdateModelAnimationEx C.UpdateModelAnimationEx

type ModelAnimPose

type ModelAnimPose = *Transform

Anim pose, an array of Transform[]

type ModelAnimation

type ModelAnimation struct {
	Name          [32]c.Char
	BoneCount     c.Int
	KeyframeCount c.Int
	KeyframePoses *ModelAnimPose
}

ModelAnimation, contains a full animation sequence

func LoadModelAnimations

func LoadModelAnimations(fileName *c.Char, animCount *c.Int) *ModelAnimation

Model animations loading/unloading functions

func (*ModelAnimation) UnloadModelAnimations

func (self *ModelAnimation) UnloadModelAnimations(animCount c.Int)

llgo:link (*ModelAnimation).UnloadModelAnimations C.UnloadModelAnimations

type ModelSkeleton

type ModelSkeleton struct {
	BoneCount c.Int
	Bones     *BoneInfo
	BindPose  ModelAnimPose
}

Skeleton, animation bones hierarchy

type MouseButton

type MouseButton c.Uint

Mouse buttons

const (
	// Mouse button left
	MOUSE_BUTTON_LEFT MouseButton = 0
	// Mouse button right
	MOUSE_BUTTON_RIGHT MouseButton = 1
	// Mouse button middle (pressed wheel)
	MOUSE_BUTTON_MIDDLE MouseButton = 2
	// Mouse button side (advanced mouse device)
	MOUSE_BUTTON_SIDE MouseButton = 3
	// Mouse button extra (advanced mouse device)
	MOUSE_BUTTON_EXTRA MouseButton = 4
	// Mouse button forward (advanced mouse device)
	MOUSE_BUTTON_FORWARD MouseButton = 5
	// Mouse button back (advanced mouse device)
	MOUSE_BUTTON_BACK MouseButton = 6
)

type MouseCursor

type MouseCursor c.Uint

Mouse cursor

const (
	// Default pointer shape
	MOUSE_CURSOR_DEFAULT MouseCursor = 0
	// Arrow shape
	MOUSE_CURSOR_ARROW MouseCursor = 1
	// Text writing cursor shape
	MOUSE_CURSOR_IBEAM MouseCursor = 2
	// Cross shape
	MOUSE_CURSOR_CROSSHAIR MouseCursor = 3
	// Pointing hand cursor
	MOUSE_CURSOR_POINTING_HAND MouseCursor = 4
	// Horizontal resize/move arrow shape
	MOUSE_CURSOR_RESIZE_EW MouseCursor = 5
	// Vertical resize/move arrow shape
	MOUSE_CURSOR_RESIZE_NS MouseCursor = 6
	// Top-left to bottom-right diagonal resize/move arrow shape
	MOUSE_CURSOR_RESIZE_NWSE MouseCursor = 7
	// The top-right to bottom-left diagonal resize/move arrow shape
	MOUSE_CURSOR_RESIZE_NESW MouseCursor = 8
	// The omnidirectional resize/move cursor shape
	MOUSE_CURSOR_RESIZE_ALL MouseCursor = 9
	// The operation-not-allowed shape
	MOUSE_CURSOR_NOT_ALLOWED MouseCursor = 10
)

type Music

type Music struct {
	Stream     AudioStream
	FrameCount c.Uint
	Looping    bool
	CtxType    c.Int
	CtxData    unsafe.Pointer
}

Music, audio stream, anything longer than ~10 seconds should be streamed

func LoadMusicStream

func LoadMusicStream(fileName *c.Char) Music

Music management functions

func LoadMusicStreamFromMemory

func LoadMusicStreamFromMemory(fileType *c.Char, data *uint8, dataSize c.Int) Music

func (Music) IsMusicStreamPlaying

func (self Music) IsMusicStreamPlaying() bool

llgo:link Music.IsMusicStreamPlaying C.IsMusicStreamPlaying

func (Music) IsMusicValid

func (self Music) IsMusicValid() bool

llgo:link Music.IsMusicValid C.IsMusicValid

func (Music) PauseMusicStream

func (self Music) PauseMusicStream()

llgo:link Music.PauseMusicStream C.PauseMusicStream

func (Music) PlayMusicStream

func (self Music) PlayMusicStream()

llgo:link Music.PlayMusicStream C.PlayMusicStream

func (Music) ResumeMusicStream

func (self Music) ResumeMusicStream()

llgo:link Music.ResumeMusicStream C.ResumeMusicStream

func (Music) SeekMusicStream

func (self Music) SeekMusicStream(position c.Float)

llgo:link Music.SeekMusicStream C.SeekMusicStream

func (Music) SetMusicPan

func (self Music) SetMusicPan(pan c.Float)

llgo:link Music.SetMusicPan C.SetMusicPan

func (Music) SetMusicPitch

func (self Music) SetMusicPitch(pitch c.Float)

llgo:link Music.SetMusicPitch C.SetMusicPitch

func (Music) SetMusicVolume

func (self Music) SetMusicVolume(volume c.Float)

llgo:link Music.SetMusicVolume C.SetMusicVolume

func (Music) StopMusicStream

func (self Music) StopMusicStream()

llgo:link Music.StopMusicStream C.StopMusicStream

func (Music) TimeLength

func (self Music) TimeLength() c.Float

llgo:link Music.TimeLength C.GetMusicTimeLength

func (Music) TimePlayed

func (self Music) TimePlayed() c.Float

llgo:link Music.TimePlayed C.GetMusicTimePlayed

func (Music) UnloadMusicStream

func (self Music) UnloadMusicStream()

llgo:link Music.UnloadMusicStream C.UnloadMusicStream

func (Music) UpdateMusicStream

func (self Music) UpdateMusicStream()

llgo:link Music.UpdateMusicStream C.UpdateMusicStream

type NPatchInfo

type NPatchInfo struct {
	Source Rectangle
	Left   c.Int
	Top    c.Int
	Right  c.Int
	Bottom c.Int
	Layout c.Int
}

NPatchInfo, n-patch layout info

type NPatchLayout

type NPatchLayout c.Uint

N-patch layout

const (
	// Npatch layout: 3x3 tiles
	NPATCH_NINE_PATCH NPatchLayout = 0
	// Npatch layout: 1x3 tiles
	NPATCH_THREE_PATCH_VERTICAL NPatchLayout = 1
	// Npatch layout: 3x1 tiles
	NPATCH_THREE_PATCH_HORIZONTAL NPatchLayout = 2
)

type PixelFormat

type PixelFormat c.Uint

Pixel formats NOTE: Support depends on OpenGL version and platform

const (
	// 8 bit per pixel (no alpha)
	PIXELFORMAT_UNCOMPRESSED_GRAYSCALE PixelFormat = 1
	// 8*2 bpp (2 channels)
	PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA PixelFormat = 2
	// 16 bpp
	PIXELFORMAT_UNCOMPRESSED_R5G6B5 PixelFormat = 3
	// 24 bpp
	PIXELFORMAT_UNCOMPRESSED_R8G8B8 PixelFormat = 4
	// 16 bpp (1 bit alpha)
	PIXELFORMAT_UNCOMPRESSED_R5G5B5A1 PixelFormat = 5
	// 16 bpp (4 bit alpha)
	PIXELFORMAT_UNCOMPRESSED_R4G4B4A4 PixelFormat = 6
	// 32 bpp
	PIXELFORMAT_UNCOMPRESSED_R8G8B8A8 PixelFormat = 7
	// 32 bpp (1 channel - float)
	PIXELFORMAT_UNCOMPRESSED_R32 PixelFormat = 8
	// 32*3 bpp (3 channels - float)
	PIXELFORMAT_UNCOMPRESSED_R32G32B32 PixelFormat = 9
	// 32*4 bpp (4 channels - float)
	PIXELFORMAT_UNCOMPRESSED_R32G32B32A32 PixelFormat = 10
	// 16 bpp (1 channel - half float)
	PIXELFORMAT_UNCOMPRESSED_R16 PixelFormat = 11
	// 16*3 bpp (3 channels - half float)
	PIXELFORMAT_UNCOMPRESSED_R16G16B16 PixelFormat = 12
	// 16*4 bpp (4 channels - half float)
	PIXELFORMAT_UNCOMPRESSED_R16G16B16A16 PixelFormat = 13
	// 4 bpp (no alpha)
	PIXELFORMAT_COMPRESSED_DXT1_RGB PixelFormat = 14
	// 4 bpp (1 bit alpha)
	PIXELFORMAT_COMPRESSED_DXT1_RGBA PixelFormat = 15
	// 8 bpp
	PIXELFORMAT_COMPRESSED_DXT3_RGBA PixelFormat = 16
	// 8 bpp
	PIXELFORMAT_COMPRESSED_DXT5_RGBA PixelFormat = 17
	// 4 bpp
	PIXELFORMAT_COMPRESSED_ETC1_RGB PixelFormat = 18
	// 4 bpp
	PIXELFORMAT_COMPRESSED_ETC2_RGB PixelFormat = 19
	// 8 bpp
	PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA PixelFormat = 20
	// 4 bpp
	PIXELFORMAT_COMPRESSED_PVRT_RGB PixelFormat = 21
	// 4 bpp
	PIXELFORMAT_COMPRESSED_PVRT_RGBA PixelFormat = 22
	// 8 bpp
	PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA PixelFormat = 23
	// 2 bpp
	PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA PixelFormat = 24
)

type Quaternion

type Quaternion = Vector4

Quaternion, 4 components (Vector4 alias)

type RAudioBuffer

type RAudioBuffer struct {
}

type RAudioProcessor

type RAudioProcessor struct {
}

type Ray

type Ray struct {
	Position  Vector3
	Direction Vector3
}

Ray, ray for raycasting

func (Ray) CollisionBox

func (self Ray) CollisionBox(box BoundingBox) RayCollision

llgo:link Ray.CollisionBox C.GetRayCollisionBox

func (Ray) CollisionMesh

func (self Ray) CollisionMesh(mesh Mesh, transform Matrix) RayCollision

llgo:link Ray.CollisionMesh C.GetRayCollisionMesh

func (Ray) CollisionQuad

func (self Ray) CollisionQuad(p1 Vector3, p2 Vector3, p3 Vector3, p4 Vector3) RayCollision

llgo:link Ray.CollisionQuad C.GetRayCollisionQuad

func (Ray) CollisionSphere

func (self Ray) CollisionSphere(center Vector3, radius c.Float) RayCollision

llgo:link Ray.CollisionSphere C.GetRayCollisionSphere

func (Ray) CollisionTriangle

func (self Ray) CollisionTriangle(p1 Vector3, p2 Vector3, p3 Vector3) RayCollision

llgo:link Ray.CollisionTriangle C.GetRayCollisionTriangle

func (Ray) Draw

func (self Ray) Draw(color Color)

llgo:link Ray.Draw C.DrawRay

type RayCollision

type RayCollision struct {
	Hit      bool
	Distance c.Float
	Point    Vector3
	Normal   Vector3
}

RayCollision, ray hit information

type Rectangle

type Rectangle struct {
	X      c.Float
	Y      c.Float
	Width  c.Float
	Height c.Float
}

Rectangle, 4 components

func GetCollisionRec

func GetCollisionRec(rec1 Rectangle, rec2 Rectangle) Rectangle

func GetShapesTextureRectangle

func GetShapesTextureRectangle() Rectangle

func (Rectangle) DrawRectangleGradientEx

func (self Rectangle) DrawRectangleGradientEx(topLeft Color, bottomLeft Color, bottomRight Color, topRight Color)

llgo:link Rectangle.DrawRectangleGradientEx C.DrawRectangleGradientEx

func (Rectangle) DrawRectangleLinesEx

func (self Rectangle) DrawRectangleLinesEx(lineThick c.Float, color Color)

llgo:link Rectangle.DrawRectangleLinesEx C.DrawRectangleLinesEx

func (Rectangle) DrawRectanglePro

func (self Rectangle) DrawRectanglePro(origin Vector2, rotation c.Float, color Color)

llgo:link Rectangle.DrawRectanglePro C.DrawRectanglePro

func (Rectangle) DrawRectangleRec

func (self Rectangle) DrawRectangleRec(color Color)

llgo:link Rectangle.DrawRectangleRec C.DrawRectangleRec

func (Rectangle) DrawRectangleRounded

func (self Rectangle) DrawRectangleRounded(roundness c.Float, segments c.Int, color Color)

llgo:link Rectangle.DrawRectangleRounded C.DrawRectangleRounded

func (Rectangle) DrawRectangleRoundedLines

func (self Rectangle) DrawRectangleRoundedLines(roundness c.Float, segments c.Int, color Color)

llgo:link Rectangle.DrawRectangleRoundedLines C.DrawRectangleRoundedLines

func (Rectangle) DrawRectangleRoundedLinesEx

func (self Rectangle) DrawRectangleRoundedLinesEx(roundness c.Float, segments c.Int, lineThick c.Float, color Color)

llgo:link Rectangle.DrawRectangleRoundedLinesEx C.DrawRectangleRoundedLinesEx

type RenderTexture

type RenderTexture struct {
	Id      c.Uint
	Texture Texture
	Depth   Texture
}

RenderTexture, fbo for texture rendering

type RenderTexture2D

type RenderTexture2D = RenderTexture

RenderTexture2D, same as RenderTexture

func LoadRenderTexture

func LoadRenderTexture(width c.Int, height c.Int) RenderTexture2D

func (RenderTexture2D) BeginTextureMode

func (self RenderTexture2D) BeginTextureMode()

llgo:link RenderTexture2D.BeginTextureMode C.BeginTextureMode

func (RenderTexture2D) IsRenderTextureValid

func (self RenderTexture2D) IsRenderTextureValid() bool

llgo:link RenderTexture2D.IsRenderTextureValid C.IsRenderTextureValid

func (RenderTexture2D) UnloadRenderTexture

func (self RenderTexture2D) UnloadRenderTexture()

llgo:link RenderTexture2D.UnloadRenderTexture C.UnloadRenderTexture

type SaveFileDataCallback

type SaveFileDataCallback = func(_llcppg_param1 *c.Char, _llcppg_param2 unsafe.Pointer, _llcppg_param3 c.Int) bool

llgo:type C

type SaveFileTextCallback

type SaveFileTextCallback = func(_llcppg_param1 *c.Char, _llcppg_param2 *c.Char) bool

llgo:type C

type Shader

type Shader struct {
	Id   c.Uint
	Locs *c.Int
}

Shader

func LoadShader

func LoadShader(vsFileName *c.Char, fsFileName *c.Char) Shader

Shader management functions NOTE: Shader functionality is not available on OpenGL 1.1

func LoadShaderFromMemory

func LoadShaderFromMemory(vsCode *c.Char, fsCode *c.Char) Shader

func (Shader) BeginShaderMode

func (self Shader) BeginShaderMode()

llgo:link Shader.BeginShaderMode C.BeginShaderMode

func (Shader) IsShaderValid

func (self Shader) IsShaderValid() bool

llgo:link Shader.IsShaderValid C.IsShaderValid

func (Shader) Location

func (self Shader) Location(uniformName *c.Char) c.Int

llgo:link Shader.Location C.GetShaderLocation

func (Shader) LocationAttrib

func (self Shader) LocationAttrib(attribName *c.Char) c.Int

llgo:link Shader.LocationAttrib C.GetShaderLocationAttrib

func (Shader) SetShaderValue

func (self Shader) SetShaderValue(locIndex c.Int, value unsafe.Pointer, uniformType c.Int)

llgo:link Shader.SetShaderValue C.SetShaderValue

func (Shader) SetShaderValueMatrix

func (self Shader) SetShaderValueMatrix(locIndex c.Int, mat Matrix)

llgo:link Shader.SetShaderValueMatrix C.SetShaderValueMatrix

func (Shader) SetShaderValueTexture

func (self Shader) SetShaderValueTexture(locIndex c.Int, texture Texture2D)

llgo:link Shader.SetShaderValueTexture C.SetShaderValueTexture

func (Shader) SetShaderValueV

func (self Shader) SetShaderValueV(locIndex c.Int, value unsafe.Pointer, uniformType c.Int, count c.Int)

llgo:link Shader.SetShaderValueV C.SetShaderValueV

func (Shader) Unload

func (self Shader) Unload()

llgo:link Shader.Unload C.UnloadShader

type ShaderAttributeDataType

type ShaderAttributeDataType c.Uint

Shader attribute data types

const (
	// Shader attribute type: float
	SHADER_ATTRIB_FLOAT ShaderAttributeDataType = 0
	// Shader attribute type: vec2 (2 float)
	SHADER_ATTRIB_VEC2 ShaderAttributeDataType = 1
	// Shader attribute type: vec3 (3 float)
	SHADER_ATTRIB_VEC3 ShaderAttributeDataType = 2
	// Shader attribute type: vec4 (4 float)
	SHADER_ATTRIB_VEC4 ShaderAttributeDataType = 3
)

type ShaderLocationIndex

type ShaderLocationIndex c.Uint

Shader location index NOTE: Some locations are tried to be set automatically on shader loading, but only if default attributes/uniforms names are found, check config.h for names

const (
	// Shader location: vertex attribute: position
	SHADER_LOC_VERTEX_POSITION ShaderLocationIndex = 0
	// Shader location: vertex attribute: texcoord01
	SHADER_LOC_VERTEX_TEXCOORD01 ShaderLocationIndex = 1
	// Shader location: vertex attribute: texcoord02
	SHADER_LOC_VERTEX_TEXCOORD02 ShaderLocationIndex = 2
	// Shader location: vertex attribute: normal
	SHADER_LOC_VERTEX_NORMAL ShaderLocationIndex = 3
	// Shader location: vertex attribute: tangent
	SHADER_LOC_VERTEX_TANGENT ShaderLocationIndex = 4
	// Shader location: vertex attribute: color
	SHADER_LOC_VERTEX_COLOR ShaderLocationIndex = 5
	// Shader location: matrix uniform: model-view-projection
	SHADER_LOC_MATRIX_MVP ShaderLocationIndex = 6
	// Shader location: matrix uniform: view (camera transform)
	SHADER_LOC_MATRIX_VIEW ShaderLocationIndex = 7
	// Shader location: matrix uniform: projection
	SHADER_LOC_MATRIX_PROJECTION ShaderLocationIndex = 8
	// Shader location: matrix uniform: model (transform)
	SHADER_LOC_MATRIX_MODEL ShaderLocationIndex = 9
	// Shader location: matrix uniform: normal
	SHADER_LOC_MATRIX_NORMAL ShaderLocationIndex = 10
	// Shader location: vector uniform: view
	SHADER_LOC_VECTOR_VIEW ShaderLocationIndex = 11
	// Shader location: vector uniform: diffuse color
	SHADER_LOC_COLOR_DIFFUSE ShaderLocationIndex = 12
	// Shader location: vector uniform: specular color
	SHADER_LOC_COLOR_SPECULAR ShaderLocationIndex = 13
	// Shader location: vector uniform: ambient color
	SHADER_LOC_COLOR_AMBIENT ShaderLocationIndex = 14
	// Shader location: sampler2d texture: albedo (same as: SHADER_LOC_MAP_DIFFUSE)
	SHADER_LOC_MAP_ALBEDO ShaderLocationIndex = 15
	// Shader location: sampler2d texture: metalness (same as: SHADER_LOC_MAP_SPECULAR)
	SHADER_LOC_MAP_METALNESS ShaderLocationIndex = 16
	// Shader location: sampler2d texture: normal
	SHADER_LOC_MAP_NORMAL ShaderLocationIndex = 17
	// Shader location: sampler2d texture: roughness
	SHADER_LOC_MAP_ROUGHNESS ShaderLocationIndex = 18
	// Shader location: sampler2d texture: occlusion
	SHADER_LOC_MAP_OCCLUSION ShaderLocationIndex = 19
	// Shader location: sampler2d texture: emission
	SHADER_LOC_MAP_EMISSION ShaderLocationIndex = 20
	// Shader location: sampler2d texture: heightmap
	SHADER_LOC_MAP_HEIGHT ShaderLocationIndex = 21
	// Shader location: samplerCube texture: cubemap
	SHADER_LOC_MAP_CUBEMAP ShaderLocationIndex = 22
	// Shader location: samplerCube texture: irradiance
	SHADER_LOC_MAP_IRRADIANCE ShaderLocationIndex = 23
	// Shader location: samplerCube texture: prefilter
	SHADER_LOC_MAP_PREFILTER ShaderLocationIndex = 24
	// Shader location: sampler2d texture: brdf
	SHADER_LOC_MAP_BRDF ShaderLocationIndex = 25
	// Shader location: vertex attribute: bone indices
	SHADER_LOC_VERTEX_BONEIDS ShaderLocationIndex = 26
	// Shader location: vertex attribute: bone weights
	SHADER_LOC_VERTEX_BONEWEIGHTS ShaderLocationIndex = 27
	// Shader location: matrix attribute: bone transforms (animation)
	SHADER_LOC_MATRIX_BONETRANSFORMS ShaderLocationIndex = 28
	// Shader location: vertex attribute: instance transforms
	SHADER_LOC_VERTEX_INSTANCETRANSFORM ShaderLocationIndex = 29
)

type ShaderUniformDataType

type ShaderUniformDataType c.Uint

Shader uniform data type

const (
	// Shader uniform type: float
	SHADER_UNIFORM_FLOAT ShaderUniformDataType = 0
	// Shader uniform type: vec2 (2 float)
	SHADER_UNIFORM_VEC2 ShaderUniformDataType = 1
	// Shader uniform type: vec3 (3 float)
	SHADER_UNIFORM_VEC3 ShaderUniformDataType = 2
	// Shader uniform type: vec4 (4 float)
	SHADER_UNIFORM_VEC4 ShaderUniformDataType = 3
	// Shader uniform type: int
	SHADER_UNIFORM_INT ShaderUniformDataType = 4
	// Shader uniform type: ivec2 (2 int)
	SHADER_UNIFORM_IVEC2 ShaderUniformDataType = 5
	// Shader uniform type: ivec3 (3 int)
	SHADER_UNIFORM_IVEC3 ShaderUniformDataType = 6
	// Shader uniform type: ivec4 (4 int)
	SHADER_UNIFORM_IVEC4 ShaderUniformDataType = 7
	// Shader uniform type: unsigned int
	SHADER_UNIFORM_UINT ShaderUniformDataType = 8
	// Shader uniform type: uivec2 (2 unsigned int)
	SHADER_UNIFORM_UIVEC2 ShaderUniformDataType = 9
	// Shader uniform type: uivec3 (3 unsigned int)
	SHADER_UNIFORM_UIVEC3 ShaderUniformDataType = 10
	// Shader uniform type: uivec4 (4 unsigned int)
	SHADER_UNIFORM_UIVEC4 ShaderUniformDataType = 11
	// Shader uniform type: sampler2d
	SHADER_UNIFORM_SAMPLER2D ShaderUniformDataType = 12
)

type Sound

type Sound struct {
	Stream     AudioStream
	FrameCount c.Uint
}

Sound

func LoadSound

func LoadSound(fileName *c.Char) Sound

func (Sound) IsSoundPlaying

func (self Sound) IsSoundPlaying() bool

llgo:link Sound.IsSoundPlaying C.IsSoundPlaying

func (Sound) IsSoundValid

func (self Sound) IsSoundValid() bool

llgo:link Sound.IsSoundValid C.IsSoundValid

func (Sound) LoadSoundAlias

func (self Sound) LoadSoundAlias() Sound

llgo:link Sound.LoadSoundAlias C.LoadSoundAlias

func (Sound) Pause

func (self Sound) Pause()

llgo:link Sound.Pause C.PauseSound

func (Sound) Play

func (self Sound) Play()

Wave/Sound management functions

llgo:link Sound.Play C.PlaySound

func (Sound) Resume

func (self Sound) Resume()

llgo:link Sound.Resume C.ResumeSound

func (Sound) SetSoundPan

func (self Sound) SetSoundPan(pan c.Float)

llgo:link Sound.SetSoundPan C.SetSoundPan

func (Sound) SetSoundPitch

func (self Sound) SetSoundPitch(pitch c.Float)

llgo:link Sound.SetSoundPitch C.SetSoundPitch

func (Sound) SetSoundVolume

func (self Sound) SetSoundVolume(volume c.Float)

llgo:link Sound.SetSoundVolume C.SetSoundVolume

func (Sound) Stop

func (self Sound) Stop()

llgo:link Sound.Stop C.StopSound

func (Sound) Unload

func (self Sound) Unload()

llgo:link Sound.Unload C.UnloadSound

func (Sound) UnloadSoundAlias

func (self Sound) UnloadSoundAlias()

llgo:link Sound.UnloadSoundAlias C.UnloadSoundAlias

func (Sound) Update

func (self Sound) Update(data unsafe.Pointer, sampleCount c.Int)

llgo:link Sound.Update C.UpdateSound

type Texture

type Texture struct {
	Id      c.Uint
	Width   c.Int
	Height  c.Int
	Mipmaps c.Int
	Format  c.Int
}

Texture, tex data stored in GPU memory (VRAM)

type Texture2D

type Texture2D = Texture

Texture2D, same as Texture

func GetShapesTexture

func GetShapesTexture() Texture2D

func LoadTexture

func LoadTexture(fileName *c.Char) Texture2D

Texture loading functions NOTE: These functions require GPU access

func (Texture2D) DrawTexture

func (self Texture2D) DrawTexture(posX c.Int, posY c.Int, tint Color)

Texture drawing functions

llgo:link Texture2D.DrawTexture C.DrawTexture

func (Texture2D) DrawTextureEx

func (self Texture2D) DrawTextureEx(position Vector2, rotation c.Float, scale c.Float, tint Color)

llgo:link Texture2D.DrawTextureEx C.DrawTextureEx

func (Texture2D) DrawTextureNPatch

func (self Texture2D) DrawTextureNPatch(nPatchInfo NPatchInfo, dest Rectangle, origin Vector2, rotation c.Float, tint Color)

llgo:link Texture2D.DrawTextureNPatch C.DrawTextureNPatch

func (Texture2D) DrawTexturePro

func (self Texture2D) DrawTexturePro(source Rectangle, dest Rectangle, origin Vector2, rotation c.Float, tint Color)

llgo:link Texture2D.DrawTexturePro C.DrawTexturePro

func (Texture2D) DrawTextureRec

func (self Texture2D) DrawTextureRec(source Rectangle, position Vector2, tint Color)

llgo:link Texture2D.DrawTextureRec C.DrawTextureRec

func (Texture2D) DrawTextureV

func (self Texture2D) DrawTextureV(position Vector2, tint Color)

llgo:link Texture2D.DrawTextureV C.DrawTextureV

func (*Texture2D) GenTextureMipmaps

func (self *Texture2D) GenTextureMipmaps()

Texture configuration functions

llgo:link (*Texture2D).GenTextureMipmaps C.GenTextureMipmaps

func (Texture2D) IsTextureValid

func (self Texture2D) IsTextureValid() bool

llgo:link Texture2D.IsTextureValid C.IsTextureValid

func (Texture2D) LoadImageFromTexture

func (self Texture2D) LoadImageFromTexture() Image

llgo:link Texture2D.LoadImageFromTexture C.LoadImageFromTexture

func (Texture2D) SetShapesTexture

func (self Texture2D) SetShapesTexture(source Rectangle)

------------------------------------------------------------------------------------ Basic Shapes Drawing Functions (Module: shapes) ------------------------------------------------------------------------------------ Set texture and rectangle to be used on shapes drawing NOTE: It can be useful when using basic shapes and one single font, defining a font char white rectangle would allow drawing everything in a single draw call

llgo:link Texture2D.SetShapesTexture C.SetShapesTexture

func (Texture2D) SetTextureFilter

func (self Texture2D) SetTextureFilter(filter c.Int)

llgo:link Texture2D.SetTextureFilter C.SetTextureFilter

func (Texture2D) SetTextureWrap

func (self Texture2D) SetTextureWrap(wrap c.Int)

llgo:link Texture2D.SetTextureWrap C.SetTextureWrap

func (Texture2D) UnloadTexture

func (self Texture2D) UnloadTexture()

llgo:link Texture2D.UnloadTexture C.UnloadTexture

func (Texture2D) UpdateTexture

func (self Texture2D) UpdateTexture(pixels unsafe.Pointer)

llgo:link Texture2D.UpdateTexture C.UpdateTexture

func (Texture2D) UpdateTextureRec

func (self Texture2D) UpdateTextureRec(rec Rectangle, pixels unsafe.Pointer)

llgo:link Texture2D.UpdateTextureRec C.UpdateTextureRec

type TextureCubemap

type TextureCubemap = Texture

TextureCubemap, same as Texture

type TextureFilter

type TextureFilter c.Uint

Texture parameters: filter mode NOTE 1: Filtering considers mipmaps if available in the texture NOTE 2: Filter is accordingly set for minification and magnification

const (
	// No filter, pixel approximation
	TEXTURE_FILTER_POINT TextureFilter = 0
	// Linear filtering
	TEXTURE_FILTER_BILINEAR TextureFilter = 1
	// Trilinear filtering (linear with mipmaps)
	TEXTURE_FILTER_TRILINEAR TextureFilter = 2
	// Anisotropic filtering 4x
	TEXTURE_FILTER_ANISOTROPIC_4X TextureFilter = 3
	// Anisotropic filtering 8x
	TEXTURE_FILTER_ANISOTROPIC_8X TextureFilter = 4
	// Anisotropic filtering 16x
	TEXTURE_FILTER_ANISOTROPIC_16X TextureFilter = 5
)

type TextureWrap

type TextureWrap c.Uint

Texture parameters: wrap mode

const (
	// Repeats texture in tiled mode
	TEXTURE_WRAP_REPEAT TextureWrap = 0
	// Clamps texture to edge pixel in tiled mode
	TEXTURE_WRAP_CLAMP TextureWrap = 1
	// Mirrors and repeats the texture in tiled mode
	TEXTURE_WRAP_MIRROR_REPEAT TextureWrap = 2
	// Mirrors and clamps to border the texture in tiled mode
	TEXTURE_WRAP_MIRROR_CLAMP TextureWrap = 3
)

type TraceLogCallback

type TraceLogCallback = func(_llcppg_param1 c.Int, _llcppg_param2 *c.Char, _llcppg_param3 c.VaList)

Callbacks to hook some internal functions WARNING: These callbacks are intended for advanced users

llgo:type C

type TraceLogLevel

type TraceLogLevel c.Uint

Trace log level NOTE: Organized by priority level

const (
	// Display all logs
	LOG_ALL TraceLogLevel = 0
	// Trace logging, intended for internal use only
	LOG_TRACE TraceLogLevel = 1
	// Debug logging, used for internal debugging, it should be disabled on release builds
	LOG_DEBUG TraceLogLevel = 2
	// Info logging, used for program execution info
	LOG_INFO TraceLogLevel = 3
	// Warning logging, used on recoverable failures
	LOG_WARNING TraceLogLevel = 4
	// Error logging, used on unrecoverable failures
	LOG_ERROR TraceLogLevel = 5
	// Fatal logging, used to abort program: exit(EXIT_FAILURE)
	LOG_FATAL TraceLogLevel = 6
	// Disable logging
	LOG_NONE TraceLogLevel = 7
)

type Transform

type Transform struct {
	Translation Vector3
	Rotation    Quaternion
	Scale       Vector3
}

Transform, vertex transformation data

type Vector2

type Vector2 struct {
	X c.Float
	Y c.Float
}

Vector2, 2 components

func GetGestureDragVector

func GetGestureDragVector() Vector2

func GetGesturePinchVector

func GetGesturePinchVector() Vector2

func GetMonitorPosition

func GetMonitorPosition(monitor c.Int) Vector2

func GetMouseDelta

func GetMouseDelta() Vector2

func GetMousePosition

func GetMousePosition() Vector2

func GetMouseWheelMoveV

func GetMouseWheelMoveV() Vector2

func GetTouchPosition

func GetTouchPosition(index c.Int) Vector2

func GetWindowPosition

func GetWindowPosition() Vector2

func GetWindowScaleDPI

func GetWindowScaleDPI() Vector2

func (Vector2) CheckCollisionCircleLine

func (self Vector2) CheckCollisionCircleLine(radius c.Float, p1 Vector2, p2 Vector2) bool

llgo:link Vector2.CheckCollisionCircleLine C.CheckCollisionCircleLine

func (Vector2) CheckCollisionCircleRec

func (self Vector2) CheckCollisionCircleRec(radius c.Float, rec Rectangle) bool

llgo:link Vector2.CheckCollisionCircleRec C.CheckCollisionCircleRec

func (Vector2) CheckCollisionCircles

func (self Vector2) CheckCollisionCircles(radius1 c.Float, center2 Vector2, radius2 c.Float) bool

llgo:link Vector2.CheckCollisionCircles C.CheckCollisionCircles

func (Vector2) CheckCollisionLines

func (self Vector2) CheckCollisionLines(endPos1 Vector2, startPos2 Vector2, endPos2 Vector2, collisionPoint *Vector2) bool

llgo:link Vector2.CheckCollisionLines C.CheckCollisionLines

func (Vector2) CheckCollisionPointCircle

func (self Vector2) CheckCollisionPointCircle(center Vector2, radius c.Float) bool

llgo:link Vector2.CheckCollisionPointCircle C.CheckCollisionPointCircle

func (Vector2) CheckCollisionPointLine

func (self Vector2) CheckCollisionPointLine(p1 Vector2, p2 Vector2, threshold c.Int) bool

llgo:link Vector2.CheckCollisionPointLine C.CheckCollisionPointLine

func (Vector2) CheckCollisionPointPoly

func (self Vector2) CheckCollisionPointPoly(points *Vector2, pointCount c.Int) bool

llgo:link Vector2.CheckCollisionPointPoly C.CheckCollisionPointPoly

func (Vector2) CheckCollisionPointRec

func (self Vector2) CheckCollisionPointRec(rec Rectangle) bool

llgo:link Vector2.CheckCollisionPointRec C.CheckCollisionPointRec

func (Vector2) CheckCollisionPointTriangle

func (self Vector2) CheckCollisionPointTriangle(p1 Vector2, p2 Vector2, p3 Vector2) bool

llgo:link Vector2.CheckCollisionPointTriangle C.CheckCollisionPointTriangle

func (Vector2) DrawCircleGradient

func (self Vector2) DrawCircleGradient(radius c.Float, inner Color, outer Color)

llgo:link Vector2.DrawCircleGradient C.DrawCircleGradient

func (Vector2) DrawCircleLinesV

func (self Vector2) DrawCircleLinesV(radius c.Float, color Color)

llgo:link Vector2.DrawCircleLinesV C.DrawCircleLinesV

func (Vector2) DrawCircleSector

func (self Vector2) DrawCircleSector(radius c.Float, startAngle c.Float, endAngle c.Float, segments c.Int, color Color)

llgo:link Vector2.DrawCircleSector C.DrawCircleSector

func (Vector2) DrawCircleSectorLines

func (self Vector2) DrawCircleSectorLines(radius c.Float, startAngle c.Float, endAngle c.Float, segments c.Int, color Color)

llgo:link Vector2.DrawCircleSectorLines C.DrawCircleSectorLines

func (Vector2) DrawCircleV

func (self Vector2) DrawCircleV(radius c.Float, color Color)

llgo:link Vector2.DrawCircleV C.DrawCircleV

func (Vector2) DrawEllipseLinesV

func (self Vector2) DrawEllipseLinesV(radiusH c.Float, radiusV c.Float, color Color)

llgo:link Vector2.DrawEllipseLinesV C.DrawEllipseLinesV

func (Vector2) DrawEllipseV

func (self Vector2) DrawEllipseV(radiusH c.Float, radiusV c.Float, color Color)

llgo:link Vector2.DrawEllipseV C.DrawEllipseV

func (Vector2) DrawLineBezier

func (self Vector2) DrawLineBezier(endPos Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawLineBezier C.DrawLineBezier

func (Vector2) DrawLineDashed

func (self Vector2) DrawLineDashed(endPos Vector2, dashSize c.Int, spaceSize c.Int, color Color)

llgo:link Vector2.DrawLineDashed C.DrawLineDashed

func (Vector2) DrawLineEx

func (self Vector2) DrawLineEx(endPos Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawLineEx C.DrawLineEx

func (*Vector2) DrawLineStrip

func (self *Vector2) DrawLineStrip(pointCount c.Int, color Color)

llgo:link (*Vector2).DrawLineStrip C.DrawLineStrip

func (Vector2) DrawLineV

func (self Vector2) DrawLineV(endPos Vector2, color Color)

llgo:link Vector2.DrawLineV C.DrawLineV

func (Vector2) DrawPixelV

func (self Vector2) DrawPixelV(color Color)

llgo:link Vector2.DrawPixelV C.DrawPixelV

func (Vector2) DrawPoly

func (self Vector2) DrawPoly(sides c.Int, radius c.Float, rotation c.Float, color Color)

llgo:link Vector2.DrawPoly C.DrawPoly

func (Vector2) DrawPolyLines

func (self Vector2) DrawPolyLines(sides c.Int, radius c.Float, rotation c.Float, color Color)

llgo:link Vector2.DrawPolyLines C.DrawPolyLines

func (Vector2) DrawPolyLinesEx

func (self Vector2) DrawPolyLinesEx(sides c.Int, radius c.Float, rotation c.Float, lineThick c.Float, color Color)

llgo:link Vector2.DrawPolyLinesEx C.DrawPolyLinesEx

func (Vector2) DrawRectangleV

func (self Vector2) DrawRectangleV(size Vector2, color Color)

llgo:link Vector2.DrawRectangleV C.DrawRectangleV

func (Vector2) DrawRing

func (self Vector2) DrawRing(innerRadius c.Float, outerRadius c.Float, startAngle c.Float, endAngle c.Float, segments c.Int, color Color)

llgo:link Vector2.DrawRing C.DrawRing

func (Vector2) DrawRingLines

func (self Vector2) DrawRingLines(innerRadius c.Float, outerRadius c.Float, startAngle c.Float, endAngle c.Float, segments c.Int, color Color)

llgo:link Vector2.DrawRingLines C.DrawRingLines

func (*Vector2) DrawSplineBasis

func (self *Vector2) DrawSplineBasis(pointCount c.Int, thick c.Float, color Color)

llgo:link (*Vector2).DrawSplineBasis C.DrawSplineBasis

func (*Vector2) DrawSplineBezierCubic

func (self *Vector2) DrawSplineBezierCubic(pointCount c.Int, thick c.Float, color Color)

llgo:link (*Vector2).DrawSplineBezierCubic C.DrawSplineBezierCubic

func (*Vector2) DrawSplineBezierQuadratic

func (self *Vector2) DrawSplineBezierQuadratic(pointCount c.Int, thick c.Float, color Color)

llgo:link (*Vector2).DrawSplineBezierQuadratic C.DrawSplineBezierQuadratic

func (*Vector2) DrawSplineCatmullRom

func (self *Vector2) DrawSplineCatmullRom(pointCount c.Int, thick c.Float, color Color)

llgo:link (*Vector2).DrawSplineCatmullRom C.DrawSplineCatmullRom

func (*Vector2) DrawSplineLinear

func (self *Vector2) DrawSplineLinear(pointCount c.Int, thick c.Float, color Color)

Splines drawing functions

llgo:link (*Vector2).DrawSplineLinear C.DrawSplineLinear

func (Vector2) DrawSplineSegmentBasis

func (self Vector2) DrawSplineSegmentBasis(p2 Vector2, p3 Vector2, p4 Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawSplineSegmentBasis C.DrawSplineSegmentBasis

func (Vector2) DrawSplineSegmentBezierCubic

func (self Vector2) DrawSplineSegmentBezierCubic(c2 Vector2, c3 Vector2, p4 Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawSplineSegmentBezierCubic C.DrawSplineSegmentBezierCubic

func (Vector2) DrawSplineSegmentBezierQuadratic

func (self Vector2) DrawSplineSegmentBezierQuadratic(c2 Vector2, p3 Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawSplineSegmentBezierQuadratic C.DrawSplineSegmentBezierQuadratic

func (Vector2) DrawSplineSegmentCatmullRom

func (self Vector2) DrawSplineSegmentCatmullRom(p2 Vector2, p3 Vector2, p4 Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawSplineSegmentCatmullRom C.DrawSplineSegmentCatmullRom

func (Vector2) DrawSplineSegmentLinear

func (self Vector2) DrawSplineSegmentLinear(p2 Vector2, thick c.Float, color Color)

llgo:link Vector2.DrawSplineSegmentLinear C.DrawSplineSegmentLinear

func (Vector2) DrawTriangle

func (self Vector2) DrawTriangle(v2 Vector2, v3 Vector2, color Color)

llgo:link Vector2.DrawTriangle C.DrawTriangle

func (*Vector2) DrawTriangleFan

func (self *Vector2) DrawTriangleFan(pointCount c.Int, color Color)

llgo:link (*Vector2).DrawTriangleFan C.DrawTriangleFan

func (Vector2) DrawTriangleLines

func (self Vector2) DrawTriangleLines(v2 Vector2, v3 Vector2, color Color)

llgo:link Vector2.DrawTriangleLines C.DrawTriangleLines

func (*Vector2) DrawTriangleStrip

func (self *Vector2) DrawTriangleStrip(pointCount c.Int, color Color)

llgo:link (*Vector2).DrawTriangleStrip C.DrawTriangleStrip

func (Vector2) ScreenToWorld2D

func (self Vector2) ScreenToWorld2D(camera Camera2D) Vector2

llgo:link Vector2.ScreenToWorld2D C.GetScreenToWorld2D

func (Vector2) ScreenToWorldRay

func (self Vector2) ScreenToWorldRay(camera Camera) Ray

llgo:link Vector2.ScreenToWorldRay C.GetScreenToWorldRay

func (Vector2) ScreenToWorldRayEx

func (self Vector2) ScreenToWorldRayEx(camera Camera, width c.Int, height c.Int) Ray

llgo:link Vector2.ScreenToWorldRayEx C.GetScreenToWorldRayEx

func (Vector2) SplinePointBasis

func (self Vector2) SplinePointBasis(p2 Vector2, p3 Vector2, p4 Vector2, t c.Float) Vector2

llgo:link Vector2.SplinePointBasis C.GetSplinePointBasis

func (Vector2) SplinePointBezierCubic

func (self Vector2) SplinePointBezierCubic(c2 Vector2, c3 Vector2, p4 Vector2, t c.Float) Vector2

llgo:link Vector2.SplinePointBezierCubic C.GetSplinePointBezierCubic

func (Vector2) SplinePointBezierQuad

func (self Vector2) SplinePointBezierQuad(c2 Vector2, p3 Vector2, t c.Float) Vector2

llgo:link Vector2.SplinePointBezierQuad C.GetSplinePointBezierQuad

func (Vector2) SplinePointCatmullRom

func (self Vector2) SplinePointCatmullRom(p2 Vector2, p3 Vector2, p4 Vector2, t c.Float) Vector2

llgo:link Vector2.SplinePointCatmullRom C.GetSplinePointCatmullRom

func (Vector2) SplinePointLinear

func (self Vector2) SplinePointLinear(endPos Vector2, t c.Float) Vector2

Spline segment point evaluation functions, for a given t [0.0f .. 1.0f]

llgo:link Vector2.SplinePointLinear C.GetSplinePointLinear

func (Vector2) WorldToScreen2D

func (self Vector2) WorldToScreen2D(camera Camera2D) Vector2

llgo:link Vector2.WorldToScreen2D C.GetWorldToScreen2D

type Vector3

type Vector3 struct {
	X c.Float
	Y c.Float
	Z c.Float
}

Vector3, 3 components

func (Vector3) CheckCollisionSpheres

func (self Vector3) CheckCollisionSpheres(radius1 c.Float, center2 Vector3, radius2 c.Float) bool

Collision detection functions

llgo:link Vector3.CheckCollisionSpheres C.CheckCollisionSpheres

func (Vector3) DrawCapsule

func (self Vector3) DrawCapsule(endPos Vector3, radius c.Float, slices c.Int, rings c.Int, color Color)

llgo:link Vector3.DrawCapsule C.DrawCapsule

func (Vector3) DrawCapsuleWires

func (self Vector3) DrawCapsuleWires(endPos Vector3, radius c.Float, slices c.Int, rings c.Int, color Color)

llgo:link Vector3.DrawCapsuleWires C.DrawCapsuleWires

func (Vector3) DrawCircle3D

func (self Vector3) DrawCircle3D(radius c.Float, rotationAxis Vector3, rotationAngle c.Float, color Color)

llgo:link Vector3.DrawCircle3D C.DrawCircle3D

func (Vector3) DrawCube

func (self Vector3) DrawCube(width c.Float, height c.Float, length c.Float, color Color)

llgo:link Vector3.DrawCube C.DrawCube

func (Vector3) DrawCubeV

func (self Vector3) DrawCubeV(size Vector3, color Color)

llgo:link Vector3.DrawCubeV C.DrawCubeV

func (Vector3) DrawCubeWires

func (self Vector3) DrawCubeWires(width c.Float, height c.Float, length c.Float, color Color)

llgo:link Vector3.DrawCubeWires C.DrawCubeWires

func (Vector3) DrawCubeWiresV

func (self Vector3) DrawCubeWiresV(size Vector3, color Color)

llgo:link Vector3.DrawCubeWiresV C.DrawCubeWiresV

func (Vector3) DrawCylinder

func (self Vector3) DrawCylinder(radiusTop c.Float, radiusBottom c.Float, height c.Float, slices c.Int, color Color)

llgo:link Vector3.DrawCylinder C.DrawCylinder

func (Vector3) DrawCylinderEx

func (self Vector3) DrawCylinderEx(endPos Vector3, startRadius c.Float, endRadius c.Float, sides c.Int, color Color)

llgo:link Vector3.DrawCylinderEx C.DrawCylinderEx

func (Vector3) DrawCylinderWires

func (self Vector3) DrawCylinderWires(radiusTop c.Float, radiusBottom c.Float, height c.Float, slices c.Int, color Color)

llgo:link Vector3.DrawCylinderWires C.DrawCylinderWires

func (Vector3) DrawCylinderWiresEx

func (self Vector3) DrawCylinderWiresEx(endPos Vector3, startRadius c.Float, endRadius c.Float, sides c.Int, color Color)

llgo:link Vector3.DrawCylinderWiresEx C.DrawCylinderWiresEx

func (Vector3) DrawLine3D

func (self Vector3) DrawLine3D(endPos Vector3, color Color)

Basic geometric 3D shapes drawing functions

llgo:link Vector3.DrawLine3D C.DrawLine3D

func (Vector3) DrawPlane

func (self Vector3) DrawPlane(size Vector2, color Color)

llgo:link Vector3.DrawPlane C.DrawPlane

func (Vector3) DrawPoint3D

func (self Vector3) DrawPoint3D(color Color)

llgo:link Vector3.DrawPoint3D C.DrawPoint3D

func (Vector3) DrawSphere

func (self Vector3) DrawSphere(radius c.Float, color Color)

llgo:link Vector3.DrawSphere C.DrawSphere

func (Vector3) DrawSphereEx

func (self Vector3) DrawSphereEx(radius c.Float, rings c.Int, slices c.Int, color Color)

llgo:link Vector3.DrawSphereEx C.DrawSphereEx

func (Vector3) DrawSphereWires

func (self Vector3) DrawSphereWires(radius c.Float, rings c.Int, slices c.Int, color Color)

llgo:link Vector3.DrawSphereWires C.DrawSphereWires

func (Vector3) DrawTriangle3D

func (self Vector3) DrawTriangle3D(v2 Vector3, v3 Vector3, color Color)

llgo:link Vector3.DrawTriangle3D C.DrawTriangle3D

func (*Vector3) DrawTriangleStrip3D

func (self *Vector3) DrawTriangleStrip3D(pointCount c.Int, color Color)

llgo:link (*Vector3).DrawTriangleStrip3D C.DrawTriangleStrip3D

func (Vector3) WorldToScreen

func (self Vector3) WorldToScreen(camera Camera) Vector2

llgo:link Vector3.WorldToScreen C.GetWorldToScreen

func (Vector3) WorldToScreenEx

func (self Vector3) WorldToScreenEx(camera Camera, width c.Int, height c.Int) Vector2

llgo:link Vector3.WorldToScreenEx C.GetWorldToScreenEx

type Vector4

type Vector4 struct {
	X c.Float
	Y c.Float
	Z c.Float
	W c.Float
}

Vector4, 4 components

func (Vector4) ColorFromNormalized

func (self Vector4) ColorFromNormalized() Color

llgo:link Vector4.ColorFromNormalized C.ColorFromNormalized

type VrDeviceInfo

type VrDeviceInfo struct {
	HResolution            c.Int
	VResolution            c.Int
	HScreenSize            c.Float
	VScreenSize            c.Float
	EyeToScreenDistance    c.Float
	LensSeparationDistance c.Float
	InterpupillaryDistance c.Float
	LensDistortionValues   [4]c.Float
	ChromaAbCorrection     [4]c.Float
}

VrDeviceInfo, Head-Mounted-Display device parameters

func (VrDeviceInfo) LoadVrStereoConfig

func (self VrDeviceInfo) LoadVrStereoConfig() VrStereoConfig

VR stereo config functions for VR simulator

llgo:link VrDeviceInfo.LoadVrStereoConfig C.LoadVrStereoConfig

type VrStereoConfig

type VrStereoConfig struct {
	Projection        [2]Matrix
	ViewOffset        [2]Matrix
	LeftLensCenter    [2]c.Float
	RightLensCenter   [2]c.Float
	LeftScreenCenter  [2]c.Float
	RightScreenCenter [2]c.Float
	Scale             [2]c.Float
	ScaleIn           [2]c.Float
}

VrStereoConfig, VR stereo rendering configuration for simulator

func (VrStereoConfig) BeginVrStereoMode

func (self VrStereoConfig) BeginVrStereoMode()

llgo:link VrStereoConfig.BeginVrStereoMode C.BeginVrStereoMode

func (VrStereoConfig) Unload

func (self VrStereoConfig) Unload()

llgo:link VrStereoConfig.Unload C.UnloadVrStereoConfig

type Wave

type Wave struct {
	FrameCount c.Uint
	SampleRate c.Uint
	SampleSize c.Uint
	Channels   c.Uint
	Data       unsafe.Pointer
}

Wave, audio wave data

func LoadWave

func LoadWave(fileName *c.Char) Wave

Wave/Sound loading/unloading functions

func LoadWaveFromMemory

func LoadWaveFromMemory(fileType *c.Char, fileData *uint8, dataSize c.Int) Wave

func (Wave) Copy

func (self Wave) Copy() Wave

llgo:link Wave.Copy C.WaveCopy

func (*Wave) Crop

func (self *Wave) Crop(initFrame c.Int, finalFrame c.Int)

llgo:link (*Wave).Crop C.WaveCrop

func (Wave) Export

func (self Wave) Export(fileName *c.Char) bool

llgo:link Wave.Export C.ExportWave

func (Wave) ExportWaveAsCode

func (self Wave) ExportWaveAsCode(fileName *c.Char) bool

llgo:link Wave.ExportWaveAsCode C.ExportWaveAsCode

func (*Wave) Format

func (self *Wave) Format(sampleRate c.Int, sampleSize c.Int, channels c.Int)

llgo:link (*Wave).Format C.WaveFormat

func (Wave) IsWaveValid

func (self Wave) IsWaveValid() bool

llgo:link Wave.IsWaveValid C.IsWaveValid

func (Wave) LoadSoundFrom

func (self Wave) LoadSoundFrom() Sound

llgo:link Wave.LoadSoundFrom C.LoadSoundFromWave

func (Wave) LoadWaveSamples

func (self Wave) LoadWaveSamples() *c.Float

llgo:link Wave.LoadWaveSamples C.LoadWaveSamples

func (Wave) Unload

func (self Wave) Unload()

llgo:link Wave.Unload C.UnloadWave

Jump to

Keyboard shortcuts

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