plasticity 导入 blender

pl建模
bl上材质
真正确定建模时,复制blender副本,才设置原点

心得

  1. Imprint vs Cut vs Project
    Imprint内切割: 不产生新object,方便下一步做与邻边的处理,如fillet倒角。但可能会产生很多点和线段,选择不方便,plasticity计算也不方便(这个得结合视频才能讲明白)
    cut切割: 产生新object,若后续要做从线段生成曲面的功能(如loft),不要用imprint?
    project投影: 不切割object,仅产生曲线

  2. 多obj操作方向不一致
    答:J,join成一个物体

  3. loft不认我的剖面辅助曲线
    答:先生成平面g0的loft面,然后选择边,shift+D转换成曲线,调整。再次loft即可使用剖面辅助曲线
    plasticity的曲面建模中,操作能否成功,取决于曲面、线段数据是怎么来的,有时甚至要绕个弯。毕竟人只能看到显示器,电脑则负责内部数据的运算。plasticity作为NURBS建模的先锋之一,算法也有很多不够人性化的地方……

导入

blender内做变形动画必须用四边面,若只有单纯的移动,nPoly就够用了,如果要加一堆修改器,还是先转四边面靠谱。

1. plasticity 内转四边面,导出obj

参数还没摸透,似乎每个物体都得调不同的参数,纯看经验

2. blender bridge,但bridge不支持四边面

准备

  1. plasticity-blender-addon-Feature-Enhancements
  2. Quad Remesher for blender , https://www.exoside.com/quadremesherdata/QuadRemesher_1.2_UserDoc.pdf

步骤

  1. 连接刷新→三角refacet
  2. quad Remesher重拓扑

顶点颜色批量转材质

插件地址:https://github.com/Umiki404/VertexColorToMaterials

调试代码:了解polygons[index]的顺序

import bpy

def view_select():
    for area in bpy.context.screen.areas:
        if area.type == 'VIEW_3D':
            break

    # Set the context
    override = bpy.context.copy()
    override['area'] = area
    override['region'] = area.regions[-1]
    bpy.ops.view3d.view_selected(override,use_all_regions=False)


def select_face_by_index(obj, index):
    bpy.ops.object.mode_set(mode='EDIT')
    bpy.ops.mesh.select_all(action='DESELECT')
    bpy.ops.object.mode_set(mode='OBJECT')
    obj.data.polygons[index].select = True
    bpy.ops.object.mode_set(mode='EDIT')
    
index=0
obj=bpy.context.active_object
try:
    with open("index.txt", "r") as f:
        index=int(f.read())
        select_face_by_index(obj, index)
        index+=1
    with open("index.txt", "w") as f:
        f.write(str(index))
    view_select()
except:
    with open("index.txt", "w") as f:
        f.write('0')
posted @ 2023-10-27 10:22  Nolca  阅读(70)  评论(0编辑  收藏  举报