1Milestone Release Notes 2======================= 3 4This page includes a list of high level updates for each milestone release. 5 6* * * 7 8Milestone 81 9------------ 10 11 * Added support for GL_NV_fence extension. 12 13 * Make SkImageInfo::validRowBytes require rowBytes to be pixel aligned. This 14 makes SkBitmap match the behavior of raster SkSurfaces in rejecting 15 non-aligned rowBytes. 16 17 * Added an SkImage::MakeRasterFromCompressed entry point. Also updated 18 SkImage::MakeFromCompressed to decompress the compressed image data if 19 the GPU doesn't support the specified compression type (i.e., macOS Metal 20 doesn't support BC1_RGB8_UNORM so such compressed images will always be 21 decompressed on that platform). 22 23 * Added support for BC1 RGBA compressed textures 24 25 * Added CachingHint to SkImage::makeRasterImage 26 27 * Added SkAnimatedImage::getCurrentFrame() 28 29 * Add support to create an SkSurface from an MTKView, with delayed acquisition of 30 the MTLDrawable. 31 Entry point: SkSurface::MakeFromMTKView 32 33 * Removed SkIRect::EmptyIRect(). Use SkIRect::MakeEmpty() instead. 34 https://review.skia.org/262382/ 35 36 * Moved SkRuntimeEffect to public API. This is the new (experimental) interface to custom SkSL 37 shaders and color filters. 38 39 * Added BC1 compressed format support. Metal and Vulkan seem to only support the BC 40 formats on desktop machines. 41 42 * Added compressed format support for backend texture creation API. 43 This adds the following new entry points: 44 GrContext::compressedBackendFormat 45 GrContext::createCompressedBackendTexture 46 The latter method comes in variants that allow color-initialized and 47 compressed texture data initialized. 48 49 * Added SkMatrix::MakeTrans(SkIVector) 50 https://review.skia.org/259804 51 52 53* * * 54 55Milestone 80 56------------ 57 58 * Removed SkSize& SkSize::operator=(const SkISize&) 59 https://review.skia.org/257880 60 61 * SkISize width() and height() now constexpr 62 https://review.skia.org/257680 63 64 * Added SkMatrix::MakeTrans(SkVector) and SkRect::makeOffset(SkVector). 65 https://review.skia.org/255782 66 67 * Added SkImageInfo::MakeA8(SkISize) and added optional color space parameter to 68 SkImageInfo::MakeN32Premul(SkISize). 69 70 * Added dimensions() and getFrameCount() to SkAnimatedImage 71 https://review.skia.org/253542 72 73 * Removed SkMatrix44 version of toXYZD50 from SkColorSpace. Switched to skcms types in 74 transferFn, invTrasnferFn, and gamutTransformTo functions. 75 https://review.skia.org/252596 76 77 * Removed rotation and YUV support from SkColorMatrix 78 https://review.skia.org/252188 79 80 * Added kBT2020_SkYUVColorSpace. This is BT.2020's YCbCr conversion (non-constant-luminance). 81 https://review.skia.org/252160 82 83 * Remove old async read pixels APIs 84 https://review.skia.org/251198 85 86 * Expose SkBlendModeCoeff and SkBlendMode_AsCoeff for Porter-Duff blend modes. 87 https://review.skia.org/252600 88 89* * * 90 91Milestone 79 92------------ 93 94 * SkTextBlob::Iter to discover the glyph indices and typefaces in each run 95 https://review.skia.org/246296 96 97 * Added support for PQ and HLG transfer functions to SkColorSpace. 98 https://review.skia.org/249000 99 100 * Added new api on GrContext ComputeImageSize. This replaces the hold static helper 101 ComputeTextureSize. 102 https://review.skia.org/247337 103 104 * New versions of SkSurface async-rescale-and read APIs that allow client to extend 105 the lifetime of the result data. Old versions are deprecated. 106 https://review.skia.org/245457 107 108 * Add SkColorInfo. It's dimensionless SkImageInfo. 109 https://review.skia.org/245261 110 111 * Added SkPixmap-based createBackendTexture method to GrContext. This allows clients to create 112 backend resources (initialized with texture data) that Skia/Ganesh doesn't know about/track. 113 https://review.skia.org/244676 114 115 * Add explicit src and dst colorspace parameters to SkColorFilter::filterColor4f() 116 https://review.skia.org/244882 117 118 * Remove Vulkan/Metal float32 RGBA texture support 119 https://review.skia.org/244881 120 121 * Add SkSurface::MakeFromCAMetalLayer 122 https://review.skia.org/242563 123 124 * Added kAlpha_F16_SkColorType, kRG_F16_SkColorType and kRGBA_16161616_SkColorType. 125 This is intended to help support HDR YUV uses case (e.g., P010 and P016). As such, 126 the addition is focused on allowing creation of SkPixmaps and SkImages and not 127 SkSurfaces (i.e., who wants to render to render to these?) 128 https://review.skia.org/241357 129 130 * Start to move nested SkPath types (e.g. Direction, Verb) up to root level in SkPathTypes.h 131 https://review.skia.org/241079 132 133 * Remove isRectContour and ksNestedFillRects from public 134 https://review.skia.org/241078 135 136 * Added kRG_88_SkColorType. This is intended to help support YUV uses case (e.g., NV12). 137 As such, the addition is focused on allowing creation of SkPixmaps and SkImages and not 138 SkSurfaces (i.e., who wants to render to RG?) 139 https://review.skia.org/239930 140 https://review.skia.org/235797 141 142 * Make the size of program/pipeline caches configurable via 143 GrContextOptions::fRuntimeProgramCacheSize 144 https://review.skia.org/239756 145 146 * Added kAlpha_16_SkColorType and kRG_1616_SkColorType. This is intended to help support HDR YUV 147 uses case (e.g., P010 and P016). As such, the addition is focused on allowing creation of 148 SkPixmaps and SkImages and not SkSurfaces (i.e., who wants to render to render to these?) 149 https://review.skia.org/239930 150 151 * Add GrContext::precompileShader to allow up-front compilation of previously-cached shaders. 152 https://review.skia.org/239438 153 154* * * 155 156Milestone 78 157------------ 158 * Added RELEASE_NOTES.txt file 159 https://review.skia.org/229760 160 161 * SkDrawLooper is no longer supported in SkPaint or SkCanvas. 162 https://review.skia.org/230579 163 https://review.skia.org/231736 164 165 * SkPath::Iter::next() now ignores its consumDegenerates bools. Those will so 166 go away entirely 167 https://review.skia.org/235104 168 169 * SkImage: new factories: DecodeToRaster, DecodeToTexture 170 https://review.skia.org/234476 171 172 * SkImageFilter API refactor started: 173 - Provide new factory API in include/effects/SkImageFilters 174 - Consolidated enum types to use SkTileMode and SkColorChannel 175 - Hide filter implementation classes 176 - Hide previously public functions on SkImageFilter that were intended for 177 internal use only 178 https://review.skia.org/230198 179 https://review.skia.org/230876 180 https://review.skia.org/231256 181 182 * SkColorFilters::HSLAMatrix - new matrix color filter operating in HSLA 183 space. 184 https://review.skia.org/231736 185 186 * Modify GrBackendFormat getters to not return internal pointers. Use an enum 187 class for GL formats. 188 https://review.skia.org/233160 189 190 * Expose GrContext::dump() when SK_ENABLE_DUMP_GPU is defined. 191 https://review.skia.org/233557 192 193 * Vulkan backend now supports YCbCr sampler for I420 Vulkan images that are 194 not backed by external images. 195 https://review.skia.org/233776 196 197 * Add SkCodec::SelectionPolicy for distinguishing between decoding a still 198 image or an image sequence for a container format that has both (e.g. HEIF). 199 https://review.skia.org/232839 200 201 * SkImage::makeTextureImage and SkImage::MakeCrossContextFromPixmap no longer 202 take an SkColorSpace parameter. It was unused. 203 https://review.skia.org/234579 204 https://review.skia.org/234912 205 206 * SkImage::reinterpretColorSpace - to reinterpret image contents in a new 207 color space. 208 https://review.skia.org/234328 209 210 * Removed SkImage::MakeCrossContextFromEncoded. 211 https://review.skia.org/234912 212 213 * Add Metal support for GrFence, GrSemaphore, and GrBackendSemaphore 214 https://review.skia.org/233416 215 216 * SkMallocPixelRef: remove MakeDirect and MakeWithProc from API. 217 https://review.skia.org/234660 218 219 * Remove 4-parameter variant of SkRect::join() and intersect(), and 220 noemptycheck variants of intersect(). 221 https://review.skia.org/235832 222 https://review.skia.org/237142 223 224 * Remove unused sk_sp comparison operators. 225 https://review.skia.org/236942 226 227 * Add SkColor4f variant to experimental_DrawEdgeAAQuad for SkiaRenderer. 228 https://review.skia.org/237492 229 230 * Deprecated maxCount resource cache limit for Ganesh. 231 This hasn't been relevant for a long time. 232 233 * Changed GrContextOptions' fDisallowGLSLBinaryCaching to fShaderCacheStrategy, 234 and allow caching SkSL. 235 https://review.skia.org/238856 236 237