| 81 | | try |
| 82 | | { |
| 83 | | attr->texels_u = in.readInt32(); |
| 84 | | attr->texels_v = in.readInt32(); |
| 85 | | attr->direction_u = in.readInt32(); |
| 86 | | attr->direction_v = in.readInt32(); |
| 87 | | attr->x_up = in.readInt32(); |
| 88 | | attr->y_up = in.readInt32(); |
| 89 | | attr->fileFormat = in.readInt32(); |
| 90 | | attr->minFilterMode = in.readInt32(); |
| 91 | | attr->magFilterMode = in.readInt32(); |
| 92 | | attr->wrapMode = in.readInt32(AttrData::WRAP_REPEAT); |
| 93 | | |
| 94 | | attr->wrapMode_u = in.readInt32(); |
| 95 | | if (attr->wrapMode_u == AttrData::WRAP_NONE) |
| 96 | | attr->wrapMode_u = attr->wrapMode; |
| 97 | | |
| 98 | | attr->wrapMode_v = in.readInt32(); |
| 99 | | if (attr->wrapMode_v == AttrData::WRAP_NONE) |
| 100 | | attr->wrapMode_v = attr->wrapMode; |
| 101 | | |
| 102 | | attr->modifyFlag = in.readInt32(); |
| 103 | | attr->pivot_x = in.readInt32(); |
| 104 | | attr->pivot_y = in.readInt32(); |
| 105 | | |
| 106 | | // v11 ends here |
| | 81 | attr->texels_u = in.readInt32(); |
| | 82 | attr->texels_v = in.readInt32(); |
| | 83 | attr->direction_u = in.readInt32(); |
| | 84 | attr->direction_v = in.readInt32(); |
| | 85 | attr->x_up = in.readInt32(); |
| | 86 | attr->y_up = in.readInt32(); |
| | 87 | attr->fileFormat = in.readInt32(); |
| | 88 | attr->minFilterMode = in.readInt32(); |
| | 89 | attr->magFilterMode = in.readInt32(); |
| | 90 | attr->wrapMode = in.readInt32(AttrData::WRAP_REPEAT); |
| | 91 | |
| | 92 | attr->wrapMode_u = in.readInt32(); |
| | 93 | if (attr->wrapMode_u == AttrData::WRAP_NONE) |
| | 94 | attr->wrapMode_u = attr->wrapMode; |
| | 95 | |
| | 96 | attr->wrapMode_v = in.readInt32(); |
| | 97 | if (attr->wrapMode_v == AttrData::WRAP_NONE) |
| | 98 | attr->wrapMode_v = attr->wrapMode; |
| | 99 | |
| | 100 | attr->modifyFlag = in.readInt32(); |
| | 101 | attr->pivot_x = in.readInt32(); |
| | 102 | attr->pivot_y = in.readInt32(); |
| | 103 | |
| | 104 | // v11 ends here |
| 109 | | attr->texEnvMode = in.readInt32(AttrData::TEXENV_MODULATE); |
| 110 | | attr->intensityAsAlpha = in.readInt32(); |
| 111 | | in.forward(4*8); |
| 112 | | in.forward(4); |
| 113 | | attr->size_u = in.readFloat64(); |
| 114 | | attr->size_v = in.readFloat64(); |
| 115 | | attr->originCode = in.readInt32(); |
| 116 | | attr->kernelVersion = in.readInt32(); |
| 117 | | attr->intFormat = in.readInt32(); |
| 118 | | attr->extFormat = in.readInt32(); |
| 119 | | attr->useMips = in.readInt32(); |
| 120 | | for (int n=0; n<8; n++) |
| 121 | | attr->of_mips[n] = in.readFloat32(); |
| 122 | | attr->useLodScale = in.readInt32(); |
| 123 | | attr->lod0 = in.readFloat32(); |
| 124 | | attr->scale0 = in.readFloat32(); |
| 125 | | attr->lod1 = in.readFloat32(); |
| 126 | | attr->scale1 = in.readFloat32(); |
| 127 | | attr->lod2 = in.readFloat32(); |
| 128 | | attr->scale2 = in.readFloat32(); |
| 129 | | attr->lod3 = in.readFloat32(); |
| 130 | | attr->scale3 = in.readFloat32(); |
| 131 | | attr->lod4 = in.readFloat32(); |
| 132 | | attr->scale4 = in.readFloat32(); |
| 133 | | attr->lod5 = in.readFloat32(); |
| 134 | | attr->scale5 = in.readFloat32(); |
| 135 | | attr->lod6 = in.readFloat32(); |
| 136 | | attr->scale6 = in.readFloat32(); |
| 137 | | attr->lod7 = in.readFloat32(); |
| 138 | | attr->scale7 = in.readFloat32(); |
| 139 | | attr->clamp = in.readFloat32(); |
| 140 | | attr->magFilterAlpha = in.readInt32(); |
| 141 | | attr->magFilterColor = in.readInt32(); |
| 142 | | in.forward(4); |
| 143 | | in.forward(4*8); |
| 144 | | attr->lambertMeridian = in.readFloat64(); |
| 145 | | attr->lambertUpperLat = in.readFloat64(); |
| 146 | | attr->lambertlowerLat = in.readFloat64(); |
| 147 | | in.forward(8); |
| 148 | | in.forward(4*5); |
| 149 | | attr->useDetail = in.readInt32( ); |
| 150 | | attr->txDetail_j = in.readInt32(); |
| 151 | | attr->txDetail_k = in.readInt32(); |
| 152 | | attr->txDetail_m = in.readInt32(); |
| 153 | | attr->txDetail_n = in.readInt32(); |
| 154 | | attr->txDetail_s = in.readInt32( ); |
| 155 | | attr->useTile = in.readInt32(); |
| 156 | | attr->txTile_ll_u= in.readFloat32(); |
| 157 | | attr->txTile_ll_v = in.readFloat32(); |
| 158 | | attr->txTile_ur_u = in.readFloat32(); |
| 159 | | attr->txTile_ur_v = in.readFloat32(); |
| 160 | | attr->projection = in.readInt32(); |
| 161 | | attr->earthModel = in.readInt32(); |
| 162 | | in.forward(4); |
| 163 | | attr->utmZone = in.readInt32(); |
| 164 | | attr->imageOrigin = in.readInt32(); |
| 165 | | attr->geoUnits = in.readInt32(); |
| 166 | | in.forward(4); |
| 167 | | in.forward(4); |
| 168 | | attr->hemisphere = in.readInt32(); |
| 169 | | in.forward(4); |
| 170 | | in.forward(4); |
| 171 | | in.forward(149*4); |
| 172 | | attr->comments = in.readString(512); |
| 173 | | |
| 174 | | // v12 ends here |
| | 107 | attr->texEnvMode = in.readInt32(AttrData::TEXENV_MODULATE); |
| | 108 | attr->intensityAsAlpha = in.readInt32(); |
| | 109 | in.forward(4*8); |
| | 110 | in.forward(4); |
| | 111 | attr->size_u = in.readFloat64(); |
| | 112 | attr->size_v = in.readFloat64(); |
| | 113 | attr->originCode = in.readInt32(); |
| | 114 | attr->kernelVersion = in.readInt32(); |
| | 115 | attr->intFormat = in.readInt32(); |
| | 116 | attr->extFormat = in.readInt32(); |
| | 117 | attr->useMips = in.readInt32(); |
| | 118 | for (int n=0; n<8; n++) |
| | 119 | attr->of_mips[n] = in.readFloat32(); |
| | 120 | attr->useLodScale = in.readInt32(); |
| | 121 | attr->lod0 = in.readFloat32(); |
| | 122 | attr->scale0 = in.readFloat32(); |
| | 123 | attr->lod1 = in.readFloat32(); |
| | 124 | attr->scale1 = in.readFloat32(); |
| | 125 | attr->lod2 = in.readFloat32(); |
| | 126 | attr->scale2 = in.readFloat32(); |
| | 127 | attr->lod3 = in.readFloat32(); |
| | 128 | attr->scale3 = in.readFloat32(); |
| | 129 | attr->lod4 = in.readFloat32(); |
| | 130 | attr->scale4 = in.readFloat32(); |
| | 131 | attr->lod5 = in.readFloat32(); |
| | 132 | attr->scale5 = in.readFloat32(); |
| | 133 | attr->lod6 = in.readFloat32(); |
| | 134 | attr->scale6 = in.readFloat32(); |
| | 135 | attr->lod7 = in.readFloat32(); |
| | 136 | attr->scale7 = in.readFloat32(); |
| | 137 | attr->clamp = in.readFloat32(); |
| | 138 | attr->magFilterAlpha = in.readInt32(); |
| | 139 | attr->magFilterColor = in.readInt32(); |
| | 140 | in.forward(4); |
| | 141 | in.forward(4*8); |
| | 142 | attr->lambertMeridian = in.readFloat64(); |
| | 143 | attr->lambertUpperLat = in.readFloat64(); |
| | 144 | attr->lambertlowerLat = in.readFloat64(); |
| | 145 | in.forward(8); |
| | 146 | in.forward(4*5); |
| | 147 | attr->useDetail = in.readInt32( ); |
| | 148 | attr->txDetail_j = in.readInt32(); |
| | 149 | attr->txDetail_k = in.readInt32(); |
| | 150 | attr->txDetail_m = in.readInt32(); |
| | 151 | attr->txDetail_n = in.readInt32(); |
| | 152 | attr->txDetail_s = in.readInt32( ); |
| | 153 | attr->useTile = in.readInt32(); |
| | 154 | attr->txTile_ll_u= in.readFloat32(); |
| | 155 | attr->txTile_ll_v = in.readFloat32(); |
| | 156 | attr->txTile_ur_u = in.readFloat32(); |
| | 157 | attr->txTile_ur_v = in.readFloat32(); |
| | 158 | attr->projection = in.readInt32(); |
| | 159 | attr->earthModel = in.readInt32(); |
| | 160 | in.forward(4); |
| | 161 | attr->utmZone = in.readInt32(); |
| | 162 | attr->imageOrigin = in.readInt32(); |
| | 163 | attr->geoUnits = in.readInt32(); |
| | 164 | in.forward(4); |
| | 165 | in.forward(4); |
| | 166 | attr->hemisphere = in.readInt32(); |
| | 167 | in.forward(4); |
| | 168 | in.forward(4); |
| | 169 | in.forward(149*4); |
| | 170 | attr->comments = in.readString(512); |
| | 171 | |
| | 172 | // v12 ends here |