User:Hypersomniac/Foundation/2020

Week 167 : 23rd - 29th March

Wire aa before.png
Wire aa after.png
Hair alpha.png


  • Info

Highlight of this week is the improvement made to the wireframe to avoid most of the aliasing due to zfighting e000dcb8490. Note this is only enabled when smooth wires are enabled because of the cost of it. It is still enabled by default.

I've finished to review patches and landed a few of them. Notably the improvement to EEVEE's hair transparency.

  • General development
    • Overlay: Edit Mesh: Make offset depth dependent (w.r.t depth precision) 0b57ecc665c bf3b0db785f.
    • Overlay: Outline: Fix unreported feedback loop when smooth wire is disabled d85026db15a.
    • GPU: Add workaround for faulty default attrib values on some drivers 56e0249489c.
    • Overlay: Fix crash caused by NULL passes 839f0cfa41f.
    • Overlay: Wireframe: New method to avoid zfighting with geometry e000dcb8490.
    • Overlay: Wireframe: Make facing ratio offset depends on gl_Position.w f3ea8cd6087.
    • Fix T75087 Workbench: DoF: Divide By Zero when antialiasing is disabled a0437c3f730.
    • Fix T73505 EEVEE: Group output node sockets default value not working 1b5b6a5da83.
  • Next week

I'll focus on finishing the Motion Blur experiment I started a while ago.

Week 166 : 16th - 22nd March

  • Info

This was a week off but managed to review most of the patches assigned to me.

Week 165 : 9th - 15th March

  • Info

This week I've finished and merged both EEVEE's new reflection cubemaps and Workbench refactor. GPencil refactor has also been merged to master.

  • General development
    • EEVEE: Update Preview file with new lightcache f130c5ddb64.
    • EEVEE: Bump minimum probe level to make rough reflection more precise 8751af6d190.
    • EEVEE: Hair: Fix wrong color when using color attribute without actual data 27e0998a8a8.
    • EEVEE: Fix test crashing 33c6b269d11.
    • EEVEE: Replace octahedron reflection probe by cubemap array 7dd0be9554a.
    • Workbench: Fix default view not reset after drawing 7a19a996753.
    • Workbench Simplification Refactor c476c36e400.
    • GPencil: Use high precision float buffer for final rendering 9c5a120ba23.
    • GPencil: Fix T74625 Airbrush doesn't paint anything fa09b900c2f.
    • GPencil: Fix RNA range for uv_rotation 71712d828d9.
    • Overlay: Add antialiasing to particle sprites 29b405a3278.
    • Fix T74536: Grease pencil immediately crashes on macOS c971e812d5e.
    • Fix T74438: Overlay: Loose verts and particle not draw in some conditions 3912a2a227c.
  • Next week

I'll focus on patch reviews.

Week 164 : 2nd - 8th March

Transparent In-front (ghost) objects are now possible
  • Info

I helped fixing the Grease pencil modifiers to have better workflow integration with blender. Notably the noise modifier.

I've rewritten the Workbench Engine in order to improve code quality. It should also lower Vram usage in some cases.

A few improvement came out of it notably the fix for a long standing known issue where transparent object could not be displayed "in-front".

I also tweaked the hair random shading to be less dark than it should.

We also changed the antialiasing method from FXAA to SMAA which has almost the same performance cost but with better output.

  • Grease Pencil Refactor
    • GPencil: Fix texture not appearing in render a4bfe626794.
    • GPencil: Modifier: Simplify: Fix modifier distance and length property feel ea4cc817d11.
    • GPencil: Modifier: Fix smooth factor range 3224950b2df.
    • GPencil: Modifier: Noise: Replace Full Stroke option by Noise Scale c64c5185d50.
    • GPencil: Fix potential out of bound read in Noise modifier c34596a3bbd.
    • GPencil: Modifier: Use unique seed for each stroke for Noise modifier 63f6b9c0181.
    • GPencil: Modifier: Cleanup Multiple Stroke modifier UI & code eb5a25f4bcc.
    • GPencil: Modifier: Rework Array modifier's RNG for better random variation 67408ac9399.
    • GPencil: Fix rebase error 7e0b48e58f5.
    • GPencil: Modifier: Change Noise Modifier behavior 908dfbf6182.
    • GPencil: Modifier: Improve UI of offset modifier 6cfac67df6b.
    • GPencil: Modifier: Change Thickness modifier behavior affe9e0b925.
    • GPencil: Modifier: Unlock range of Saturation and Value in HSV modifier 94172a5391b.
    • GPencil: Modifier: Fix UI of Tint and Opacity modifiers 33c0861db89.
    • GPencil: Fix stroke textures not working because of material chunk reuse 54798961ff3.
    • GPencil: Fix sbuffer rendering twice when using onion skinning ea16bb622a9.
    • GPencil: Fix occlusion bug when using multiple material 45647e2be32.
    • GPencil: Fix crash when rendering in new window b3bb17fe75c.
  • Workbench Refactor
    • Fix wrong materialId inside material setup resulting in buffer overflow. 4b2dd074aa5.
    • Workbench: Optimize out uneeded passes. 242538eba84.
    • Workbench: Add short explanation about the techniques used for rendering eff6fa00fd9.
    • Workbench: Refactor: Fix transparent depth pass optimization logic fa848f602a5.
    • DRW: Fix offscreen rendering e8f236406ce.
    • Workbench: Refactor: Disable Cavity rendering on infront objects 62ee14b04f6.
    • Workbench: Refactor: Draw transparent in wireframe mode. 8b76070a9f9.
    • Workbench: Refactor: Remove old unused code a713e72952a.
    • Workbench: Refactor: Add Volumetric support faf0a5e6286.
    • Workbench: Refactor: Antialiasing a459874e772.
    • Workbench: Refactor: Add Dof Support 91dfe40ef07.
    • Workbench: Refactor: Add outline support a102b7ebe5f.
    • Workbench: Refactor: Add cavity support aae2e1326fe.
    • Workbench: Refactor: Add Shadow support 606f1d80b39.
    • Workbench: Refactor: Add hair support + tweak the randomness of hairs color f426e71e091.
    • Workbench: Refactor: Add Infront support 62a7ac8f17e.
    • Workbench: Refactor: Add transparent (xray) support 73de98e6e09.
    • Workbench: Refactor: Only allocate id buffer if needed d36e63f8db4.
    • Workbench: Refactor: Add specular toggle support e34ce36ea4d.
    • Workbench: Refactor: Add matcap support 76a7ea0b713.
    • Workbench: Refactor: Add support for Flat shading 46f8367eaca.
    • Workbench: Refactor: Add support for texpaint & vertpaint 5759e2d6c40.
    • Workbench: Refactor: Support Material data e6e740f3176.
    • Workbench: Refactor: Code reorganization 1545c37cdb7.
    • BLI_memblock: Allow to use BLI_memblock_elem_get using only elem index b6e083358ee.
    • DRW: Manager: Expose resource handle getter 1e58e68c1a4.
    • DRW: Shader: Add shader library manager 616545b5cfa.
  • Next week

I'll help with the merge of all the branches I did or helped and will resume patch review for bcon 2.

Week 163 : 24th - 1st March

Partially Blurred Background in lookdev mode
With Octahedral map Array (before)
With Cubemap Array (after)
  • Info

I've rewritten how reflection probes store their data. We now use cubemap arrays which are much easier to handle and have less artifacts (see picture). We implemented a fallback code for hardware not supporting cubemap arrays. The max number of probes is reduced on low-end hardware to 42 while more moder GPU still have the limit of 128. Since 2.83 will be a LTS release, it was the perfect moment to implement a versioning system inside the lightcache to avoid problems in the future.

Another highly requested improvement was the addition of partially blurred background in lookdev mode. I removed the xray dithering noise as we can do better thanks to the colormanagment refactor.

I added an option to use high bitdepth on HDR texture that have 32bit precision. The option is per image datablock and is disabled by default.

  • EEVEE Cubemap Array Refactor
    • EEVEE: Check Lightcache type along with the version check. 8af7d28e8c9.
    • EEVEE: LightCache: Fix error in texture readback and creation 81c96fa80dd.
    • EEVEE: Replace octahedron reflection probe by cubemap array a1026d75227.
    • EEVEE: LightCache: Reset lightcache info message on file load 681b47d2c7b.
    • EEVEE: Add version check on lightcache data 90f2d144992.
    • EEVEE: Use cubemap array to avoid shader texture filtering workaround 66bdd445513.
    • EEVEE: Deprecate old cache 895f104ced4.
    • EEVEE: Replace octahedron reflection probe by cubemap array e090b78f261.
    • GPU: Implement cubemap array support through extension bf09123baed.
  • General developement
    • Cleanup: Workbench: Remove checkerboard depth 8955b8b9920.
    • EEVEE: Fix memleak when G.is_break is set from another thread c26f470cfee.
    • EEVEE: Fix seams in reflection cubemap on low roughness 8885fb5929f.
    • EEVEE: Lookdev: Add support for partially blurred background 6e23433c1a7.
    • EEVEE: Lookdev: Fix cubemap resolution change not refreshing lightcache 19de81afe52.
    • EEVEE: Lookdev: Fix lookdev spheres positioning in viewport render 2ffd5302176.
    • GPU: Add Image property to allow high bitdepth support on a per image basis 4e9fffc2892.
    • Overlay: Edit Mode: Fix wireframes being brighter because of linear blend abb73649129.
    • Overlay: Fix overlays being washed out by render colors 190fd795a92.
    • Overlay: Fix wireframes being brighter because of color management 39d0bf90444.
    • Overlay: Remove Xray dithering noise ed21506f263.
  • Next week

I've also started a workbench refactor to reduce code complexity and ease future developement. I'll finish it next week and help with last grease pencil

Week 162 : 17th - 23th February

  • Info

This week has been mostly about fixing the regressions caused by the ColorManagement patch merged last week.

I also have done a full review of Grease Pencil modifiers workflow https://developer.blender.org/D6293#164005. I also spent some time reviewing the EEVEE new render passes patch.

I investigated an important ColorManagement bug that is affecting the Addon alpha blending drawing. It has been reported here T74139

  • General development
    • ColorManagement: Dithering Improvement 852cdd476b5.
    • DRW: Fix facing reset when drawing with inverted camera 67cbce0b02f.
    • DRW: Fix wrong view transform used in solid mode if using workbench engine cc296ef1790.
    • DRW: New High Quality Normal & Tangent extract e82827bf6ed.
    • DRW: Support inverted view matrix f972a3c3145.
    • EEVEE: Fix default material disappearing when SSRefraction is enabled 19e63bb51e8.
    • EEVEE: Fix memleak when G.is_break is set from another thread c26f470cfee.
    • Fix T73748 Overlay: Infront disappearing/glitched while in Xray mode 00227edf4c1.
    • Fix T73793 Overlay: Walk navigation crosshair gets hidden behind objects b117b8e8182.
    • Fix T73876 Overlay: Armature: Pose bones display randomly f78c407aff0.
    • Fix T73914 Overlay: Unable to select bone in pose mode 9491e7d7c21.
    • Fix T74019 Eevee High Quality Normals causing pitch black faces 0c01ad93004.
    • GPU: Fix huge performance regression regarding instancing 77619f52740.
    • GPU: Limit Mesa workaround to older version 56d6666689f.
    • Overlay: Edit Mode: Fix wireframes being brighter because of linear blend abb73649129.
    • Overlay: Fix wireframes being brighter because of color management 39d0bf90444.
    • Overlay: Remove Xray dithering noise ed21506f263.
    • Overlay: Fixed blending issue when not using smooth wire a661ef42fbd.
  • Next week

Continue bug fixing. Work on polishing small features.

Week 161 : 10th - 16th February

  • Info

I've landed a big commit about the color management improvement in the viewport which seems to have broken a few things. Things are currently being handled. The Grease Pencil refactor is also done, I rewrote the mask system again to support layer linking and we plan to post the patch for review this week.

  • General development
    • EEVEE: Shadow: Fix cascade shadowmap bias multiplicator 31ad86884cb.
    • Workbench: Fix depth of field background being glitchy eaea5c8904b.
    • Workbench: Fix premultiply alpha issue in transparent material d051dd01eda.
    • DRW: Fix viewport render always rendering with transparent background 180aff7b741.
    • DRW: Fix color management in material/rendered mode b6572c5430c.
    • DRW: Color Management improvement 804e90b42d7.
    • Overlay: Fix non meshes object disappearing if smooth wire is not enabled a40d9ce5535.
    • Fix T73442 Overlay: Wireframe infront buggy in material shading mode f1f2d9fe745.
    • GPencil: Opti: Merge AntiAliasing pass with compositing pass 46d0e93b547.
    • GPencil: Fix sbuffer stroke not overlapping with previous stroke 4f57d6db94b.
    • GPencil: Support XRay mode in solid and fix occlusion in wireframe mode 319e769ea37.
    • GPencil: Fix NaN result in divide blend mode e43fcee7782.
    • GPencil: Fix undefined behavior caused by stroke aspect commit a6da286694c.
    • GPencil: Fix alpha textured stroke buggy behavior f0d05b382a0.
    • GPencil: Add Dot aspect support back 9147e573310.
    • GPencil: Fix depth being written outside of masks boundaries a580934b7a0.
    • GPencil: Render: Fix crash when using region rendering 7c815db28d4.
    • GPencil: Remove unpredicatble behavior when rendering without depth pass dec3cbc818a.
    • GPencil: Refactor: Remove the hardcoded sRGB final transform for viewport 19d04ce3496.
    • GPencil: Refactor: Add per mask inversion capability d8c99ac34e6.
    • GPencil: Refactor: Add implementation of new mask list system 9ef18d8b36a.
  • Next week

Fixing some high priority bugs and finish some other small tasks & reviews.

Week 160 : 3rd - 9th February

  • Info

Beside usual bugfixing, one noticeable improvement of this week is the improvement made to object selectiong to avoid not selecting subpixel (tiny) objects in rectangle select.

  • General development
    • Fix T73045 Crash entering edit mode for "Object Font" instance mesh 0936f2f52c5.
    • Fix T61685 Curve extrusion looses flat shading in certain viewport shading c19112d755f.
    • Fix T73517 Overlay: Edit Mode: X-Ray does not work if xray is equal to 1 77394ef1dbc.
    • Fix T69834 Edit Mesh: Multi-object edit crash when an instance is hidden 0a95a0852eb.
    • Fix T72155 Overlay: Bone X-ray no longer works in pose or weight paint mode 86fb8062d7b.
    • Fix T72261 Overlay: Edit Mesh: Edges not visible when using "In front" 0cd0058e270.
    • Fix T72504 EEVEE: Crash when rendering Instance Collection with hair 8efd8046853.
    • Fix T73127 EEVEE: Reflection plane not visible in lookdev without scene world 092deb88b07.
    • Fix T70121 EEVEE/GPencil: Curves cause crash when using background rendering 994e9f702fb.
    • Fix T67641 Gizmo3D: Transform gizmo disappear in very close view 79003fa0c41.
    • Selection: Add conservative rasterization to select really small objects 3685347b417.
    • Overlay: Armature: Fix Display armature as bound box in object mode 06a8f55104d.
    • GPU: Remove disabling of indirect drawcall batching on NVIDIA hardware fd130a711e9.
  • Next week

I'll be focusing on finishing and merging Grease Pencil, draw-colormanagement and continue bugfixing.

Week 159 : 27th - 2nd February

  • Info

I'm still focusing on general bug fixing for the release of 2.82. The draw-colormanagement branch should be merged to master this week if everything goes fine.

  • General development
    • Displist: Add mikktspace tangent space generation for curve/text//surface objects 15350c70be8 c27d30f3eaf bcacf47cbcf.
    • EEVEE: Test maximum texture size before render. 8c5cb8359a3.
    • Fix T72593 Blender crashes when modifier change the material count 3fd4c88e3a2.
    • Fix T54422 FluidSim: ColorRamp set position does not update the viewport ecab41e44f7.
    • Fix T62730 Overlay: Selected edit hair points highlight is incorrect b2034c6ba24.
    • Fix T65146 EEVEE: Curve Texture Coordinates in Cycles and Eevee differ 65761487229.
    • Fix T66699 EEVEE: Material Preview "World" option doesn't work ed4cbde967a.
    • Fix T67060 EEVEE: Noise caused by disk lights 3d73609832d.
    • Fix T67552 EEVEE: Vector Curves node clamps maximum input value at 1.0 507a331f018.
    • Fix T69070 EEVEE: Volume shader glitch if object as axis with 0.0 scale 0366c46ec64.
  • Viewport Color Management Refactor
    • Overlay: Fix edit text overlay invert logic op not working c0675868a3f.
    • Overlay: Armature: Fix look regression because of linear space rendering f9914a8ef99.
    • Overlay: Put all colors inside draw_common.c for correct colormanagment. fe327c0970a.
    • Overlay: Support viewport background modes a7ac3a3ee3c.
    • Overlay: Move Alt+B clipping bounds display from workbench to overlay a3ee3b8f245.
    • Render API: Make external engine render in linear space for the viewport b180c8b8475.
    • OCIO: Use GroupTransform to avoid doing 3 transforms instead of 2 089b55885c2.
  • Next week

Continue bug fixing.

Week 158 : 20th - 26th January

  • Info

I have been sidetracked by color management from my bug hunting duty. I've created a branch that includes the colormanagent changes that are likely to go in for 2.83. This should fix issues with overlays, background images, Grease Pencil compositing and clear the way for the future realtime compositor. I tried to find a general implementation that does not need much more processing time nor VRAM.

Note these changes does only concern the viewport. The branch (draw-colormanagement) still has a few issues that needs to be resolved before merge.

  • General development
    • Fix T69121 DRW: Missing depth buffer refresh with GPencil + Cycles c5436883c66.
    • Fix T71374 EEVEE: Fix Node group socket not converting inputs as in Cycles c2e21b23296.
    • Fix T67050 Overlay: Forcefield limits are not dashed 170844135aa.
    • Fix T66956 EEVEE: NaN produced by bad geometry mess with the DoF 3cd32c376db.
    • Fix T73335 Overlay: Light Distance line does not represent custom distance 6dcbc3cd5aa.
    • Overlay: Improve Outline diagonal Antialiasing 335930ab4ef.
  • Viewport Color Management Refactor
    • DRW: Color Management: Do some rearangement of the draw code 05dda64cf29.
    • DRW: Color Management: Fix ghosting with cycles. bef1c0d11e0.
    • DRW: Color Management: Fix viewport render pipeline be68e899488.
    • DRW: Color Management: Rework code to accept new color transform needed 281fb484408.
    • DRW: Color Management: Move color management to the GPUViewport adf98e6360d.
    • DRW: Color Management: Remove DrawEngineType draw_background function 7d25c746152.
    • GPU: Add sRGB framebuffer support 73f612fa3bd.
    • GPUViewport: Add fallback colormanagment 2616a0a9d6e.
    • GPUViewport: Fix image uv editor. 5db185d1c48.
    • OCIO: Improve/Cleanup Implementation a0283355fcf.
    • OCIO: Support overlay blending in linear colorspace in GLSL backend 419a818eec8.
    • Overlay: Add other background types (checker and gradient) e18f0a4cfb5.
    • Overlay: Cleanup Image background implementation e9411b8ccf2.
  • Next week

Continue bug fixing.

Week 157 : 13th - 19th January

  • Info

General bug tracker week. Some long standing bugs have been solved.

  • General development
    • GPencil: Refactor: Reuse GPENCIL_MaterialPool across multiple objects b847861b6cb.
    • GPencil: Refactor: Speedup: Add drawcall merging of consecutive strokes cb089c25e2d.
    • GPencil: Refactor: Allocate GPU framebuffers only if necessary 8b02f761d99.
    • DRW: Store vertex color in linear format on GPU 6eaf51ef3e5.
    • DRW: Fix stencil being modified by passes that are read only b8bdb8e9e99.
    • Fix EEVEE: Planar Reflection data has inverted facing 0461ff764af.
    • Fix T67942 EEVEE: Crash when empty is set as camera and motion blur is on 7b29956cc54.
    • Fix T69794 EEVEE: "Bake Cubemap Only" resets Irradiance Volume if world is updated 5d5add5de2b.
    • Fix T70766 EEVEE: Performance drop with node tree in 2.81 32f0bb05230.
    • Fix T71402 EEVEE: Transparent material add volume scattering 39d5d11e022.
    • Fix T71532 EEVEE: Hair UV/Color attributes not working ba5bbf14f92.
    • Fix T71788 EEVEE: Invalid (pink) shader when using wireframe node faf563d27ca.
    • Fix T72104 Blender selects faces outside of Clipping Region if X-Ray is off 848b28d71e1.
    • Fix T72152 DRW_debug_sphere Not Working After Overlay Refactor 60c6a74ce1d.
    • Fix T72490 Collections: Exclude From View toggle causes segment violation e2724abc22d.
    • Fix T72547 Overlay: Wireframe clipping issues fca069a7053.
    • Fix T72574 Overlay: 'Show Cone' for Spotlights not working anymore aa3720ed82f.
    • Fix T72871 Overlay: Spotlights cone is much smaller than before 3fa548f9862.
    • Fix T72957 Crash using Eye dropper in Edit mode with X-ray 84825e4b50c.
    • Fix T73044 Crash in UV editor when changing UV selection modes 23599791418.
    • Fix T73116 Crash on startup caused by implicit conversion in glsl d51dcaf1041.
    • Overlay: Edit Mode: Fix vertices depth test not always on 820794e162e.
    • Overlay: Fix wrong 3D icon for cubemap lightprobes d72ffb5e9a4.
  • Next week

Continue bug fixing duty.

Week 156 : 6th - 12th January

  • Info

This past week I finally finished the Grease Pencil refactor. We have (almost) all features implemented and Antonio Vazquez will be stabilizing the branch from now on.

The week was focused into bringging back support form gpencil overlays in a cleaner way using the overlay engine (instead of custom builtin overlays inside the gpencil engine).

I also made sure all shading and color modes are on par with the mesh usage.

  • General development
    • GPencil: Fix vertex color draw tool color blending 1d25838eb41.
    • GPencil: Refactor: Add back guides and control points overlays ae529faa87e.
    • GPencil: Refactor: Add canvas grid 3b27d75f451.
    • GPencil: Refactor: Add fill vertex color suppport 2e609a45822.
    • GPencil: Refactor: Add gpencil case to BKE_object_is_in_editmode b33c61a4afd.
    • GPencil: Refactor: Add outline overlay 981c49ff4c2.
    • GPencil: Refactor: Add support for GPencil wireframes de4c23384fd.
    • GPencil: Refactor: Add Weight Paint support 1762cd34125.
    • GPencil: Refactor: Disable GPencil Outline in edit mode d333b0c6cb3.
    • GPencil: Refactor: Don't draw Gpencil objects if drawtype is not solid 2942e7eb03c.
    • GPencil: Refactor: Edit Mode support. a1285eb4d80.
    • GPencil: Refactor: Edit Mode: Add support for minor features 55f38e453c9.
    • GPencil: Refactor: Enable gpencil engine if xray is not used 5d6eb25858b.
    • GPencil: Refactor: Enable Vertex color mode in vertex paint 00feefba102.
    • GPencil: Refactor: Fix depth sorting with workbench render bd0809da61c.
    • GPencil: Refactor: Make Lighting effect only happen in lookdev & render mode bc774caaac5.
    • GPencil: Refactor: Make sbuffer batches managment more robust 5196533f91f.
    • GPencil: Refactor: Make Texture UV transform behave like normal 3D ones 1da03b2e806.
    • GPencil: Refactor: Move batch cache functions to DRW module 41cef139adc.
    • GPencil: Refactor: Move iterator to BKE 154fa8b8536.
    • GPencil: Refactor: Move vertex shader logic to gpencil_common_lib.glsl fb514173709.
    • GPencil: Refactor: Overlay: Add hide selection option back 6ac1f2eff25.
    • Gpencil: Refactor: Overlay: Fix crash when no gpencil object is active d9f0885050c.
    • GPencil: Refactor: Remove 3D stroke offset 80109a69eae.
    • GPencil: Refactor: Remove last occurence of stl->storage b6ff712af2b.
    • GPencil: Refactor: Remove per layer random color jitter in wireframe 50da5bf2cbe.
    • GPencil: Refactor: Replace Stroke Miter break by rounded corners b83692e11a3.
    • GPencil: Refactor: Rewrite the render pipeline 42ad3282c5c.
    • Gpencil: Refactor: Support per layer random color in wireframe overlay 938a26be8fe.
    • GPencil: Refactor: Support solid mode color modes 710601b5d01.
    • GPencil: Refactor: Use drawcall matrices instead of custom one 93c9347e9c4.
    • Overlay: Allow alpha blend passes to write to the line buffer 31700ba657b.
  • Next week

I will dedicate my time to the bug tracker & patch review until further notice.

Week 155 : 30th - 5th January

  • Info

Most of the Grease Pencil refactor is done, only the overlays need to be implemented back. This will be the focus of next week alongside some final UI review and cleanup. I hope to bring it to a mergeable state by the start of the week after.

Some noteworthy change is the refactor of current stroke drawing now supporting FX and correct blending. An option will be added to trade accuracy for stroke smooth "feel".

  • General development
    • GPencil: Refactor: Add SMAA as Antialiasing solution 0f7bde8f6f5.
    • GPencil: Refactor: Fix black GPobjects in hero files eca698867c8.
    • GPencil: Refactor: Add stroke fast drawing 94d228a4e4c.
    • GPencil: Refactor: Implement sbuffer stroke drawing 8a1cc77fdd1.
    • GPencil: Refactor: Add back gradient fill mode 384f870f4dc.
    • GPencil: Refactor: Implement Onion skinning back 589a889d232 f0ba75639a9.
    • GPencil: Refactor: Fix dot UV rotation at the end of strokes a6d30c064df.
    • GPencil: Refactor: Remove image size from uv computation 6a51a610743.
    • GPencil: Refactor: Add Stroke dot UV random rotation support 549a547f548.
    • GPencil: Refactor: Use stroke mask to cut dots shape 0d8a4528f72.
    • GPencil: Refactor: Add dot stroke object rotation mode 3fc6f6c5920.
  • Next week

Focus on finishing the GPencil refactor.