set sculpting layer data from high resolution mesh.
jeongseok last edited by m_adam
I want to sculpting from high mesh.
High mesh was got from zbrush.
this is like 'Project Mesh'.
My code is simple but was not working.
import c4d from c4d.modules import sculpting def main(): sculpt = sculpting.GetSelectedSculptObject(doc) sel = doc.GetActiveObject() if not sculpt: return if not sel: return if sel == sculpt.GetOriginalObject(): return if sculpt.GetPointCount() != sel.GetPointCount(): return firstLayer = sculpt.GetFirstLayer() layer = firstLayer.GetFirstSculptLayer() for i in range(firstLayer.GetPointCount()): layer.SetOffset(i, sel.GetPoint(i)) sculpt.Update() c4d.EventAdd() if __name__ == "__main__": main()
Traceback (most recent call last):
File "scriptmanager", line 26, in <module>
File "scriptmanager", line 21, in main
TypeError: an integer is required
SculptLayer.SetOffset(self, index, offset)
offset is vector. but 'TypeError: an integer is required'
how can i fix it?
m_magalhaes last edited by
There's actually a bug in the API, not only this method is affected. It probably affect all method of the sculpt module using a vector as a parameter.
This will be fixed as soon as possible.
jeongseok last edited by
@m_magalhaes Thank you for reply. I am going to use it for this project. Hope it gets fixed soon. Thank you.