Dev Planet

Avatar photo

RSS feed aggregator for FOSS game development.

Libre Arts: Week recap — 10 September 2019

Week highlights: out-of-canvas pixels now possible in GIMP, Krita team goes on a bugfixing spree, lots of changes in upcoming Blender 2.81 and FreeCAD 0.19, GSoC project for OpenGL rendering in LibreCAD v3 now completed, more work-in-progress goodness in Olive.

Graphics

There’s more under-the-hood work on GIMP’s plugin system, but there have been user-visible changes too, and you are likely to love those. Ell contributed a new feature: showing all pixel data outside the canvas boundary. It comes with an optional canvas boundary display (red dotted line).

When enabled, the padding around canvas gets replaced with common alpha checkerboard, and all content outside the canvas is revealed.

Ell also made it possible to use several tools outside the canvas. For now, it’s painting and cloning tools. Adding support for selection tools will probably bring GIMP considerably close to a full-blown implementation of unbounded layers.

Alessandro Francesconi released another new version of BIMP, visual batch processing plug-in for GIMP. Two latest updates feature improved GUI flexibility and HiDPI support (contributed by one of Pencil2D developers), as well as support for WebP and HEIF.

Before HiDPI fix:

After HiDPI fix:

Dmitry Kazakov, Boudewijn Rempt, Wolthera, and Lynx3d fixed probably a dozen of memory leaks in Krita and twice as many general bugs here and there. There’s more progress by Wolthera in adding support for SAI files: fixes for layer blending modes, masks support.

Meanwhile, Kuntal Majumder continues working on his GSoC project, the Magnetic Lasso tool. Recently, he added an ability to cancel selection and start anew, as well as edit checkpoints. He then implemented basics of lazy filtering.

Some members of the GNOME team are now promoting Obfuscate, a new program created by Bilal Elmoussaoui, specifically designed to blur and redact sensitive information on screenshots and images, like in this case part of tabs in Chrome:

3D and VFX

Pablo delivered another great recap of recent changes in Blender, there’s not much need in repeating that, just watch the video 🙂

You are going to love this extra though:

Or maybe this update on the eyedropper tool in Grease Pencil?

Check out a new photogrammetry add-on for Blender. There’s nice coverage over at Blendernation.

One more important topic here is free distribution of paid add-ons for Blender. This was an interesting conversation to watch:

The Wordpress ecosystem has had this controversy ages ago, Blender is comparatively late to the party, and yet it’s a conversation we needed to have.

CAD

LibreCAD’s only GSoC project, OpenGL rendering, is now complete. Kartik Kumar continues working with Florian Roméo and Armin Stebich on cleaning up the code. For details, see his final report.

Interesting things are going on with FreeCAD. There’s a newly introduced Points workbench by Jean-Marie Verdun, that provides tools for working with point clouds. The Check Geometry tool (verifies if you have a valid solid) got more settings.

More interesting things, courtesy by Victor Titiov, are going on with the Show module. Apparently, you can now have multiple temporary visualizations in arbitrary order and a plugin system. As the first tangible outcome, this helps allowing another workbench to do sketch editing.

The OpenSCAD workbench now supports extrusion with an angle, and the DraftFillet tools got a new option to change fillet to a chamfer, courtesy by vocx-fc. Finally, there’s a ton of updates in the FEM workbench by Bernd Hahnebach.

Video

I find it hard right now to report on Matt’s progress with Olive, because the master branch is pretty much unusable. So here is an unordered list of recent changes:

  • OpenImageIO support (cheap access to OpenEXR, DPX, Cineon etc.)
  • Lots of color management work done
  • Functions for alpha dis/re/association
  • Alpha over and opacity nodes are functional, transform (2D, 3D, and 4D) node is partially functional
  • Node caching and render caching improvements
  • New slider widget that can handle both integers and floats
  • New playback controls

Really, I can’t wait to see all this in a usable state.

Jonathan Thomas continues doing good work with OpenShot. There hasn’t been a release since March yet. But most recently, the program got support for Blender 2.80. This is where I just have to quote Jonathan:

On a side note, I really love the new version of Blender. It is very inspiring, the entire Blender story leading up to this release. It will continue to be an inspiration for OpenShot and myself. 👍 Good job Blender devs!!!!!

Cinelerra-GG now uses libdav1d for AV1 support by default instead of libAOM, which is part of the most recent release. It also got a new crop plugin and timeline bars, which aren’t in any release yet.

GNOME Subtitles is seeing more activity lately again, both new releases, v1.5 and v1.6, have bugfixes and small enhancements rather than new features.

Tutorials

A good introduction to darktable, made for PetaPixel readers:

New photography postprocessing tutorial for GIMP users by Davies Media Design:

GDquest explains using file layer in Krita to make game art mockups:

And here is a timelapse showing how to make a low-poly eagle logo with Inkscape:

Artworks and showcases

I’ll never get tired posting new artworks by Philipp Urlich, made with Krita. This one is based on a Gaugan render that he did.

More speedpainting with Krita from Sylvia Ritter:

Urban environments by James O‘Brien, made with Blender, are always good solid stuff.

‘Puffin spotting on Cannon Beach’ is a short animated film by Zale, made with Blender and based on a Zoe Persico’s illustration.

New FreeCAD showcase is a gas turbine for a radio-controlled model aircraft, based on a 1992 design by Kurt Schreckling. It was designed with upcoming FreeCAD 0.19, although no assembly workbench was used as there was no need for it, or so the author claims.

Random things

The funniest thing made with Blender I’ve seen in a while:

But procedural designs go even further:

Libre Arts: Week recap — 3 September 2019

Week highlights: Krita team begins working on SAI files support, new releases of StereoPhotoView, Blender Power Sequencer, and Flowblade, even more sculpting awesomeness in Blender.

Graphics

For GIMP, Michael Natterer and Jehan Pages spent the entire week porting plug-ins to new APIs, so not much fancy stuff going on.

One of the most interesting things going on with Krita right now is 3rd party funding to support SAI files via newly developed library called libsai (apparently, made by someone from Epic games). Only loading is likely to happen because of this:

Writing probably isn’t going to be possible… The file format is completely crazy, a kind of virtual file system with encryption keys. The work done at https://gitlab.com/Wunkolo/libsai is amazing.

It looks like this is FreeHand all over again.

Wolthera is currently adding decryption support to make it possible loading actual bitmap data, not just the layer tree.

Other than that, the team is mostly fixing bugs and preparing for the release of Krita 4.2.6 (beta is available, and the team needs your feedback).

Photography

Alexander Mamzikov released a new version of StereoPhotoView application that allows viewing and basic editing of stereoscopic images and videos. New features: variable alignment (scene depth) in the stereoscopy video content, gallery display and navigation when opening a photo from separate sources, automatic rotation when loading JPEG as per Exif orientation tag.

3D and VFX

Pablo Dobarro does a lot with sculpting tools in Blender, this is one of the most amazing recent changes:

For even more Blender changes, here’s a new weekly video review:

Blender team is also looking for a UX and web designer. See if you are interested and fit the criteria.

Nathan Letwory released a new version of his .3dm (Rhino) importer for Blender, with preliminary curves support.

Stephen Agyemang, appleseed’s second GSoC student, posted his report on implementation of practical path guiding in the renderer, that he worked on over the summer. This technique allows improving renders where indirect lighting is involved. See here for more details.

Frédéric Devernay cut another release candidate for Natron 2.3.15.

CAD

Yorik van Havre posted his monthly update about the work he and fellow team members did on FreeCAD, mostly in BIM and Arch department.

Some of the highlights:

  • BuildingParts now have a built-in, implicit section plane.
  • Various TechDraw ArchView and DraftView improvements.
  • DXF importing/exporting is now done with correct line color and style.

Even more importantly, the Link branch has been merged to the main development branch and allows FreeCAD to share object data (e.g. geometry) with other objects, inside or outside the file. This is pretty much a prerequisite for assemblies.

See the full report for more info.

Video

The GDquest released Blender Power Sequencer 1.3:

Version 1.4 already in the works, if you missed some of the new features announcements:

Nathan Lovato is also giving a talk about VSE at Blender Conference in October.

Janne Liljeblad released Flowblade 2.2. Some of the new features are: RotoMask and FileLumaToAlpha filters, LumaToAlpha compositor, and some UI updates for the titler and the keyframe edit tool. See here for more details. And here is a video that demonstrates using the roto mask.

The Pitivi team started merging GSoC code. The marker bar is now part of the master branch in Git.

As for Shotcut, Dan Dennedy introduced multiselection to the timeline (as well as Select All/None actions) and added several new video filters: Blend Mode, Elastic Scale, Threshold, Posterize, Halftone, and Dither.

Audio and music

Will Godfrey released a new version of Yoshimi, a free software synth. Some of the highlights are: extensions to AddSynth voices and modulators, a new AddSynth noise type, extra mute options, a global bank search entry.

Robin Gareus added pYIN support to Ardour for frequency estimation in audio. The change was introduced after looking at what David Healey has been doing with Lua scripts in Ardour:

Robin also added progress notification for Lua scripts execution and introduced support for new LV2 extensions (backgroundColor, foregroundColor, and scaleFactor) that allow a host to inform plugins on host color theme and UI scale factor to play better with non-default themes and on HiDPI displays.

The change requires patching both the host and LV2 plug-ins code. Here is what you get with default Ardour theme in upcoming version 6 and Robin’s limiter plug-in:

And the same with a brighter theme called Blueberry Milk:

Among other noticeable changes in the program, Nikolaus Gullotta of Mixbus fame added sortable Time Span, Length, and Range name columns to exporting dialogs. And Len Ovens continues his work on the foldback bus.

JP Cimalando made the initial release of an LV2 effect called stone-phaser, a phaser similar to the original vintage Small Stone pedal from the 70s.

Tutorials

Nathan Lovato explains how to create a tileset for a game in Krita with file and clone layers:

Xavier Shay explains how to recreate a Juno-60 with VCV Rack.

New Inkscape timelapse from grafikwork, this time on drawing chocolate icong donut:

Art and showcases

Barandanduen posted a new artwork made with GIMP:

New artwork by Ray Waysider, made with Krita:

Fenec fox render by Kanishk, made with Zbrush and Blender:

Felipe Torents did a new lighthearted animation with Blender:

There’s more Blender goodness on Bart’s weekly review of best artworks.

Libre Arts: Week recap — 28 August 2019

Week highlights: lots of under-the-hood work in GIMP, new features in Krita and Blender, new release of Kdenlive, CUPS changes the license, a variety of projects are wrapping up their GSoC participation for this year and post updates.

Graphics

Part of the GIMP team met at Chaos Communication Camp near Brandenburg (Germany) for a hackfest. They spent most of the week improving the new plug-in API and making plug-ins use it.

Additionally, Michael Natterer rewrote memory management for plug-ins, and Jehan (not present at CCC) merged his branch that adds object-oriented like approach (discussed in the previous week recap). He continued working on submission of signals from core to plug-ins in a separate git branch though.

There’s also some talk on IRC about adding a user preference for associated/non-associated alpha as a switch in the Image menu. Let’s wait for this to be actually delivered, but it’s good to know this is on the radar.

There haven’t been many feature changes in **GEGL **(save for the Meson port), but Øyvind Kolås added a proper greyscale color spaces support to the babl library and made a new release.

A few people asked me for an opinion on the fork of GIMP called Glimpse.

At first, I considered posting in detail about Glimpse but then thought better of it. Here is what I can say on the matter, and since I’m a GIMP contributor, please take this with an extra bag of salt.

  • GIMP team has been suggesting to fork it in extreme cases (such as rebranding) for years. It is perfectly fine to do so as per terms of GNU GPL, although, so far, most attempts have been unsuccessful.
  • Contributors to Glimpse have never been GIMP contributors in the first place, they aren’t known in the GIMP community, and they don’t seem to have any experience programming digital content creation software, so there is no real fragmentation so far.
  • I spent ca. two weeks on Glimpse communication channels to figure out if they are the real deal. There is a clear and rather disturbing difference between how Glimpse contributors/moderators claim they treat the upstream project and what they actually do and say about GIMP. This is the opposite of impressive.
  • The mutual hostility between supporters and haters of Glimpse doesn’t bring any value to the overall community. If you are among haters of Glimpse, please consider leaving them alone and letting them give it their best shot. Likewise, you are not getting anywhere by annoying GIMP developers.

The Krita team has been mostly fixing bugs. E.g. Dmitry Kazakov fixed absolute brush rotation on rotated canvas.

However, Boudewijn Rempt also reverted the removal of JPEG2000 support via OpenJPEG library that he did in 2016, and updated the code to use present-day API of the library. This is currently in a branch.

Miguel Lopez better known as Reptorian contributed Spiral and Reverse Spiral modes for the Gradient tool. This is really fun! I witnessed Reptorian going from being hard on developers on Reddit a few years back to becoming a valuable code contributor (delivering quadratic blending modes and a high pass filter). Take notes, people! 🙂

Nathan Lovato submitted GDquest’s Batch Export add-on to Krita for review and inclusion as part of the upstream project. Speaking of which, there’s another interesting merge request by Dmitrij Antsevich, adding an ‘Export Group as Layer’ switch for the exporting plug-in, so that each layer group would be flattened into a single respective layer for exporting.

The FontForge team is taking a new approach to communicating to users. Fred Brennan picked up the stale Twitter account and started turning it into pure gold by showing new features and recording quick video tutorials explaining the basics of using the font editor.

CUPS 2.3.0 is out and now ships under the terms of Apache 2.0 license rather than GPL/LGPLv2, although Michael Sweet added a GPL/LGPL exception that you can read at the bottom of the NOTICE file. This shouldn’t come as a surprise given that Apple has been owning the project since 2007.

Back in July 2007, when Michael revealed the acquisition, he stated:

CUPS will still be released under the existing GPL2/LGPL2 licensing terms, and I will continue to develop and support CUPS at Apple.

Well, this lasted a whopping 12 years.

On the code level, the new release adds support for IPP presets and finishing templates, brings a variety of bugfixes, and includes a new ippeveprinter utility (based on the old ippserver sample code). For more info, see the release log (some new features are mentioned in respective release logs of betas and release candidates).

Animation

Synfig had a successful Google Summer of Code participation. Here are reports from their students:

It’s been a while since I last posted anything about Pencil2D. Most work these days is done by Oliver Stevns and someone known as scribblemaniac. Over the summer, they improved the UI here and there, added configurable constraint rotation, and fixed some bugs. The work isn’t very fast but rather steady which is great. Their latest release was done at the spring/summer edge, you can read more about it here.

The OpenToonz team has been applying pull requests on GitHub in batches lately. This may or may not mean there is a new release coming.

3D and VFX

Pablo Vasquez did another awesome review of recent changes leading up to Blender 2.81: outliner changes, Intel’s denoiser, voxel remesher, Math node etc.

Some of the other new things in Blender are:

  • White Noise node
  • New snap options: Edge Center and Edge Perpendicular
  • New Grease Pencil operator Merge by Distance

Even more, there’s a new proposal for updated particle nodes UI which deals with issues pointed out in the previous proposals, namely, the connection between particle types and their behaviors not being obvious enough, and many (potentially) disorganized floating nodes in the node tree.

Soft8Soft finally released Verge3D 2.14 for Blender 2.80, featuring augmented reality support (WebXR), morph target controls and a parametric models demo, font loading and texture-from-text features, normal map generator and more.

Gray Olson posted the final update on her GSoC project for appleseed for which she created a unified viewport in appleseed.studio displaying several possible views of a scene, allowing to switch between them and overlay data and widgets on top of it.

Jeremy HU, who also got Epic MegaGrant in July, keeps posting updates on Dust3D.

Game design and programming

Godot’s: 8 Google Summer of Code students are doing fine. Here is the latest report.

There’s also a very much welcome update from Hugo Locurcio:

CAD

WandererFan added an alpha version of a welding symbol editor to the master branch of FreeCAD and is looking for input from users. Some nightly builds are available.

The OpenOrienteering Mapper team have been steadily releasing new development version with new features and bugfixes. Some of the changes over the summer are: mobile version for Android, experimental OCD 2018 importing and new OCD exporting (version 8-12, including georeferencing), GeoTIFF support, improved CMYK PDF exporting. Have a look for yourself and maybe give it a spin.

SolveSpace is getting long overdue development love from contributors who are now taking over the project from whitequark. This is not an easy process, you probably shouldn’t expect releases any time soon, but we’ll see.

Video

Kdenlive 19.08 was out earlier in August. Some of the release highlights:

  • 3-point editing (at last!)
  • Simple speed adjustment by Ctrl+dragging edges of the clip
  • Configurable number of channels and sample rate in the audio capture settings
  • Clip transcoding re-enabled
  • Default fade duration is now configurable

For more information, please see release notes.

New features never stop arriving to Blender Power Sequencer:

Music

There was an interesting discussion about UI on Ardour’s IRC channel after last week’s interview with Oleg Kapitonov, and the immediate result was that Robin Gareus replaced text captions with icons on buttons in plug-in windows. So when you use plug-ins with narrow natrive UIs, the dialog won’t be as wide as before.

Tighter plugin window UI in Ardour 6 alpha

Robin keeps improving icon-related code ever since. He also bundled x42-tuner with Ardour and dropped rule-based midifilter.

Meanwhile, Len Ovens resumed his work on the foldback bus. Essentially it’s a software implementation of stage monitoring where an output is tailored for a performer to help them hear themselves. The new code is, um, really, really new. A lot more will follow.

And yes, all this new stuff will eventually be part of Ardour 6.

New version of VCV Rack is out with bugfixes and new API features.

Tutorials

The Blender team continues releasing videos on 2.80 features (there’s a separate playlist on YouTube for that). The most recent addition is a video on sculpting tools:

New kickass 1-minute Blender tutorial from Ian Hubert, this time on creating post-apocalyptic cities:

Chris Kearford posted a ‘Non-photorealistic explosions with Blender’ tutorial with a few videos.

Chris Kearford, NPR explosions in Blender

New tutorial from GDquest on using physics layers and masks in Godot:

Fred Brennan posted a tutorial on changing the ascender, cap height, x-height, & descender:

Ramon Miranda explains 10 tricks to paint faster and better in Krita:

Art and showcases

Great work by Philipp Urlich, made with Krita:

Philipp Urlich, Krita, Tree Brothers

More speedpainting with Krita by Sylvia Ritter:

Sylvia Ritter, Krita, speedpainting

Financials

Last Sunday, I woke up to a whopping 600 euro donation from Simon Repp. Simon works in multiple disciplines, both graphics and music. So I think I probably didn’t entirely mess up by going beyond the topic of image editors and 3D 🙂 Thank you, Simon!