private static extern PixelData Internal_Compress(PixelData source, ref CompressionOptions options);
private static extern PixelData Internal_Scale(PixelData source, ref PixelVolume newSize, ScaleFilter filter);
/// <summary> /// Generates mip-maps from the provided source data using the specified compression options. Returned list includes /// the base level. /// </summary> /// <param name="source">Pixels to generate mip-maps for.</param> /// <param name="options">Options controlling mip-map generation.</param> /// <returns>A list of calculated mip-map data. First entry is the largest mip and other follow in order from /// largest to smallest.</returns> public static PixelData[] GenerateMipmaps(PixelData source, MipMapGenOptions options) { return(Internal_GenerateMipmaps(source, ref options)); }
/// <summary> /// Applies gamma correction to the pixels in the provided buffer. /// </summary> /// <param name="source">Source pixels to gamma correct.</param> /// <param name="gamma">Gamma value to apply.</param> public static void ApplyGamma(PixelData source, float gamma) { Internal_ApplyGamma(source, gamma); }
private static extern PixelData[] Internal_GenerateMipmaps(PixelData source, ref MipMapGenOptions options);
/// <summary> /// Updates the look of a specific cursor icon. /// </summary> /// <param name="type">One of the built-in cursor types.</param> /// <param name="iconData">Pixel data specifying the new look.</param> /// <param name="hotspot">Offset into the icon image that determines where the cursor point is.</param> public static void SetCursorIcon(CursorType type, PixelData iconData, Vector2I hotspot) { Internal_SetCursorIcon(type, iconData, ref hotspot); }
private static extern void Internal_LinearToSRGB(PixelData source);
/// <summary> /// Scales pixel data in the source buffer and stores the scaled data in the destination buffer. /// </summary> /// <param name="source">Source pixels to scale.</param> /// <param name="newSize">New dimensions to scale to.</param> /// <param name="filter">Filter to use when scaling.</param> /// <returns>New pixel data object containing the scaled pixels.</returns> public static PixelData Scale(PixelData source, PixelVolume newSize, ScaleFilter filter = ScaleFilter.Linear) { return Internal_Scale(source, ref newSize, filter); }
/// <summary> /// Converts pixel data in linear space to one in sRGB space. Only converts the RGB components. /// </summary> /// <param name="source">Pixels to convert.</param> public static void LinearToSRGB(PixelData source) { Internal_LinearToSRGB(source); }
/// <summary> /// Converts pixel data in sRGB space to one in linear space. Only converts the RGB components. /// </summary> /// <param name="source">Pixels to convert.</param> public static void SRGBToLinear(PixelData source) { Internal_SRGBToLinear(source); }
/// <summary> /// Sets pixels for the specified mip level of the specified face.. /// </summary> /// <param name="data">Pixels to assign to the specified mip level. Pixel data must match the mip level size /// and texture pixel format.</param> /// <param name="face">Face of the cube to access.</param> /// <param name="mipLevel">Mip level to set pixels for. Top level (0) is the highest quality.</param> public void SetPixels(PixelData data, CubeFace face = CubeFace.PositiveX, int mipLevel = 0) { Internal_SetPixels(mCachedPtr, data, face, mipLevel); }
private static extern void Internal_SetCursorIconStr(string name, PixelData iconData, ref Vector2I hotspot);
private static extern void Internal_SetCursorIcon(CursorType cursor, PixelData iconData, ref Vector2I hotspot);
private static extern void Internal_SRGBToLinear(PixelData source);
/// <summary> /// Converts a set of pixels from one format to another. /// </summary> /// <param name="source">Pixels to convert.</param> /// <param name="newFormat">New pixel format.</param> /// <returns>New pixel data object containing the converted pixels.</returns> public static PixelData ConvertFormat(PixelData source, PixelFormat newFormat) { return Internal_ConvertFormat(source, newFormat); }
private static extern void Internal_CreateInstance(PixelData instance, ref PixelVolume volume, PixelFormat format);
/// <summary> /// Sets pixels for the specified mip level. /// </summary> /// <param name="data">Pixels to assign to the specified mip level. Pixel data must match the mip level size /// and texture pixel format.</param> /// <param name="mipLevel">Mip level to set pixels for. Top level (0) is the highest quality.</param> public void SetPixels(PixelData data, int mipLevel = 0) { Internal_SetPixels(mCachedPtr, data, mipLevel); }
private static extern void Internal_SetPixels(IntPtr thisPtr, PixelData data, int mipLevel);
private static extern void Internal_create(PixelData managedInstance, ref PixelVolume volume, PixelFormat format);
/// <summary> /// Compresses the provided pixels using the specified compression options. /// </summary> /// <param name="source">Pixels to compress.</param> /// <param name="options">Options to control the compression. Make sure the format contained within is a /// compressed format.</param> /// <returns>New pixel data object containing the compressed pixels.</returns> public static PixelData Compress(PixelData source, CompressionOptions options) { return(Internal_Compress(source, ref options)); }
private static extern void Internal_create0(PixelData managedInstance, uint width, uint height, uint depth, PixelFormat pixelFormat);
/// <summary> /// Scales pixel data in the source buffer and stores the scaled data in the destination buffer. /// </summary> /// <param name="source">Source pixels to scale.</param> /// <param name="newSize">New dimensions to scale to.</param> /// <param name="filter">Filter to use when scaling.</param> /// <returns>New pixel data object containing the scaled pixels.</returns> public static PixelData Scale(PixelData source, PixelVolume newSize, ScaleFilter filter = ScaleFilter.Linear) { return(Internal_Scale(source, ref newSize, filter)); }
private static extern PixelData Internal_ConvertFormat(PixelData source, PixelFormat newFormat);
private static extern void Internal_ApplyGamma(PixelData source, float gamma);
/// <summary> /// Updates the look of a specific cursor icon. /// </summary> /// <param name="name">Name of the cursor.</param> /// <param name="iconData">Pixel data specifying the new look.</param> /// <param name="hotspot">Offset into the icon image that determines where the cursor point is.</param> public static void SetCursorIcon(string name, PixelData iconData, Vector2I hotspot) { Internal_SetCursorIconStr(name, iconData, ref hotspot); }
/// <summary> /// Compresses the provided pixels using the specified compression options. /// </summary> /// <param name="source">Pixels to compress.</param> /// <param name="options">Options to control the compression. Make sure the format contained within is a /// compressed format.</param> /// <returns>New pixel data object containing the compressed pixels.</returns> public static PixelData Compress(PixelData source, CompressionOptions options) { return Internal_Compress(source, ref options); }
/// <summary> /// Sets pixels for the specified mip level of the specified face. /// </summary> /// <param name="data">Pixels to assign to the specified mip level. Pixel data must match the mip level size /// and texture pixel format.</param> /// <param name="face">Face of the cube to access.</param> /// <param name="mipLevel">Mip level to set pixels for. Top level (0) is the highest quality.</param> public void SetPixels(PixelData data, CubeFace face = CubeFace.PositiveX, int mipLevel = 0) { Internal_SetPixels(mCachedPtr, data, face, mipLevel); }
/// <summary> /// Generates mip-maps from the provided source data using the specified compression options. Returned list includes /// the base level. /// </summary> /// <param name="source">Pixels to generate mip-maps for.</param> /// <param name="options">Options controlling mip-map generation.</param> /// <returns>A list of calculated mip-map data. First entry is the largest mip and other follow in order from /// largest to smallest.</returns> public static PixelData[] GenerateMipmaps(PixelData source, MipMapGenOptions options) { return Internal_GenerateMipmaps(source, ref options); }
private static extern void Internal_SetPixels(IntPtr thisPtr, PixelData data, CubeFace face, int mipLevel);
/// <summary>Sets pixels for the specified mip level and face.</summary> /// <param name="data"> /// Pixels to assign to the specified mip level. Pixel data must match the mip level size and texture pixel format. /// </param> /// <param name="mipLevel">Mip level to set pixels for. Top level (0) is the highest quality.</param> /// <param name="face"> /// Face to write the pixels to. Cubemap textures have six faces whose face indices are as specified in the CubeFace /// enum. Array textures can have an arbitrary number of faces (if it's a cubemap array it has to be a multiple of 6). /// </param> public void SetPixels(PixelData data, uint face = 0, uint mipLevel = 0) { Internal_setPixels(mCachedPtr, data, face, mipLevel); }
/// <summary> /// Converts a set of pixels from one format to another. /// </summary> /// <param name="source">Pixels to convert.</param> /// <param name="newFormat">New pixel format.</param> /// <returns>New pixel data object containing the converted pixels.</returns> public static PixelData ConvertFormat(PixelData source, PixelFormat newFormat) { return(Internal_ConvertFormat(source, newFormat)); }