見出し画像

[Blender][スクリプト]アクティブなカメラのロールを調整するスライダーを3Dビューに表示

chatGPT

import bpy
import math

def update_camera_rotation_z(self, context):
    # カメラの回転Z軸を更新する関数
    camera = context.scene.camera
    if camera and camera.type == 'CAMERA':
        camera.rotation_euler[2] = math.radians(context.scene.camera_rotation_z)

def draw_camera_rotation_z(self, context):
    layout = self.layout
    camera = context.scene.camera
    if camera and camera.type == 'CAMERA':
        row = layout.row(align=True)
        row.prop(context.scene, "camera_rotation_z", text="Roll", slider=True)

def register():
    bpy.types.Scene.camera_rotation_z = bpy.props.FloatProperty(
        name="Camera Rotation Z",
        description="Adjust the Z rotation of the camera (Roll)",
        default=0.0,
        min=-360.0,
        max=360.0,
        step=1,
        update=update_camera_rotation_z
    )
    bpy.types.VIEW3D_HT_header.append(draw_camera_rotation_z)

def unregister():
    bpy.types.VIEW3D_HT_header.remove(draw_camera_rotation_z)
    del bpy.types.Scene.camera_rotation_z

if __name__ == "__main__":
    register()


[240806追記]メニューバーだと邪魔になったのでサイドバーにまとめました。


この記事が気に入ったらサポートをしてみませんか?