15#ifndef DRACO_TEXTURE_TEXTURE_MAP_H_
16#define DRACO_TEXTURE_TEXTURE_MAP_H_
20#ifdef DRACO_TRANSCODER_SUPPORTED
50 METALLIC_ROUGHNESS = 5,
52 NORMAL_OBJECT_SPACE = 6,
54 NORMAL_TANGENT_SPACE = 7,
56 AMBIENT_OCCLUSION = 8,
66 CLEARCOAT_ROUGHNESS = 14,
67 CLEARCOAT_NORMAL = 15,
77 enum AxisWrappingMode {
88 explicit WrappingMode(AxisWrappingMode mode) : WrappingMode(mode, mode) {}
89 WrappingMode(AxisWrappingMode s, AxisWrappingMode t) : s(s), t(t) {}
100 NEAREST_MIPMAP_NEAREST,
101 LINEAR_MIPMAP_NEAREST,
102 NEAREST_MIPMAP_LINEAR,
107 TextureMap(TextureMap &&) =
default;
110 void Copy(
const TextureMap &
src);
115 void SetProperties(
Type type);
116 void SetProperties(
Type type,
int tex_coord_index);
117 void SetProperties(
Type type, WrappingMode wrapping_mode,
118 int tex_coord_index);
119 void SetProperties(
Type type, WrappingMode wrapping_mode,
int tex_coord_index,
120 FilterType min_filter, FilterType mag_filter);
127 void SetTexture(std::unique_ptr<Texture> texture);
131 void SetTexture(Texture *texture);
133 void SetTransform(
const TextureTransform &transform);
134 const TextureTransform &texture_transform()
const {
135 return texture_transform_;
138 const Texture *texture()
const {
return texture_; }
139 Texture *texture() {
return texture_; }
140 Type type()
const {
return type_; }
141 WrappingMode wrapping_mode()
const {
return wrapping_mode_; }
142 int tex_coord_index()
const {
return tex_coord_index_; }
143 FilterType min_filter()
const {
return min_filter_; }
144 FilterType mag_filter()
const {
return mag_filter_; }
146 TextureMap &operator=(TextureMap &&) =
default;
150 WrappingMode wrapping_mode_;
155 int tex_coord_index_;
157 FilterType min_filter_;
158 FilterType mag_filter_;
162 std::unique_ptr<Texture> owned_texture_;
169 TextureTransform texture_transform_;
Type
Definition Database.hh:9
tag src
Definition meshpage.php:1786
Definition attribute_octahedron_transform.cc:21