39 INLINE
static bool has_texture(
const Filename &filename);
40 INLINE
static bool verify_texture(
const Filename &filename);
42 int primary_file_num_channels = 0,
43 bool read_mipmaps =
false,
47 int primary_file_num_channels = 0,
48 int alpha_file_channel = 0,
49 bool read_mipmaps =
false,
51 BLOCKING INLINE
static Texture *load_3d_texture(
const Filename &filename_pattern,
52 bool read_mipmaps =
false,
54 BLOCKING INLINE
static Texture *load_2d_texture_array(
const Filename &filename_pattern,
55 bool read_mipmaps =
false,
57 BLOCKING INLINE
static Texture *load_cube_map(
const Filename &filename_pattern,
58 bool read_mipmaps =
false,
61 INLINE
static Texture *get_normalization_cube_map(
int size);
62 INLINE
static Texture *get_alpha_scale_map();
64 INLINE
static void add_texture(
Texture *texture);
65 INLINE
static void release_texture(
Texture *texture);
66 INLINE
static void release_all_textures();
67 INLINE
static void rehash();
69 INLINE
static int garbage_collect();
71 INLINE
static void list_contents(std::ostream &out);
72 INLINE
static void list_contents();
74 INLINE
static Texture *find_texture(
const std::string &name);
77 INLINE
static void set_fake_texture_image(
const Filename &filename);
78 INLINE
static void clear_fake_texture_image();
79 INLINE
static bool has_fake_texture_image();
80 INLINE
static const Filename &get_fake_texture_image();
81 INLINE
static PT(
Texture) make_texture(
const std::string &extension);
83 static void write(std::ostream &out);
86 typedef Texture::MakeTextureFunc MakeTextureFunc;
87 void register_texture_type(MakeTextureFunc *func,
const std::string &extensions);
90 MakeTextureFunc *get_texture_type(
const std::string &extension)
const;
91 void write_texture_types(std::ostream &out,
int indent_level)
const;
98 bool ns_has_texture(
const Filename &orig_filename);
100 int primary_file_num_channels,
104 const Filename &orig_alpha_filename,
105 int primary_file_num_channels,
106 int alpha_file_channel,
118 Texture *ns_get_normalization_cube_map(
int size);
119 Texture *ns_get_alpha_scale_map();
121 void ns_add_texture(
Texture *texture);
122 void ns_release_texture(
Texture *texture);
123 void ns_release_all_textures();
124 int ns_garbage_collect();
125 void ns_list_contents(std::ostream &out)
const;
126 Texture *ns_find_texture(
const std::string &name)
const;
128 PT(
Texture) ns_make_texture(
const std::string &extension)
const;
130 void resolve_filename(
Filename &new_filename,
const Filename &orig_filename,
135 bool &compressed_cache_record,
137 void report_texture_unreadable(
const Filename &filename)
const;
141 const Filename &orig_alpha_filename,
142 int primary_file_num_channels,
143 int alpha_file_channel,
155 int _primary_file_num_channels = 0;
156 int _alpha_file_channel = 0;
157 Texture::TextureType _texture_type = Texture::TT_2d_texture;
159 INLINE
bool operator < (
const LookupKey &other)
const;
168 PT(
Texture) _normalization_cube_map;
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is our own Panda specialization on the default STL map.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Specifies parameters that may be passed to the loader.
This class maintains a cache of Bam and/or Txo objects generated from model files and texture images ...
Represents a texture object, which is typically a single 2-d image but may also represent a 1-d or 3-...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A standard mutex, or mutual exclusion lock.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
The name of a file, such as a texture file or an Egg file.
An instance of this class is written to the front of a Bam or Txo file to make the file a cached inst...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Manages a list of Texture objects, as returned by TexturePool::find_all_textures().
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is an abstract base class, a placeholder for any number of different classes that may wish to im...
This is the preferred interface for loading textures from image files.