[Soc-2017-dev] Weekly Report #02 - Silhouette Operator
Sebastian Witt
W.Basti at gmx.de
Fri Jun 9 18:44:43 CEST 2017
**
*Week twois over, time for a small summary on the Silhouette Operator:*
*
I designated this week to get the base done. A rough operator skeleton
is now in place, custom draw-calls for the UI and first bare minimum
geometry generation takes place.
Here a short rundown of the different parts:
Silhouette Operator Skeleton
After abandoning the Idea of the silhouette brush the silhouette
operator is now starting to take shape. In this week I implemented a
simple standard modal operator. It has currently three stages.
1.
Invoke, data for the silhouette gets allocated triggered by an
alt-leftclick within sculpt-mode.
2.
Modal, the drawn shape while holding the keys is saved and a visual
UI representation is updated.
3.
Exec, from the drawn shape 3D geometry gets generated and attached
to the current PBVH. Afterwards data is cleaned up (more or less).
This is just a basis for the operator it will most likely get extended
by several stages to be able to make changes after sketching a new
shape. Similar to other operators you should be able to change the input
values afterwards and may be able to reshape the drawn silhouette.
Custom Draw-Calls
To get a visual feedback the operator needs a fitting UI. In this week I
set the foundation for it by registering a custom draw call. Currently
only a red contour is drawn but with the draw call in place this can
easily be extended! One thing to note: The UI code uses OpenGL immediate
draw calls which will get removed in 2.8 and will need to be ported
later. -Shouldn’t be much of a problem though.
Geometry Generation
The biggest challenge I faced this week was definitely the geometry
generation. The existing sculpting system does not support topology
changes with the exception of dyntopo. My current approach aims to make
it possible to insert a mesh into the PBVH mesh tree system without
rebuilding the whole tree. I am currently at the point where i can
insert a mesh into a one-node-tree with it not crashing instantly. I
have now got a rough idea of the PBVH structure and i think i will soon
be able to insert into more complex topology. It is a lot of pointer
reshuffling, buffer updating and indices magic which took longer than
expected and I am just at the start. I may need to reevaluate my
approach even though i am confident it will work.
The foundation for the Silhouette Operator slowly takes shape. With this
I will soon be able to get into a more explorative workflow!
Best Regards,
Sebastian Witt
Current Branch status:
https://developer.blender.org/rBce2671b0e29ba91e38d88858d5f5aba387d4e0c2
To try the Silhouette Operator press alt-leftclick in sculptmode and
draw a shape. When drawn without overlap of a simple object a shape gets
generated. (crashes most likely)
*
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.blender.org/pipermail/soc-2017-dev/attachments/20170609/44689a9d/attachment.htm
More information about the Soc-2017-dev
mailing list