mirror of
https://github.com/aharabada/glitchy-engine-beef.git
synced 2026-09-05 21:01:52 +00:00
123 lines
3.9 KiB
Beef
123 lines
3.9 KiB
Beef
using DirectX.Common;
|
|
using DirectX.D3D11;
|
|
using System;
|
|
using System.Interop;
|
|
|
|
namespace DirectXTK
|
|
{
|
|
enum DdsAlphaMode : uint32
|
|
{
|
|
Unknown = 0,
|
|
Straight = 1,
|
|
Premultiplied = 2,
|
|
Opaque = 3,
|
|
Custom = 4,
|
|
}
|
|
|
|
public static class DDSTextureLoader
|
|
{
|
|
// Standard version
|
|
[LinkName("DirectXTK_CreateDDSTextureFromMemory"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromMemory(
|
|
ID3D11Device* d3dDevice,
|
|
uint8* ddsData,
|
|
c_size ddsDataSize,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
c_size maxsize = 0,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
[LinkName("DirectXTK_CreateDDSTextureFromFile"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromFile(
|
|
ID3D11Device* d3dDevice,
|
|
c_wchar* szFileName,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
c_size maxsize = 0,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
// Standard version with optional auto-gen mipmap support
|
|
[LinkName("DirectXTK_CreateDDSTextureFromMemoryMip"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromMemory(
|
|
ID3D11Device* d3dDevice,
|
|
ID3D11DeviceContext* d3dContext,
|
|
uint8* ddsData,
|
|
c_size ddsDataSize,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
c_size maxsize = 0,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
[LinkName("DirectXTK_CreateDDSTextureFromFileMip"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromFile(
|
|
ID3D11Device* d3dDevice,
|
|
ID3D11DeviceContext* d3dContext,
|
|
c_wchar* szFileName,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
c_size maxsize = 0,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
// Extended version
|
|
[LinkName("DirectXTK_CreateDDSTextureFromMemoryEx"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromMemoryEx(
|
|
ID3D11Device* d3dDevice,
|
|
uint8* ddsData,
|
|
c_size ddsDataSize,
|
|
c_size maxsize,
|
|
Usage usage,
|
|
BindFlags bindFlags,
|
|
CpuAccessFlags cpuAccessFlags,
|
|
ResourceMiscFlags miscFlags,
|
|
bool forceSRGB,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
[LinkName("DirectXTK_CreateDDSTextureFromFileEx"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromFileEx(
|
|
ID3D11Device* d3dDevice,
|
|
c_wchar* szFileName,
|
|
c_size maxsize,
|
|
Usage usage,
|
|
BindFlags bindFlags,
|
|
CpuAccessFlags cpuAccessFlags,
|
|
ResourceMiscFlags miscFlags,
|
|
bool forceSRGB,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
// Extended version with optional auto-gen mipmap support
|
|
[LinkName("DirectXTK_CreateDDSTextureFromMemoryExMip"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromMemoryEx(
|
|
ID3D11Device* d3dDevice,
|
|
ID3D11DeviceContext* d3dContext,
|
|
uint8* ddsData,
|
|
c_size ddsDataSize,
|
|
c_size maxsize,
|
|
Usage usage,
|
|
BindFlags bindFlags,
|
|
CpuAccessFlags cpuAccessFlags,
|
|
ResourceMiscFlags miscFlags,
|
|
bool forceSRGB,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
DdsAlphaMode* alphaMode = null);
|
|
|
|
[LinkName("DirectXTK_CreateDDSTextureFromFileExMip"), CallingConvention(.Cdecl)]
|
|
public static extern HResult CreateDDSTextureFromFileEx(
|
|
ID3D11Device* d3dDevice,
|
|
ID3D11DeviceContext* d3dContext,
|
|
c_wchar* szFileName,
|
|
c_size maxsize,
|
|
Usage usage,
|
|
BindFlags bindFlags,
|
|
CpuAccessFlags cpuAccessFlags,
|
|
ResourceMiscFlags miscFlags,
|
|
bool forceSRGB,
|
|
ID3D11Resource** texture,
|
|
ID3D11ShaderResourceView** textureView,
|
|
DdsAlphaMode* alphaMode = null);
|
|
}
|
|
} |