![見出し画像](https://assets.st-note.com/production/uploads/images/147631531/rectangle_large_type_2_28a170c6a9d83f2e96da998602f12be8.png?width=1200)
[Blender][スクリプト]アクティブなカメラのロールを調整するスライダーを3Dビューに表示
![](https://assets.st-note.com/img/1721232247938-Zs5wDJztu0.png)
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追記]メニューバーだと邪魔になったのでサイドバーにまとめました。
この記事が気に入ったらサポートをしてみませんか?