Added new extension "byte.Lerp". Added new extension "Log" for "TraceLogLevel". Constructors on Color no longer just truncate the float value, but also round it (+ 0.5f). New static method on Color, "Color.Lerp". Added static method "FromHSV" to Color. Added new getter method "GetHSV" on Color. Added index security on the FilePathList indexer. Merged Rectangle extensions with the type itself as read-only methods. Merged Image extensions with the type itself. Merged Texture2D extensions with the type itself. New file "Raymath.Utils" with some useful methods taken from Unity. Added "MoveTowards" extensions to RaylibExtensions. Added "TranslateLocal" and "TranslateGlobal" to Transform. Added "Load", "Export", "ExportAsCode", "Format", "Crop", and "Unload" shortcut methods to Wave. Added "IsValid" property to Wave, Texture2D, Sound, Shader, RenderTexture2D, Music, Image, Model, Material, Font, and AudioStream. Added "IsPlaying" and "IsProcessed" properties to AudioStream. Added "Load", "Play", "Stop", "Pause", "Resume", "SetBufferSizeDefault", "SetPan", "SetPitch", "SetVolume", and "Unload" shortcut methods to AudioStream. Added "Load", "Export", and "Unload" methods to AutomationEventList. Added "Default" property to Font. Added "Load", "GetMaterial", "GetTexture", "SetTexture", "SetShader", and "Unload" methods to material. Added "Draw", "DrawInstanced", "Export", "ExportAsCode", "Upload", and "Unload" methods to Mesh. Added "Load", "LoadFromMesh", "Unload", and a lot of "Draw" overloads. Added "Load", "Play", "Pause", "Stop", "SetPan", "SetPitch", "SetVolume", "Seek", and "Unload" methods to Music. Added "Load" and "Unload" methods to RenderTexture2D. Added "Load", "LoadFromMemory", "GetLocationAttrib", "SetValue", "SetTexture", "SetMatrix", and "Unload" methods to Shader. Removed unnecessary "partial" declarations.
56 lines
1.4 KiB
C#
56 lines
1.4 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace Raylib_cs;
|
|
|
|
/// <summary>Automation event</summary>
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public unsafe struct AutomationEvent
|
|
{
|
|
/// <summary>Event frame</summary>
|
|
public uint Frame;
|
|
|
|
/// <summary>Event type (AutomationEventType)</summary>
|
|
public uint Type;
|
|
|
|
/// <summary>Event parameters (if required)</summary>
|
|
public fixed int Params[4];
|
|
|
|
public readonly void Play()
|
|
{
|
|
Raylib.PlayAutomationEvent(this);
|
|
}
|
|
}
|
|
|
|
/// <summary>Automation event list</summary>
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public unsafe struct AutomationEventList
|
|
{
|
|
/// <summary>Events max entries (MAX_AUTOMATION_EVENTS)</summary>
|
|
public uint Capacity;
|
|
|
|
/// <summary>Events entries count</summary>
|
|
public uint Count;
|
|
|
|
/// <summary>Events entries</summary>
|
|
public AutomationEvent* Events;
|
|
|
|
/// <inheritdoc cref="Events"/>
|
|
public readonly ReadOnlySpan<AutomationEvent> EventsAsSpan => new ReadOnlySpan<AutomationEvent>(Events, (int)Count);
|
|
|
|
public static AutomationEventList Load(string fileName)
|
|
{
|
|
return Raylib.LoadAutomationEventList(fileName);
|
|
}
|
|
|
|
public readonly CBool Export(string fileName)
|
|
{
|
|
return Raylib.ExportAutomationEventList(this, fileName);
|
|
}
|
|
|
|
public void Unload()
|
|
{
|
|
Raylib.UnloadAutomationEventList(this);
|
|
}
|
|
|
|
}
|