parse method

DataTexture? parse(
  1. Map<String, dynamic>? texData
)

Implementation

DataTexture? parse(Map<String,dynamic>? texData){
  if(texData == null) return null;
  final texture = DataTexture();


  if (texData['image'] != null) {
    texture.image = texData['image'];
  }
  else if (texData["data"] != null) {
    texture.image.width = texData["width"].toInt();
    texture.image.height = texData["height"].toInt();
    texture.image.data = texData["data"];
  }

  texture.wrapS = texData["wrapS"] ?? ClampToEdgeWrapping;
  texture.wrapT = texData["wrapT"] ?? ClampToEdgeWrapping;

  texture.magFilter = texData["magFilter"] ?? LinearFilter;
  texture.minFilter = texData["minFilter"] ?? LinearFilter;

  texture.anisotropy = texData["anisotropy"] ?? 1;

  if (texData["colorSpace"] != null) {
    texture.colorSpace = texData["encoding"];
  }

  if (texData["flipY"] != null) {
    texture.flipY = texData["flipY"];
  }

  if (texData["format"] != null) {
    texture.format = texData["format"];
  }

  if (texData["type"] != null) {
    texture.type = texData["type"];
  }

  if (texData["mipmaps"] != null) {
    texture.mipmaps = texData["mipmaps"];
    texture.minFilter = LinearMipmapLinearFilter; // presumably...

  }

  if (texData["mipmapCount"] == 1) {
    texture.minFilter = LinearFilter;
  }

  if (texData["generateMipmaps"] != null) {
    texture.generateMipmaps = texData["generateMipmaps"];
  }

  texture.needsUpdate = true;

  return texture;
}