RetopoFlow 2.0: Rebuilding a Blender Add-On From Scratch

Jul 17th 2018

Brand New RetopoFlow 2.0 is Coming Soon

The new set of retopology tools promises a smooth and artist-friendly workflow focused on creativity and intuitive use. Jonathan Williamson and Jon Denning have been working on RetopoFlow 2.0 for months, rewriting the original code from the ground up.


"Our goal is to completely transform the retopology workflow"


“Our goal is to make retopology as easy and artist-driven as sculpting,” says Jonathan Williamson. “Most people don’t enjoy retopology, and with RetopoFlow 2.0 we hope to change this and completely transform people’s workflow into a nice, creative process.”

The First Blender Plugin of its Kind

RetopoFlow is one of the first commercial plug-ins built for Blender and one of the most successful ones ever. It has been among the top sellers on the Blender Market since it’s release over three years ago and has sold 2,300+ copies, generating over $150,000 in revenue, $4,500 of which has been donated to the Blender Foundation. Today, the RetopoFlow sells roughly 65 copies each month.


"The first RetopoFlow solves many problems, but it isn't user-friendly. RetopoFlow 2.0 will completely change that."


With a constant 4+ star rating on the Blender Market, the RetopoFlow has the reputation of an outstanding Blender plug-in. Andrew Price aka Blender Guru has called the RetopoFlow “probably the highest quality paid addon around.“ 

While the existing version of RetopoFlow made retopology easier and solved many of the problems that plagued Blender artists, it wasn't completely user-friendly and issues with its UI have existed since RetopoFlow first appeared. “This is because RetopoFlow isn’t a single tool,” explains Jon Denning, one of the creators. “Rather, it is a set of tools, each of which solving various retopology problems. Some of the tools overlap in functionality and some are entirely disconnected.” 

No More Issues with Polystrips

“We’ve been aware of the issues from the start,” explains Jon. “We tried our best to write code only once and call it from many places, but often it is hard to see the forest from the trees and similar code did end up being written over and over.  This was very obvious every time we added one more tool, or needed a new feature.”

For instance, relaxing a newly laid strip of polygons using Polystrips required exiting the Polystrips and starting Relax. But once the artist returns to Polystrips, all of the Polystrip information was lost, making further adjustments (such as increasing the segment count) possible only by adding Relax features to Polystrips. 

Polystrips in the new RetopoFlow 2.0

“A troubling issue that used to come up time and time again was using Polystrips on thin surfaces, where creating a new strip of quads worked fine but moving one of the control points would cause the quads to jump to the wrong side of the source,” explains Jon.


"The old design wasn't going to cut it: we needed a reboot."


Ultimately, while being a highly useful and necessary set of retopology tools, RetopoFlow was plagued by an inconsistent user experience, non-intuitive workflow and inconsistent visuals - until now.

"We Decided to do a Full Reboot"

With feedback from RetopoFlow’s user community, Jon and Jonathan Williamson have been making smaller and larger scale changes since the first version of RetopoFlow created in May 2013 (the full change log can be found on RetopoFlow’s page). 

But in the past few years, it became clear that a more fundamental rework was going to be needed. After brainstorming ideas and solutions, including an attempt at refactoring some of the Polystrips and Contours code to work together, a decision was made: “The old design just wasn’t going to cut it,” says Jon. “We simply needed a reboot.”

Starting from Scratch to build a brand new RetopoFlow

Once the decision to ditch the old design was made, RetopoFlow 2.0 was straightforward to design and implement. The core crew was one man shorter than in the RetopoFlow 1 development days: Jonathan Williamson and Jon Denning took the lead without Patrick Moore this time. Patrick Moore was the original Contours developer but was too busy with his day job to commit. At the same time, the crew gained a different Patrick (Crawford, that is) as well as an intern, Christopher Gearhart, who worked on the previsualization code for Polypen.


"We got together for a sprint and made code happen."


Jon started building the common framework on which all the tools work. To the artist, this framework is the RetopoFlow Mode, acting very much like Edit Mode or Vertex Paint.  For the programmer, the framework provided some useful tools to "capture" the target mesh, to manipulate the target, to ask questions about the source, render brushes, render interactive UI, and so on. The framework supported a MVC-like design. “For quite a while, RetopoFlow 2.0 was far from useful or usable, because all of the work was on the backend,” says Jon. “But once the framework was developed, adding new tools became almost a simple task.” 

All of the RetopoFlow 1 tools had tightly coupled algorithms, data structures, visualization, and UI, which made them very difficult to port to the new framework design. Jon rewrote the core algorithm for each tool, leveraging the data structure, visualization, and UI provided by the framework.

Same Approach, Brand New RetopoFlow

As for Jon’s and Jonathan’s approach, not much has changed: “We got together for a sprint, planned out some awesome stuff, and made code happen,” says Jon. “We did come into it with more experience and insight, which I think is going to make RetopoFlow 2.0 a huge success.”

--------

RetopoFlow version 2.0 launches this summer as  a free upgrade to all customers.  You can purchase it today, which includes v1.x and the 2.0 beta. Join us on August 2nd for a live RetopoFlow 2.0 demo.

Author

Pavla Karon
9 Comments
Add a Comment

Get the latest

Sign up with your email address and get the latest, straight to your inbox.