mirror of https://github.com/InoriRus/Kyty.git
36 lines
1.3 KiB
C++
36 lines
1.3 KiB
C++
#ifndef EMULATOR_INCLUDE_EMULATOR_GRAPHICS_TILE_H_
|
|
#define EMULATOR_INCLUDE_EMULATOR_GRAPHICS_TILE_H_
|
|
|
|
#include "Kyty/Core/Common.h"
|
|
|
|
#include "Emulator/Common.h"
|
|
|
|
#ifdef KYTY_EMU_ENABLED
|
|
|
|
namespace Kyty::Libs::Graphics {
|
|
|
|
enum class TileMode
|
|
{
|
|
VideoOutLinear,
|
|
VideoOutTiled,
|
|
TextureLinear,
|
|
TextureTiled,
|
|
};
|
|
|
|
void TileInit();
|
|
void TileConvertTiledToLinear(void* dst, const void* src, TileMode mode, uint32_t width, uint32_t height, bool neo);
|
|
void TileConvertTiledToLinear(void* dst, const void* src, TileMode mode, uint32_t dfmt, uint32_t nfmt, uint32_t width, uint32_t height,
|
|
uint32_t levels, bool neo);
|
|
|
|
void TileGetDepthSize(uint32_t width, uint32_t height, uint32_t z_format, uint32_t stencil_format, bool htile, bool neo,
|
|
uint32_t* stencil_size, uint32_t* htile_size, uint32_t* depth_size, uint32_t* pitch);
|
|
void TileGetVideoOutSize(uint32_t width, uint32_t height, bool tile, bool neo, uint32_t* size);
|
|
void TileGetTextureSize(uint32_t dfmt, uint32_t nfmt, uint32_t width, uint32_t height, uint32_t levels, bool tile, bool neo,
|
|
uint32_t* total_size, uint32_t* level_sizes, uint32_t* padded_width, uint32_t* padded_height);
|
|
|
|
} // namespace Kyty::Libs::Graphics
|
|
|
|
#endif
|
|
|
|
#endif /* EMULATOR_INCLUDE_EMULATOR_GRAPHICS_TILE_H_ */
|