Son xəbərlər
Rhino 8 QuadRemesh bələdçisi: təmiz quad mesh və SubD iş axınıUnreal Engine Pixel Streaming quraşdırılması: layihəni brauzerə ötürmək üçün bələdçiBlender Python ilə kamera kadrını və animasiya aralığını tənzimləməkRevit modelini Navisworks-ə hazırlamaq: koordinat, xüsusiyyət və həndəsə bələdçisiBlender Geometry Nodes Repeat Zone: Təkrarlanan geometriya üçün praktik bələdçiBlender Geometry Nodes: Nöqtələrə obyekt yerləşdirmək və instansları çevirməkVenesiya 2027 Kore Pavilyonu kiçilən şəhərləri “Katabolizm”lə araşdıracaqNano Banana 2.1 ilə interyer vizualı yaratmaq: addım-addım prompt bələdçisiWinchester College qız yataqxanaları tamamlandı: Stanton Williams imzasıArchicad 28-də Autotext və etiketlər: model məlumatlarını çertyoj vərəqlərinə köçürmək
TəlimlərBlender

Blender Python ilə kamera kadrını və animasiya aralığını tənzimləmək

Blender-in aktual Python API sənədləri səhnə və kamera parametrlərini kodla tənzimləmək üçün lazım olan xüsusiyyətləri izah edir. Bu bələdçidə lens dəyərini, kadr bələdçisini və animasiyanın kadr aralığını addım-addım tənzimləyirik.

Üçlər bələdçisinə əsasən qurulmuş müasir interyer memarlıq vizuallaşdırmasıSüni intellekt şəkli
Təmsili şəkil, süni intellektlə yaradılıb.Şəkil: 3dsınıfı / FCA AI

Qısaca

  1. Aktiv kameraya `scene.camera` vasitəsilə daxil olub lens dəyərini dəyişə bilərsiniz.
  2. Üçlər bələdçisini kamera məlumatlarındakı `show_composition_thirds` xüsusiyyəti ilə aktivləşdirmək olar.
  3. Animasiya aralığı `frame_start` və `frame_end` xüsusiyyətləri ilə müəyyən edilir.
  4. Blender 5.0-dan etibarən `scene.use_nodes` xüsusiyyəti köhnəlmiş sayılır; kompozit yaratma parametrini idarə etmək üçün `scene.render.use_compositing` istifadə edilməlidir.

Bu bələdçidə nə öyrənəcəksiniz?

Blender-də memarlıq vizuallaşdırma səhnəsinin kamera və vaxtlama parametrlərini Python API vasitəsilə idarə etmək təkrarlana bilən iş qaydası qurmağa kömək edir. Bu bələdçidə aktiv kameranı tapmağı, fokus məsafəsini dəyişməyi, kadr bələdçisini aktivləşdirməyi və animasiyanın başlanğıc-bitiş kadrlarını təyin etməyi nəzərdən keçiririk. Son bölmədə daha qısa preview aralığı təyin etməyi və tez-tez rast gəlinən xətaları yoxlamağı öyrənəcəksiniz.

Buradakı nümunələr Blender-in aktual API sənədlərində izah edilən Scene və Camera xüsusiyyətlərinə əsaslanır. Məqsəd bütün render parametrlərini avtomatlaşdırmaq deyil; kamera kadrı və vaxt aralığı kimi əsas qərarları səhnədə nəzarətli şəkildə tətbiq etməkdir.

Tələblər

Nümunələri Blender-in Python API-sindən istifadə edilə bilən mühitdə işlədin. Kodlarda Blender daxilindəki bpy modulunun və aktiv səhnə kontekstinin hazır olduğu fərz edilir. Sənədlərə əsasən səhnəyə bpy.context.scene vasitəsilə daxil olmaq mümkündür; səhnənin aktiv kamerası isə scene.camera xüsusiyyətində saxlanılır.

Bunlar aktual API səhifələridir. Həmçinin qeyd olunur ki, Scene.use_nodes Blender 5.0-dan etibarən köhnəlmiş sayılır və onun 6.0-da silinməsi planlaşdırılır. Bu bələdçidə kompozit node-ları qurulmadığından, kamera və kadr aralığı nümunələri üçün həmin xüsusiyyətə ehtiyac yoxdur. Mənbələrdə hesab tələbi göstərilmir.

Kodu tətbiq etməzdən əvvəl layihə faylının surətini saxlamaq və dəyərləri kiçik test səhnəsində yoxlamaq yaxşı iş vərdişidir. Bu, xüsusilə müxtəlif kamera quruluşları və ya animasiya aralıqları olan layihələrdə mövcud səhnə parametrlərinin təsadüfən dəyişdirilməsinin qarşısını almağa kömək edir.

1. Aktiv kameranı yoxlayın

Əvvəlcə səhnədə istifadə ediləcək aktiv kameranın olub-olmadığını yoxlayın. Scene.camera render üçün istifadə olunan aktiv kameranı göstərir. Aşağıdakı kod kamera varsa onun adını çap edir, yoxdursa səhnədə aktiv kamera olmadığını bildirir. Bu yoxlama növbəti kodlarda kamera məlumatlarına daxil olmazdan əvvəl etibarlı başlanğıc nöqtəsi yaradır.

python
scene = bpy.context.scene
camera = scene.camera

if camera is None:
    print("Sahnede aktif kamera yok.")
else:
    print("Aktif kamera:", camera.name)

Səhnədə kameranın olması ilə onun aktiv kamera seçilməsi eyni şey deyil. Kod scene.camera vasitəsilə yalnız aktiv kameraya daxil olur. Yoxlama nəticəsində kamera tapılmazsa, lens və kadr parametrlərinə keçməzdən əvvəl səhnədə istifadə ediləcək kameranı müəyyənləşdirin.

2. Lens dəyərini və kadr bələdçisini tənzimləyin

Kamera obyektinin parametrləri camera.data vasitəsilə daxil olunan kamera məlumat blokunda saxlanılır. Perspektiv kamera üçün lens fokus məsafəsini millimetrlə göstərir. Sənədlərdə standart dəyər 50,0 mm olaraq verilib; bu nümunədə dəyər 35,0 mm-ə təyin edilir. Bu, API vasitəsilə rəqəmsal parametr dəyişikliyidir; səhnənin müəyyən memarlıq nəticəsi verəcəyinə zəmanət vermir. Görüntünü yoxlayaraq uyğun dəyəri seçin.

python
scene = bpy.context.scene
camera = scene.camera

if camera is not None:
    camera.data.lens = 35.0

Kamera görünüşündə üçlər bələdçisindən istifadə etmək üçün eyni məlumat blokundakı show_composition_thirds xüsusiyyətini aktivləşdirə bilərsiniz. Bələdçi kadr daxilində elementlərin yerləşməsini qiymətləndirməyə kömək edir; geometriyanı və ya kameranın mövqeyini özü dəyişmir.

python
scene = bpy.context.scene
camera = scene.camera

if camera is not None:
    camera.data.show_composition_thirds = True

Bələdçi görünmürsə, kamera görünüşündə olduğunuzu və aktiv kameranı yoxlayın. Bu xüsusiyyət API-də kameranın kompozisiya bələdçilərini göstərmə parametrləri arasında yer alır. Sənədlərdə mərkəz, qızıl nisbət və digər kompozisiya bələdçiləri də sadalanır; burada nümunə memarlıq kadrını qiymətləndirmək üçün üçlər bələdçisi ilə məhdudlaşdırılıb.

3. Animasiya üçün kadr aralığını təyin edin

Səhnənin oynatma və render aralığının başlanğıc və bitiş nöqtələri frame_start və frame_end xüsusiyyətləri ilə müəyyən edilir. Aşağıdakı nümunə aralığı 1-ci kadrdan 120-ci kadra qədər təyin edir və səhnənin cari kadrını başlanğıc kadrına keçirir. Dəyərlər nümunə üçündür; onları animasiyanızın uzunluğuna uyğun dəyişin.

python
scene = bpy.context.scene

scene.frame_start = 1
scene.frame_end = 120
scene.frame_set(scene.frame_start)

frame_set() cari kadrı təyin edərkən obyektləri və view layer-ləri də yeniləyir. Buna görə yalnız kadr nömrəsini dəyişəndə saxlamaq əvəzinə, səhnənin kadr parametrini yeniləmək üçün bu metoddan istifadə edə bilərsiniz. API sənədlərində frame_set() metodunun subframe dəyəri də qəbul edə biləcəyi qeyd olunur; bu bələdçidə əsas tam kadr istifadəsi ilə kifayətlənirik.

Preview üçün əsas aralıqdan fərqli başlanğıc və bitiş aralığı da təyin etmək mümkündür. use_preview_range alternativ aralığın istifadə olunub-olunmayacağını, frame_preview_start və frame_preview_end isə onun sərhədlərini müəyyən edir.

python
scene = bpy.context.scene

scene.use_preview_range = True
scene.frame_preview_start = 20
scene.frame_preview_end = 40

Bu nümunədə preview aralığı 20–40-cı kadrlar arasındadır. API izahına əsasən alternativ aralıq animasiyanın oynadılması və viewport render-ları üçün istifadə oluna bilər. Əsas animasiya aralığını dəyişmək istəmədikdə bu fərq faydalı ola bilər. Preview parametrinin gözlədiyiniz kimi işlədiyini səhnədə yoxlayın.

Tez-tez rast gəlinən xətalar

  • Aktiv kameranın olmadığını gözdən qaçırmaq: scene.camera boşdursa, kamera məlumat blokuna daxil ola bilməzsiniz. Əvvəlcə ilk nümunədəki yoxlamanı işlədin.

  • Parametri yanlış obyektdə axtarmaq: Lens və kamera kompozisiya bələdçisi kamera obyektinin data bölməsindədir. Kadr aralığı isə səhnə xüsusiyyətidir.

  • Preview aralığını əsas aralıqla səhv salmaq: frame_preview_start və frame_preview_end, əsas frame_start və frame_end dəyərlərindən ayrıdır. Alternativ aralığı aktivləşdirən use_preview_range parametrini də yoxlayın.

  • Köhnə kompozit parametrindən istifadə etmək: Sənədlərdə Scene.use_nodes xüsusiyyətinin Blender 5.0-dan etibarən köhnəlmiş sayıldığı, təyin edilməsinin təsirsiz olduğu və 6.0-da silinməsinin planlaşdırıldığı bildirilir. Kompozit yaratmanı aktivləşdirmək və ya söndürmək üçün scene.render.use_compositing xüsusiyyətindən istifadə edin.

  • Nümunə dəyərlərini olduğu kimi layihəyə köçürmək: 35 mm və ya 120 kadr hər səhnə üçün uyğun seçim deyil. Kadrı və animasiya müddətini layihənin tələblərinə əsasən qiymətləndirin.

Memarlıq və vizuallaşdırma iş axınında növbəti addımlar

Bu üsul eyni səhnədə müxtəlif kadr və vaxtlama parametrlərini təkrar tətbiq edən vizuallaşdırma komandalarına, eləcə də kamera quruluşunu öyrənən tələbələrə fayda verə bilər. Məsələn, sabit səhnə aralığına qayıtmaq və ya kompozisiya bələdçisini yenidən aktivləşdirmək üçün bu qısa kod parçaları başlanğıc nöqtəsi yaradır. Bununla belə, bu nümunələr render sürətini artırmır və konkret avadanlıq tələbləri barədə məlumat vermir. Böyük layihələrdə dəyişiklikləri əvvəlcə istifadə olunan iş stansiyasında və layihənin surətində sınayın.

Növbəti addım kimi kod parçalarını öz səhnənizdə ayrı-ayrılıqda tətbiq edin və kamera kadrı ilə kadr aralığını yoxlayın. Daha sonra bu parametrləri komanda daxilində paylaşıla bilən iş axınına çevirmək istəsəniz, Blender API-dəki müvafiq obyekt və xüsusiyyətləri araşdırın. Kompozit parametrlərini dəyişmək lazım olarsa, aktual API-dəki scene.render.use_compositing xüsusiyyətindən istifadə edin; köhnə scene.use_nodes xüsusiyyətinə əsaslanan yeni kod yazmayın.

Mənbə və lisenziya

Bu bələdçi Blender-in Scene və Camera API sənədlərindəki xüsusiyyətlər əsasında hazırlanıb. Hər iki mənbə CC BY-SA 4.0 lisenziyası ilə təqdim olunur: bpy.types.Scene və bpy.types.Camera. Kod nümunələri sənədlərdə izah edilən API adlarından istifadə edilməklə bu bələdçi üçün yazılıb.

Mənbələr

2 mənbə
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Scene.html
Xülasə
D(
docs.blender.org (CC BY-SA 4.0)docs.blender.org/api/current/bpy.types.Camera.html
Xülasə

Mənbə mətnləri yenidən dərc edilmir; qısa sitatlar işarələnir, qalanı bizim xülasə və şərhimizdir.

3dsınıfı rəyi
3dRedaktorun qiymətləndirməsi

Blender API vasitəsilə kamera və vaxtlama parametrlərini idarə etmək, xüsusilə eyni səhnə quruluşunu müxtəlif təhvil işlərində təkrarlayan ofislər üçün praktik başlanğıcdır. Kod parçaları qısa və səhnə xüsusiyyətləri ilə məhdudlaşır; buna görə mürəkkəb avtomatlaşdırma sistemi qurmadan əvvəl kiçik, ölçülə bilən addımlarla irəliləməyə imkan verir.

Türkiyədəki tələbələr və vizuallaşdırma komandaları üçün əsas məqam nümunə dəyərlərini hazır resept kimi qəbul etməməkdir. Bələdçidə avadanlıq performansı və ya lisenziya xərcləri barədə məlumat verilmir; dəyişiklikləri mövcud iş stansiyasında sınamaq və layihə fayllarının öz lisenziya şərtlərini ayrıca nəzərdən keçirmək lazımdır.

Tez-tez verilən suallar

Blender Python API ilə aktiv kameraya necə daxil olmaq olar?

`bpy.context.scene` vasitəsilə aktiv səhnəyə, sonra isə `scene.camera` ilə səhnənin aktiv kamerasına daxil olunur. Kamera yoxdursa, `scene.camera` dəyəri boş ola bilər.

Blender-də kamera lens dəyərini Python ilə necə dəyişmək olar?

Aktiv kameranın məlumat blokundakı `camera.data.lens` xüsusiyyətini təyin etmək olar. Bu xüsusiyyət perspektiv kameranın fokus məsafəsini millimetrlə göstərir.

Blender 5.0-da `Scene.use_nodes` istifadə edilməlidirmi?

Aktual API sənədlərində bu xüsusiyyətin Blender 5.0-dan etibarən köhnəlmiş sayıldığı və təyin edilməsinin təsirsiz olduğu bildirilir. Kompozit yaratmanı aktivləşdirmək və ya söndürmək üçün `scene.render.use_compositing` tövsiyə olunur.

Şərhlər və forum türkcədir.Müzakirəyə qoşulun
+

Əlaqəli xəbərlər