Jump to content
3DCoat Forums

Farsthary update channel


Recommended Posts

  • Advanced Member

Yeah,

 

It would be great if the strokes were always a step away from being edited.  Kind of like dropping into edit mode in Blender.  That way users could adjust edges, polyflow, poles, span #'s as needed.  It would also be great if retopo objects with strokes could be retained in Retopo Models library for use on other projects as well.

 

This really has the potential to be a powerful tool. 

Edited by gbball
  • Like 1
Link to comment
Share on other sites

  • Advanced Member

Would it be possible to generate the input curves from ambient occlusion ( for crevices) and Curvature ( peaks ) information ? then it could be a fully automated solution but with the bonus of being able to alter the input curves after the fact .

I noticed that the "Load Shape" option in the E panel  already has an algorithm to convert pixel brightness information to curves .Maybe this could be used to generate your curves?

Edited by manticor
Link to comment
Share on other sites

  • Contributor

Would it be possible to generate the input curves from ambient occlusion ( for crevices) and Curvature ( peaks ) information ? then it could be a fully automated solution but with the bonus of being able to alter the input curves after the fact .

I noticed that the "Load Shape" option in the E panel already has an algorithm to convert pixel brightness information to curves .Maybe this could be used to generate your curves?

Yes it would be great if curves could be generated automatically on hard edges of a high poly sculpt, maybe the algorithm could detect where sharp edges are (based on angle), then it would place curves along those edges. That would be a great time-saver for manual retopo of hard surface models.
Link to comment
Share on other sites

  • Contributor

RFill is a great tool until with repeated use on a mesh, it seems to be spinning it's wheels.  Taskmanager shows CPU activity and RAM growth but I don't know how long it may ultimately take as I end the process after 30 minutes. Reopening does not help as the 'failure' starts immediately (so if you haven't saved a successful patch, you wont be able to reopen and do it over.

Edited by Tony Nemo
Link to comment
Share on other sites

  • Contributor

I think the failure of RFill was due to being in a mouth cavity with half the head hidden. I don't know that it really failed, as I was unwilling to see how long it would take to perform the calculations that are almost instantaneous on the out side of the head. Maybe it was disoriented.

Link to comment
Share on other sites

@Tony Nemo

RFill got several bug fixed recently but I haven't  merge yet, RFill, QuadPaint and QuadStrips share big portions of the core so improvement in any of them reflects in the others.

 

@Manticor

 

Yes, That's a last stage for another tool (or an option of QuadPaint) in fact it has been in my background long time ago this possibility.  :)

  • Like 2
Link to comment
Share on other sites

@Taros

QuadStrips works very similar to Blender's RetopoFlow.

Is spline based quadrangle strips, instead of using just strokes like QuadPaint. It will be easier to outline patches and then filling them. I had to pause it in order to finish QuadPaint because the last one is the main algorithm and was the most advanced, but should quickly follow QuadPaint first public release.

It has no functionality yet in the public release,  is an alpha there.

  • Like 1
Link to comment
Share on other sites

@Taros

QuadStrips works very similar to Blender's RetopoFlow.

Is spline based quadrangle strips, instead of using just strokes like QuadPaint. It will be easier to outline patches and then filling them. I had to pause it in order to finish QuadPaint because the last one is the main algorithm and was the most advanced, but should quickly follow QuadPaint first public release.

It has no functionality yet in the public release,  is an alpha there.

All right. Thank you for the feedback.

Link to comment
Share on other sites

I would like to explain how an artist think, who use your tools. Of course the following infos are subjective, but may help you.

1. Here are three important model categories for artists who are retopologizing or modeling:

a ) The primary models. Objects of this category are mostly animated or plays a main role in the project.

b ) The secondary models. Such kind of objects are not important and in most cases not animated.

c ) The environment. Such models build the complete landscapes or fill landscapes.

Examples for category 1:

Mainly Characters or Vehicles

Examples for categroy 2:

Props like tables, rocks, sometimes vegetation or weapons

Examples for category 3:

Levels, buildings and all kind of big or static elements

Some description how we artists work (from my point of view):

When an artist use your tools for characters, then we will try to define all main polyflows first.

At the beginning an artist completely ignores the filling elements of a mesh, like big shapes and plain areas. The reason for this is the need to get the most flexible object for animation. Dynamic parts around eyes or the mouth needs clean poly circles without any tris or stars. So the artist will try to define this elements first and concentrate on them. He will create clean rings around holes and all other flexible elements, like arms or finger connections and bending parts like elbows and knees.

When the most important rings are defined, we try to fill them as exactly as possible. To achieve this we try to create straight polyflows between the single rings to connect them as clean as possible. While this process we try to get always quads, I mean ALWAYS!

When there is a situation where a tri appear, I am reconstructing my mesh at this area in the most cases to achieve a clean quad mesh. I know a lot of modelers doing the same way just to get the best result. I try to never create tris. The only exeption are models from category 2 or 3. There tris are not critical.

I am shure my explanation is just a repetition of information, you already have. But what I want to reach is, to transport you what kind of your tools will be used the most time later. I hope this helps you to set the right priority.

One example of the current situation in my opinion:

You created a curve creation mode for your great QuadPaint tool. But from my point of view this kind of curve creation is just an interesting playground for creating "dynamic" curves with tension. But an artist do not need dynamic and heavy controllable tools like this curves. For me bezier handled curves or the already nice implemented curve system in 3D-Coat is much better than yours. Why? Because the other curves gives me the most control.

Don't misunderstand me. I like you work a lot and it shows us the future of the retopo tools in 3D-Coat. But never forget to create tools that gives us the best control please. When I adjust your kind of curves for example, then I "hate" it when the curves start to move by tension. This always force me to correct already nice set pathes again. In this situation I have to redo or adjust already well defined shapes.

This is something you should improve for the final version. If you like, you can keep the dynamic creation as an option, but in my opinion we need more controlable curve creation.

At the end I will use just three of your tools:

1. Paint Quadstrips to get great poly flows and...

2. ... fill them with RFill (It is already a great time saver!!! )

3. Use QuadPaint for technical parts. I think this will be used less than the other ones but is important too.

This are just my two cents to improve your work.

Thank you very much for your efforts Raul.

You are on the right way with your development.

Chris

  • Like 5
Link to comment
Share on other sites

  • Contributor

Well said , and imagine i was ready to make a similar explanation at some point.

 

Just wanted to get the beta tools on my hand in a more "polished" level.

Link to comment
Share on other sites

  • Advanced Member

Yes additionally, it would be nice if we could non-desctructively subdivide the poly's that way you could have your base framework of the the strokes which would define the number of spans and polyflow, but then a modifier which could subdivide or even degrade the mesh density would be very useful for a workflow in which you wanted to retain an optimized low poly mesh and also merge things into the sculpt room at a higher resolution for sculpting purposes.  The number or spans along each stroke is already dynamic right, so this should technically be possible?

 

It seems that non destructive subdivision is already a part of the plans for the retopo room, so forgive me if it doesn't make sense to look at implementing it yet.

 

Edit:  This looks great by the way!

Edited by gbball
  • Like 2
Link to comment
Share on other sites

Implemented real-time preview, still needs more optimizations but enhances a lot the QuadPaint usability.

CgoDE15UkAA-F4F.jpg
 
Wow, just wow, with real-time preview is AWESOME. Need to sleep asap as I only have 5h left, tomorrow will show it.
CgoFcUaUgAEZV1K.jpg

 

Did I mention I have implemented also a third quadrangulation algorithm?

  • Like 4
Link to comment
Share on other sites

Implemented partial preview (Cached preview to only update after changes), realtime preview, and toggle off

 

Added light smoothing for realtime QuadPaint for better visual matching with final result.

 

QuadPaint: your personal footprint. http://farsthary.com/2016/04/26/quadpaint-your-personal-footprint …

Cg72DVTUYAEyF1_.jpg
 
QuadPaint realtime: http://youtu.be/8k6TDuJkztk?a  
 
Added 2 preview modes: Realtime, update the topology continuously.
Performance: update only after changes.
  • Like 1
Link to comment
Share on other sites

Recently I’ve added two preview modes for QuadPaint:

 

Realtime: Where you can see changes continuously, is better suited for experimentation and small to medium patches.

 

Performance: Update is done at the end of every change, ideal for medium to large patches.

 

Off: No preview, use only if the patches have lots of self intersections and vertices count.

 

In every stroke, new vertices can be added, removed and pinned. Strokes can be cut and weld too. Strokes defines the boundary and also the internal polygon flow.

 

There are three quadrangulation algorithms as well:

 

Direct, it will find the optimal way to connect the existing boundary directly.

 

Paving: Will try to find an optimal tiling based on the boundary

 

Hybrid: A new algorithm that combines the best of both.

 

Hope you like it!

 


  • Like 2
Link to comment
Share on other sites

  • Advanced Member

While I greatly admire the underlying programming skill I have to admit that I quite doubt the technical value of the sketch based topo shown in those clips...

 

Does it really make sense to follow the template volume that closely for  creation of the initial patch? I found greatly more attractive to see loser tessellation

in those patches and the main focus on proper loop structure in adjacent patches and on avoiding poles (extraordinary points) if somehow possible. A closer

fit could get obtained by subdividing and reprojecting the cage in a later step. If one rather wants to display a closely matching remesh result in realtime, one

might consider dynamic reprojected (shrinkwrapped) catmull clark subdivision built into the tool.

Edited by polyxo
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...