Files
XCEngine/docs/api/resources/texture/create.md

47 lines
1.1 KiB
Markdown
Raw Normal View History

# Texture::Create
```cpp
bool Create(Core::uint32 width, Core::uint32 height, Core::uint32 depth,
Core::uint32 mipLevels, TextureType type, TextureFormat format,
const void* data, size_t dataSize)
```
2026-03-20 02:35:35 +08:00
创建纹理资源。设置纹理的尺寸、格式和像素数据。
**参数:**
2026-03-20 02:35:35 +08:00
| 参数 | 类型 | 描述 |
|------|------|------|
| `width` | `Core::uint32` | 纹理宽度(像素) |
| `height` | `Core::uint32` | 纹理高度(像素) |
| `depth` | `Core::uint32` | 纹理深度3D 纹理设为 1 |
| `mipLevels` | `Core::uint32` | Mipmap 级别数 |
| `type` | `TextureType` | 纹理类型 |
| `format` | `TextureFormat` | 纹理格式 |
| `data` | `const void*` | 像素数据指针(可为 nullptr |
| `dataSize` | `size_t` | 像素数据大小 |
**返回:** 创建成功返回 true
2026-03-20 02:35:35 +08:00
**复杂度:** O(n)n 为像素数据大小
**示例:**
```cpp
Texture tex;
bool ok = tex.Create(
2026-03-20 02:35:35 +08:00
1024, 1024, 1, 1,
TextureType::Texture2D,
TextureFormat::RGBA8_UNORM,
pixelData, pixelDataSize
);
2026-03-20 02:35:35 +08:00
if (ok) {
// 纹理创建成功
}
```
## 相关文档
- [Texture 总览](texture.md) - 返回类总览