유튜브에서 처럼 막 쭉쭉 안늘어나서 gpt에서 물어보니 알려준 키워드

 

Dynatopo 왼쪽에 체크박스를 체크해야 하다니 먼가 눈에 잘 안들어 오네

 

땡기기 전 땡기고 나서. 나노 먼지 크기로 늘어났...나?

 

dynatopo 체크!

 

떙기기 전 땡기고 나서. 

클릭한채로 몇 번 문질문질 하니 폴리곤도 확 늘고, 제법 늘어난다!

 

그리고 grab!

기본은 draw인데

 

grab 으로 바꾸고 하니

 

겁나 쉽게 끌려온다. 다만 vertex 하나만 끌려오고, dynatopo 와는 같이 못쓴다고

f 누르면 영역을 조절할수 있는데 그 영역내의 버텍스가 한번에 끌려온다.

 

[링크 : https://sz3728.tistory.com/35]

Posted by 구차니
프로그램 사용/Blender2026. 7. 29. 16:51

cube는 면이 없으니 안되는데  UV sphere 추가하니 된다.

f키로 size 조절

 

shift-f 로 세기를 조정할 수 있고

클릭 + 드래그는 뽑아내고

 

ctrl 클릭 +드래그는 밀어 넣는다.

[링크 : https://kauree.tistory.com/903]

 

유튜브 보다 보면 양쪽 대칭해서 하던데

상단에 나비 같은거 누르면 좌우 대칭이 된다는데 일단 이걸 잘 (?) 쓰려면 y축을 보게 하고 써야 하는 것 같다.

 

양쪽 뽑!

[링크 : https://lioicreim.tistory.com/472]

Posted by 구차니
프로그램 사용/Blender2026. 7. 29. 12:41

요런 모델인데 scene collection 에서 카메라 하나를 검은색으로 설정

 

몸통은 사진기 선택을 꺼서 렌더되지 않게 하고 렌더하면 (각도 삑살은 어쩔수 없...) 이렇게 몸통이 빠진다.

 

체크하고 렌더걸면 아래처럼 보인다.

 

 

이걸 이용해서

STL export 시 geometry - properties 에서 render로 하고 열어보면

 

몸통은 렌더에서 빠져 있으니 털만 나오고

 

geometry - properties 에서  viewport로 하고 열어보면

 

몸통을 포함해서 export 된다.

Posted by 구차니
프로그램 사용/Blender2026. 7. 29. 10:42

 

P - Selection

하면 다른 객체로 분리된다.

[링크 : https://koreanbeef.tistory.com/17]

 

버텍스 선택하고 F(fill)

[링크 : https://blog.naver.com/jae45682/221962821639]

'프로그램 사용 > Blender' 카테고리의 다른 글

blender 5.x sculpting  (0) 2026.07.29
blender export render/viewport  (0) 2026.07.29
blender 보이지 않는 면까지 선택하기  (0) 2026.07.29
blnder 포즈 바꾸면서 렌더하기  (0) 2026.07.28
blender weight paint  (0) 2026.07.28
Posted by 구차니
프로그램 사용/Blender2026. 7. 29. 10:06

alt-z를 누르면 x-ray 모드가 되는데

그러면 뒤에 면까지 선택된다.

즉, 직관적으로 우리가 선택하는 영역내에 모든 vertex가 선택된다고 해야하나?

 

기본값인 x-ray off

선택하고 보면 먼가 검은 선이 보인다

 

 

 

alt-z 눌러서 x-ray 켜고 선택하면 산뜻한 오렌지로 선택되고

 

돌려보면 뒤에까지 잘되어있다.

 

[링크 : https://gall.dcinside.com/mgallery/board/view/?id=blender&no=5106]

'프로그램 사용 > Blender' 카테고리의 다른 글

blender export render/viewport  (0) 2026.07.29
blender 떼어내기, 때우기  (0) 2026.07.29
blnder 포즈 바꾸면서 렌더하기  (0) 2026.07.28
blender weight paint  (0) 2026.07.28
blender 먼가 숨기기 단축키  (0) 2026.07.22
Posted by 구차니
프로그램 사용/Blender2026. 7. 28. 17:10

armature 관련 ridgify 였나? 플러그인으로 생성한 골격을 이용해서

 

아래처럼 다양한 포즈로 렌더하는 예제

 

pose mode 까진 아니어도

armature가 pose로 되어있어야 한다는데(by claude) 무슨소리인진 모르겠다.

import bpy
import random
import math
import os

# -------------------------
# 설정
# -------------------------
NUM_IMAGES = 200
ARMATURE_NAME = "metarig"      # 랜덤 포즈를 적용할 아마추어 이름
MAX_ANGLE_DEG = 25.0           # 본 하나가 회전할 수 있는 최대 각도(도)
EXCLUDE_NAME_KEYWORDS = [       # 이 문자열이 이름에 포함된 본은 건드리지 않음
    "root", "pelvis", "spine", "metarig",
]
# IK/Copy Rotation/Child Of 등 다른 소스가 회전을 덮어쓰는 컨스트레인트 타입.
# 이런 컨스트레인트가 걸린 본은 rotation_euler를 바꿔도 무시되므로 건너뜁니다.
SKIP_CONSTRAINT_TYPES = {"IK", "COPY_ROTATION", "COPY_TRANSFORMS", "CHILD_OF"}
RESPECT_ROTATION_LIMITS = True
RANDOM_SEED = None
DEBUG = True

armature = bpy.data.objects[ARMATURE_NAME]
scene = bpy.context.scene

if DEBUG:
    print(f"[DEBUG] 현재 씬: {scene.name} / 전체 씬 목록: {list(bpy.data.scenes.keys())}")
    print(f"[DEBUG] 아마추어: {armature.name}, 모드: {armature.mode}")
    print(f"[DEBUG] pose_position (변경 전): {armature.data.pose_position}")
    print(f"[DEBUG] animation_data: {armature.animation_data}")
    if armature.animation_data and armature.animation_data.action:
        print(f"[DEBUG] action: {armature.animation_data.action.name}")

# 1) Rest Position으로 설정되어 있으면 본 회전이 렌더에 반영되지 않으므로 강제로 Pose Position 설정
if armature.data.pose_position != 'POSE':
    armature.data.pose_position = 'POSE'
    if DEBUG:
        print(f"[DEBUG] pose_position을 'POSE'로 변경함")

# 2) 액션(F-curve)이 물려있으면 매 프레임 평가 시 수동으로 넣은 rotation_euler를 덮어쓰므로 해제
if armature.animation_data and armature.animation_data.action is not None:
    if DEBUG:
        print(f"[DEBUG] 기존 액션 '{armature.animation_data.action.name}' 을 해제함 (수동 포즈와 충돌 방지)")
    armature.animation_data.action = None

scene.render.engine = 'BLENDER_EEVEE'
scene.render.resolution_x = 640
scene.render.resolution_y = 480
scene.render.resolution_percentage = 100

# 저장 폴더 (blend 파일 기준)
output_dir = bpy.path.abspath("//render_output")
os.makedirs(output_dir, exist_ok=True)

# PNG 저장
scene.render.image_settings.file_format = 'PNG'


def should_skip(bone_name: str) -> bool:
    lower = bone_name.lower()
    return any(kw.lower() in lower for kw in EXCLUDE_NAME_KEYWORDS)


def has_blocking_constraint(pbone) -> bool:
    """IK 등 다른 소스가 회전을 덮어쓰는 컨스트레인트가 있으면 True."""
    for c in pbone.constraints:
        if c.mute:
            continue
        if c.type in SKIP_CONSTRAINT_TYPES:
            return True
    return False


def get_rotation_limits(pbone):
    """본에 Limit Rotation 컨스트레인트가 있으면 (min, max) 라디안 튜플 반환."""
    for c in pbone.constraints:
        if c.type == "LIMIT_ROTATION" and not c.mute:
            return (
                (c.min_x, c.max_x),
                (c.min_y, c.max_y),
                (c.min_z, c.max_z),
                c.use_limit_x, c.use_limit_y, c.use_limit_z,
            )
    return None


def random_rotate_bone(pbone, max_angle_rad):
    limits = get_rotation_limits(pbone) if RESPECT_ROTATION_LIMITS else None
    prev_mode = pbone.rotation_mode
    if prev_mode != "XYZ":
        pbone.rotation_mode = "XYZ"

    rx = random.uniform(-max_angle_rad, max_angle_rad)
    ry = random.uniform(-max_angle_rad, max_angle_rad)
    rz = random.uniform(-max_angle_rad, max_angle_rad)

    if limits:
        (minx, maxx), (miny, maxy), (minz, maxz), ux, uy, uz = limits
        if ux:
            rx = max(minx, min(maxx, rx))
        if uy:
            ry = max(miny, min(maxy, ry))
        if uz:
            rz = max(minz, min(maxz, rz))

    pbone.rotation_euler = (rx, ry, rz)


def randomize_pose():
    max_angle_rad = math.radians(MAX_ANGLE_DEG)
    rotated = 0
    skipped_name = 0
    skipped_constraint = 0

    for pbone in armature.pose.bones:
        if should_skip(pbone.name):
            skipped_name += 1
            continue
        if has_blocking_constraint(pbone):
            skipped_constraint += 1
            continue
        random_rotate_bone(pbone, max_angle_rad)
        rotated += 1

    if DEBUG:
        print(f"[DEBUG] 회전 적용: {rotated}개 / 이름 제외: {skipped_name}개 / 컨스트레인트 제외: {skipped_constraint}개")


if RANDOM_SEED is not None:
    random.seed(RANDOM_SEED)

bpy.context.view_layer.objects.active = armature
prev_mode = armature.mode

if armature.mode != "POSE":
    result = bpy.ops.object.mode_set(mode="POSE")
    if DEBUG:
        print(f"[DEBUG] mode_set(POSE) 결과: {result}, 현재 모드: {armature.mode}")

if DEBUG:
    all_bones = [b.name for b in armature.pose.bones]
    print(f"[DEBUG] 전체 본 개수: {len(all_bones)}")
    print(f"[DEBUG] 본 목록: {all_bones}")

# -------------------------
# 렌더링 루프
# -------------------------
for i in range(NUM_IMAGES):
    # 매 렌더마다 아마추어 랜덤 포즈 적용
    randomize_pose()

    # 씬/디펜던시 그래프 강제 갱신 (배치 렌더 시 이전 프레임 캐시 문제 방지)
    bpy.context.view_layer.update()
    depsgraph = bpy.context.evaluated_depsgraph_get()
    depsgraph.update()

    # 렌더 저장 경로
    scene.render.filepath = os.path.join(output_dir, f"image_{i:03d}.png")
    print(f"Rendering {scene.render.filepath}")
    bpy.ops.render.render(write_still=True)

if prev_mode != armature.mode:
    bpy.ops.object.mode_set(mode=prev_mode)

print("Done.")

 

+

object mode /  bone 에서 이런걸 발견. 아.. 이게 위에 그거였나?

'프로그램 사용 > Blender' 카테고리의 다른 글

blender 떼어내기, 때우기  (0) 2026.07.29
blender 보이지 않는 면까지 선택하기  (0) 2026.07.29
blender weight paint  (0) 2026.07.28
blender 먼가 숨기기 단축키  (0) 2026.07.22
blender quarternion  (0) 2026.07.22
Posted by 구차니
프로그램 사용/Blender2026. 7. 28. 16:16

armature 만드는거랑 auto weight는 일단 스킵

weight paint 모드로 들어와서 우측의 properties에 보면

vertex groups 라고 관절들이 보이는데 이걸 클릭하면 왼쪽에서 위치별로 weight paint가 보이게 된다.

 

왼쪽 클릭후 문질러 대면 되는데

weight 0.0 으로 하고 strength 1.0 으로 하니 검은색으로 칠해지면서 weight를 사라지게 할 수 있긴한데..

편한 방법 없나..

 

 

반대편 다리에 검게 해두니 확실히 해당 관절을 돌릴때 다른쪽에 영향을 안 받긴 한다.

 

그런데.. 원하지 않는데 까지 막 칠해지는데.. face 단위로 영역 지정이 가능하려나?

 

[링크 : https://m.blog.naver.com/cjw531/223159464692]

[링크 : https://tintana4168.tistory.com/22]

[링크 : https://studio.blender.org/training/blender-fundamentals-45-lts/blender_4-5_lts_rigging_weight-painting/]

 

'프로그램 사용 > Blender' 카테고리의 다른 글

blender 보이지 않는 면까지 선택하기  (0) 2026.07.29
blnder 포즈 바꾸면서 렌더하기  (0) 2026.07.28
blender 먼가 숨기기 단축키  (0) 2026.07.22
blender quarternion  (0) 2026.07.22
blender ik  (0) 2026.07.15
Posted by 구차니
프로그램 사용/Blender2026. 7. 22. 14:39

shift - alt - Z (show overlays)

 

 

ctrl - space (오른쪽 메뉴 숨겨짐 - maximize area)

 

 

ctrl - alt - space (창모드 전체화면 - focus mode)

 

 

 

window - new window 하고

새로운 창에서(오브젝트는 원래 창과 공유됨)

focus mode + overlay off 하면 가장 간단하게 구현이 가능할 듯 하다.

'프로그램 사용 > Blender' 카테고리의 다른 글

blnder 포즈 바꾸면서 렌더하기  (0) 2026.07.28
blender weight paint  (0) 2026.07.28
blender quarternion  (0) 2026.07.22
blender ik  (0) 2026.07.15
블렌더 이동 / 회전 제한  (0) 2026.07.15
Posted by 구차니
프로그램 사용/Blender2026. 7. 22. 14:26

여기 메뉴에서 XYZ Euler가 기본인데 이걸 클릭하면

 

아래와 같이 rotation이 XYZ 에서 WXYZ로 변경된다.

 

근데 어떻게 써야할지, 어떻게 이해해야 할 진 모르겠음.. 

[링크 : https://devtalk.blender.org/t/quaternion-interpolation/15883/14]

[링크 : https://docs.blender.org/manual/en/latest/modeling/geometry_nodes/utilities/rotation/quaternion_to_rotation.html]

'프로그램 사용 > Blender' 카테고리의 다른 글

blender weight paint  (0) 2026.07.28
blender 먼가 숨기기 단축키  (0) 2026.07.22
blender ik  (0) 2026.07.15
블렌더 이동 / 회전 제한  (0) 2026.07.15
blender key overlay  (0) 2026.07.15
Posted by 구차니
프로그램 사용/Blender2026. 7. 15. 10:58

edit mode 

shit - a

armature - single bone

 

가늘은 쪽이 많이 움직인다고 해야하나? 아무튼 적당히 다리 모양으로 만들어 본다.

 

tab (edit mode)

g (뒤집어서 생성)

(동그란데 선택하고) e 반복

무릎과 발목 선택해서 e 눌러서 양쪽으로 빼줌

 

ik 제어용(?) 머시기 선택후

 

우클릭 - parent - clear

혹은 alt-p

 

clear parent

 

제어용 뼈 선택후 G 눌러 뼈에서 떨어트린다.

 

같은 방법으로 발목도 떨굼

 

 

pose mode 이동

제어할 놈(?) 선택

 

shift누르고 제어 당할 놈(?) 선택

 

shift-i

 

철컥! 달라붙네?!

 

관절이 두개는 있어야 알아서 끌려 오는건가

 

bones 에서 viewport display 에서 axes 하면 어디 방향인지 잘 나와준다. 좋은데?

[링크 : https://www.youtube.com/watch?v=PctSMB-RGsM]

 

+

2026.07.16

이제 남은건 pole 기능이구나. 관절의 각도 제한하는 용도.

그리고 처음 제어용은 target 이라고 한다.

[링크 : https://m.blog.naver.com/nocsurim/222183115415]

[링크 : https://blog.naver.com/cjw531/223159782692]

'프로그램 사용 > Blender' 카테고리의 다른 글

blender 먼가 숨기기 단축키  (0) 2026.07.22
blender quarternion  (0) 2026.07.22
블렌더 이동 / 회전 제한  (0) 2026.07.15
blender key overlay  (0) 2026.07.15
blender 모션캡쳐 관련  (0) 2026.07.14
Posted by 구차니