#python #blender
#python #блендер
Вопрос:
в предыдущих версиях blender можно было получить фактическое положение вершины с помощью to_mesh():
https://blenderartists.org/t/how-to-get-vertices-coordinates-from-animated-mesh/565581/4
К сожалению, эта функция не работает в blender 3, не так ли? Существует ли альтернативный подход для получения координат вершин с применением модификаторов и ключей формы? Заранее спасибо!
Приветствую
Ответ №1:
Этот минимальный пример работает для меня в blender 3.0.0:
import bpy
# get absolute position of a vertex from an object with shapekeys (and other transforms)
dg = bpy.context.evaluated_depsgraph_get()
obj = bpy.context.object.evaluated_get(dg)
mesh = obj.to_mesh(preserve_all_data_layers=True, depsgraph=dg)
co = mesh.vertices[0].co
co_final = obj.matrix_world @ co
print(co_final)
Он основан на подходах ideasman42 и iceythe Kaio в этих старых сообщениях:
https://blenderartists.org/t/get-mesh-data-with-modifiers-applied-in-2-8/1163217
https://blender.stackexchange.com/questions/1311/how-can-i-get-vertex-positions-from-a-mesh