Aether3D Game Engine
Texture2D.hpp
1 #ifndef TEXTURE_2D_H
2 #define TEXTURE_2D_H
3 
4 #include "Vec3.hpp"
5 #include "TextureBase.hpp"
6 
7 namespace ae3d
8 {
9  namespace FileSystem
10  {
11  struct FileContentsData;
12  }
13 
15  class Texture2D : public TextureBase
16  {
17  public:
19  static const Texture2D* GetDefaultTexture();
20 
26  void Load( const FileSystem::FileContentsData& textureData, TextureWrap wrap, TextureFilter filter, Mipmaps mipmaps, float anisotropy );
27 
34  void LoadFromAtlas( const FileSystem::FileContentsData& atlasTextureData, const FileSystem::FileContentsData& atlasMetaData, const char* textureName, TextureWrap wrap, TextureFilter filter, float anisotropy );
35 
36  private:
38  void LoadDDS( const char* path );
39 
45  void LoadSTB( const FileSystem::FileContentsData& textureData );
46 #if AETHER3D_METAL
47  void LoadPVRv2( const char* path );
48  void LoadPVRv3( const char* path );
49 #endif
50  };
51 }
52 #endif
TextureFilter filter
Filtering mode.
Definition: TextureBase.hpp:89
TextureWrap wrap
Wrapping controls how coordinates outside 0-1 are interpreted.
Definition: TextureBase.hpp:87
Definition: AudioClip.hpp:4
void LoadFromAtlas(const FileSystem::FileContentsData &atlasTextureData, const FileSystem::FileContentsData &atlasMetaData, const char *textureName, TextureWrap wrap, TextureFilter filter, float anisotropy)
float anisotropy
Anisotropy.
Definition: TextureBase.hpp:97
static const Texture2D * GetDefaultTexture()
Gets a default texture that is always available after System::LoadBuiltinAssets().
void Load(const FileSystem::FileContentsData &textureData, TextureWrap wrap, TextureFilter filter, Mipmaps mipmaps, float anisotropy)
Mipmaps mipmaps
Mipmaps.
Definition: TextureBase.hpp:91
2D texture.
Definition: Texture2D.hpp:15
Definition: FileSystem.hpp:12
Base class for textures.
Definition: TextureBase.hpp:47