KevInc.Texture.Ckd
0.1.1
See the version list below for details.
dotnet add package KevInc.Texture.Ckd --version 0.1.1
NuGet\Install-Package KevInc.Texture.Ckd -Version 0.1.1
<PackageReference Include="KevInc.Texture.Ckd" Version="0.1.1" />
<PackageVersion Include="KevInc.Texture.Ckd" Version="0.1.1" />
<PackageReference Include="KevInc.Texture.Ckd" />
paket add KevInc.Texture.Ckd --version 0.1.1
#r "nuget: KevInc.Texture.Ckd, 0.1.1"
#:package KevInc.Texture.Ckd@0.1.1
#addin nuget:?package=KevInc.Texture.Ckd&version=0.1.1
#tool nuget:?package=KevInc.Texture.Ckd&version=0.1.1
KevInc.Texture
KevInc.Texture provides .NET libraries for reading, writing, swizzling, and adapting game texture data. The package family is dependency-conscious: low-level wrapper and platform packages stay free of ImageSharp, while ImageSharp integration lives in opt-in packages.
Packages
| Package | Purpose | Heavy dependencies |
|---|---|---|
KevInc.Texture |
Shared raw texture model and format identifiers. | None |
KevInc.Texture.Ckd |
CKD/TEX wrapper detection, payload seeking, and wrapper writing. | None |
KevInc.Texture.Nintendo |
Nintendo Switch block-linear swizzle and deswizzle helpers. | None |
KevInc.Texture.Nintendo.ImageSharp |
ImageSharp encode/decode helpers for Nintendo Switch swizzled textures. | ImageSharp |
KevInc.Texture.Xbox |
Xbox 360 texture headers, payload sizing, endian handling, and tiling. | None |
KevInc.Texture.Xbox.ImageSharp |
ImageSharp encode/decode helpers for Xbox 360 texture streams, including CKD-wrapped payloads. | ImageSharp, BCnEncoder |
KevInc.Texture.ImageSharp |
Shared ImageSharp adapters for raw, DXT, and crunched texture payloads. | ImageSharp, BCnEncoder |
KevInc.CrnLib |
Managed CRN texture encode/decode support. | ImageSharp, BCnEncoder |
TextureConverter is included as a command-line texture conversion tool and as integration coverage for the libraries.
Install
dotnet add package KevInc.Texture
dotnet add package KevInc.Texture.Ckd
dotnet add package KevInc.Texture.Nintendo
dotnet add package KevInc.Texture.Xbox
Use ImageSharp packages only when you want to work directly with Image<TPixel>:
dotnet add package KevInc.Texture.ImageSharp
dotnet add package KevInc.Texture.Nintendo.ImageSharp
dotnet add package KevInc.Texture.Xbox.ImageSharp
Examples
Decode a raw BGRA texture into ImageSharp:
using KevInc.Texture;
using KevInc.Texture.ImageSharp;
RawTexture texture = new(width, height, TextureFormat.BGRA32, data);
using Image<Rgba32> image = TextureImageSharpCodec.Decode(texture);
Decode an Xbox 360 texture stream:
using KevInc.Texture.Xbox.ImageSharp;
await using FileStream input = File.OpenRead("texture.x360");
using Image<Rgba32> image = Xbox360ImageSharpTextureCodec.Decode(input);
Decode a Nintendo Switch swizzled payload:
using KevInc.Texture;
using KevInc.Texture.Nintendo.ImageSharp;
using Image<Rgba32> image = NintendoSwitchImageSharpTextureCodec.DecodeSwizzled(
swizzledData,
width,
height,
TextureFormat.RGBA32,
blockHeightLog2);
Build And Test
./run.ps1
Create local NuGet packages:
./run.ps1 -Configuration Release -Pack
Packages are written to artifacts/packages.
Publishing
See PUBLISHING.md for the GitHub, NuGet API key, release tag, and post-publish smoke-test checklist.
Test Coverage
The test suite covers wrapper handling, Nintendo swizzling, Xbox texture headers, ImageSharp adapters, dependency boundaries, CRN support, and TextureConverter integration.
Versioning
The repository uses Nerdbank.GitVersioning. Package versions come from version.json and Git metadata.
License
This repository is licensed under GPL-3.0-only unless a package explicitly states otherwise.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- KevInc.Texture (>= 0.1.1)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on KevInc.Texture.Ckd:
| Package | Downloads |
|---|---|
|
KevInc.Texture.ImageSharp
ImageSharp adapters for decoding and encoding raw, DXT, and crunched texture payloads. |
|
|
KevInc.Texture.Xbox
Xbox 360 texture header, endian, payload sizing, CKD wrapper, and tiling helpers. |
|
|
KevInc.Texture.Xbox.ImageSharp
ImageSharp adapters for Xbox 360 texture streams and CKD-wrapped payloads. |
|
|
KevInc.Texture.Nintendo.ImageSharp
ImageSharp adapters for Nintendo Switch block-linear texture payloads. |
GitHub repositories
This package is not used by any popular GitHub repositories.