Skip to content

New experimental 2D renderer using skia

Compare
Choose a tag to compare
@tushar5526 tushar5526 released this 04 Aug 04:33
· 48 commits to master since this release
e349893

v0.8.0

We are happy to announce another developmental release under the summer fellowship at The Processing Foundation. The project was supervised by Mark Zhang. This release comes with an experimental 2D renderer using Skia. The skia 2D renderer shows significant improvements in both rendering
and efficiency of the sketches.

You can use the new 2D renderer by using the renderer argument in run function run(renderer='skia')

Bug Fixes

New Features

  • Along with the snake_case convention we support the camelCase
    convention for most Processing APIs #280
  • New experimental 2D renderer "skia" #344. Skia currently does not
    support typography and Image APIs, they will be implemented in
    further releases.

List of New APIs

  • frame_rate{.interpreted-text role="any"} sets frame rate for a
    sketch (only for skia)
  • rect{.interpreted-text role="any"} now supports border radius
    (only for skia)
  • CORNERS{.interpreted-text role="any"} CORNERS mode added (only
    for skia)
  • focussed{.interpreted-text role="any"} holds whether the current
    window is in focus or not (only for skia)

All the API previously present are supported as well in skia.

Here are some profiling results comparing the time taken to draw 100 frames for different sketches

Name Skia Vispy
arcs 2.11s 10.06s
custom_shapes 1.84s 5.00s
triangle_strip 2.55s 3.33s
curves 1.76s 5.41s
primitives 1.73s 3.9s

This release includes contributions from @tushar5526, @niklasr22,
@ziyaointl, @nakul-shahdadpuri, @andreasWallner, @janbehrens,
@yogeshhk, @cuppajoeman, @willtryagain, @parsoyaarihant,
@Kartik-byte, @Andy-Python-Programmer, @Mr-Sunglasses Thank you!