Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² написаниС скриптов Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.5x. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π°Β»

Автор Thomas Larsson

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π°

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² написаниС скриптов Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.5x.

Π’Ρ€Π΅Ρ‚ΡŒΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅, Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Ρ‘Π½Π½ΠΎΠ΅ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.57

Thomas Larsson

14 АпрСля 2011 Π³.

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄: Striver



Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π‘ появлСниСм Ρƒ Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° вСрсий 2.5x, написаниС скриптов Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ API ΠŸΠΈΡ‚ΠΎΠ½Π° Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.49 Π±Ρ‹Π» Π½Π΅ совсСм ΠΏΠΎΠ»Π½Ρ‹ΠΌ ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ, для API Π² Π‘Π»Π΅Π½Π΄Π΅Ρ€Π΅ 2.5x обязались ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ доступ ΠΈΠ· ΠŸΠΈΡ‚ΠΎΠ½Π° ΠΊΠΎ всСм возмоТностям Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°, ΠΏΠΎΠ»Π½Ρ‹ΠΌ ΠΈ систСматичСским ΠΏΡƒΡ‚Ρ‘ΠΌ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, кривая изучСния этого ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ инструмСнта ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΊΡ€ΡƒΡ‚ΠΎΠΉ. ЦСль этих Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ процСсс изучСния, прСдоставив скрипты ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ аспСкты написания скриптов Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ Π² Π‘Π»Π΅Π½Π΄Π΅Ρ€Π΅.

Π‘Π»Π΅Π½Π΄Π΅Ρ€ всС Π΅Ρ‰Π΅ находится Π² стадии ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΈ API ΠŸΠΈΡ‚ΠΎΠ½Π° Π΅Ρ‰Π΅ Π½Π΅ совсСм ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ. Π’ Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… мСсяцСв, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΡˆΠ»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ двумя изданиями этих Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ, API ΠŸΠΈΡ‚ΠΎΠ½Π° ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°Π»ΠΎΡΡŒ ΠΊΠ°ΠΏΠΈΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»ΠΊΠ°ΠΌ, Π»ΠΎΠΌΠ°ΡŽΡ‰ΠΈΠΌ всС старыС скрипты. Различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ (для 2.54.0) ΠΈ настоящим Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ (для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.57.0) Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π½Π΅Π΅ драматичСскиС. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΄Π°ΠΆΠ΅ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния Π² API ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ скриптов. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ Π² этих Π·Π°ΠΌΠ΅Ρ‚ΠΊΠ°Ρ… протСстированы Π½Π° Π‘Π»Π΅Π½Π΄Π΅Ρ€Π΅ 2.57.0 rev 35147 (эта информация доступна Π½Π° экранС заставки).

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π‘Π»Π΅Π½Π΄Π΅Ρ€ 2.57 Ρ€Π°Π·Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ выпуск, Π΅ΡΡ‚ΡŒ нСкоторая Π½Π°Π΄Π΅ΠΆΠ΄Π°, Ρ‡Ρ‚ΠΎ API смоТСт ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΈΡ‡Π½Ρ‹ΠΉ шанс, Ρ‡Ρ‚ΠΎ скрипты Π² этих Π·Π°ΠΌΠ΅Ρ‚ΠΊΠ°Ρ… останутся Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя, Π½ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ Π½Π° это Π½Π΅Ρ‚.

ΠžΡ…Π²Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ входят Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ:

β€’ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ манипуляция Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π΅ слишком ΠΏΠΎΠ»Π΅Π·Π½Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ созданы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ.

β€’ Бвойства, опрСдСляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

β€’ Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ: ΠΏΠ°Π½Π΅Π»ΠΈ, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ мСню.

β€’ ΠŸΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ скриптов Π² Π°Π΄Π΄ΠΎΠ½Ρ‹ Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ автоматичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ стартС Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°.

β€’ Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹, распространяСмыС Π² составС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ².

β€’ Бимуляции частиц, волос, Ρ‚ΠΊΠ°Π½ΠΈ, мягких Ρ‚Π΅Π», Π΄Ρ‹ΠΌΠ°, Тидкости, ΠΈ Ρ‚.ΠΏ..

β€’ Ноды.


Запуск скриптов

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ скрипта, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΡ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², являСтся Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ. Он ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ скопирован ΠΈ вставлСн Π² ВСкстовый Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π² Π‘Π»Π΅Π½Π΄Π΅Ρ€Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° экранС Scripting. Запуск скрипта осущСствляСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ Run Script ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ Alt+P Π½Π° вашСй ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅.

Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ доступны ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅, располоТСнныС Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ scripts, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ с этим Ρ„Π°ΠΉΠ»ΠΎΠΌ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» ΠŸΠΈΡ‚ΠΎΠ½Π° Π² ВСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Alt+O, ΠΈ запуститС Π΅Π³ΠΎ. Π•ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСт мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… скриптов сразу. Π­Ρ‚ΠΎ описано ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π² послСднСм Ρ€Π°Π·Π΄Π΅Π»Π΅.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ Ρ‡Ρ‚ΠΎ скрипты располоТСны Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ~/snippets/scripts , Π³Π΄Π΅ ~ это ваш домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, /home/thomas Π² Linux, C:/Documents and Settings/users/thomas Π² Windows XP, ΠΈΠ»ΠΈ C:/Users/thomas Π² Windows Vista. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Π½ΠΎ ΠΈΠΌΠ΅Π½Π° ΠΏΡƒΡ‚Π΅ΠΉ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ (batc.py, texture.py, ΠΈ uvs.py), Π½ΡƒΠΆΠ½ΠΎ соотвСтствСнно ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. ΠŸΠΈΡ‚ΠΎΠ½ сообщит Π’Π°ΠΌ, Ссли ΠΎΠ½ Π½Π΅ Π½Π°ΠΉΠ΄Ρ‘Ρ‚ Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ запуск всСх скриптов Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… object ΠΈ simulation, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ² ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² Ρ„Π°ΠΉΠ» batch.py. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ всС скрипты Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ (ΠΈΠ»ΠΈ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ошибок), Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ скрипт. Если ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΈΡΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, посмотритС Π² ΠΎΠΊΠ½ΠΎ консоли для получСния ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.


ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ большСго количСства ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ†Π°Ρ€Π°ΠΏΠΈΠ½Ρ‹ Π½Π° повСрхности Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ со скриптами Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ Π² Π‘Π»Π΅Π½Π΄Π΅Ρ€Π΅ 2.5x. Когда Π’Ρ‹ Π½Π°Ρ‡Π½Ρ‘Ρ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ваши собствСнныС скрипты, Π’Ρ‹ нСсомнСнно Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°ΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ, Π½Π΅ упомянутым здСсь. Π•ΡΡ‚ΡŒ нСсколько способов ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эту ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

β€’ Π“Π»Π°Π²Π½Ρ‹ΠΉ источник ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ β€” это Blender Python documentation. Π­Ρ‚Ρƒ страницу ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ· мСню Help Β» Python API Reference.



β€’ Π•ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΡ€ΠΎΠΊ ΠΏΠΎ написанию скриптов здСсь ИспользованиС встроСнных подсказок (tooltips). НапримСр, ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ курсора ΠΌΡ‹ΡˆΠΈ Π½Π°Π΄ ΠΎΠΏΡ†ΠΈΠ΅ΠΉ This Layer Only Π² контСкстС Π›Π°ΠΌΠΏ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ тСкст:


Illuminates objects only on the same layer the lamp is on

Python: PointLamp.use_own_layer

(ΠžΡΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ слоС, Ρ‡Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Ρƒ Π»Π°ΠΌΠΏΡ‹)


Из этого ΠΌΡ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ эта опция доступна ΠΊΠ°ΠΊ lamp.use_own_layer, Π³Π΄Π΅ lamp являСтся Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ lamp = bpy.context.object.data



β€’ Π’Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ подсказки ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ


Construct an UV sphere mesh

Python: bpy.ops.primitive_uv_sphere_add()

(Π‘ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ мСш UV-сфСры)


Π­Ρ‚ΠΎ сообщаСт Π½Π°ΠΌ, Π²Ρ‹Π·ΠΎΠ² ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Π½ΡƒΠΆΠ΅Π½ для добавлСния ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π° мСша UV-сфСры.



β€’ Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, ΠΎΠ½ оставляСт слСд Π² ΠΎΠΊΠ½Π΅ сообщСний Π½Π° экранС Scripting


bpy.ops.mesh.primitive_uv_sphere_add(segments=32, rings=16,

size=1, view_align=False, enter_editmode=False,

location=(0, 0, 0), rotation=(0, 0, 0), layer=(True, False, False,

False, False, False, False, False, False, False, False, False, False,

False, False, False, False, False, False, False))


Когда ΠΌΡ‹ добавляСм UV-сфСру ΠΈΠ· мСню, Ρƒ Π½Π΅Ρ‘ всСгда Π΅ΡΡ‚ΡŒ 32 сСгмСнта, 16 ΠΊΠΎΠ»Π΅Ρ†, ΠΈ Ρ‚.ΠΏ.. Но нСслоТно Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ сфСру с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 12 сСгмСнтов (segments), 6 ΠΊΠΎΠ»Π΅Ρ† (rings), радиус 3 (radius), ΠΈ ΠΎΡ‚Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π² (1, 1, 1):


bpy.ops.mesh.primitive_uv_sphere_add(

segments=12,

rings=6,

size=3,enter_editmode=True,

location=(1, 1, 1))


Π’ ΠΎΠΊΠ½ΠΎ сообщСний записываСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, Π° Π½Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, установлСнная Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π°.



Π’ послСдних вСрсиях Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°, скриптовый слСд пСчатаСтся Π² ΠΎΠΊΠ½Π΅ Π˜Π½Ρ„ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ, опуская Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ строку мСню.



β€’ Π£Ρ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ встроСнными с Π‘Π»Π΅Π½Π΄Π΅Ρ€ΠΎΠΌ β€” большой источник вдохновСния.


β€’ Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π²Π΅Ρ‚Π°Π΅Ρ‚ ΠΎΠ½-Π»Π°ΠΉΠ½ сообщСство людСй, ΠΏΠΈΡˆΡƒΡ‰ΠΈΡ… скрипты Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ Π² BlenderArtist


ΠžΡ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠ°:

На ΠΌΠΎΠΉ взгляд, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ этих Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠΏΡ‹Ρ‚ программирования Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°. Π­Ρ‚ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ подходят Π½Π° случай, Ссли, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ быстро ΠΏΠΎΠ΄Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ кости Π² Π°Ρ€ΠΌΠ°Ρ‚ΡƒΡ€Ρƒ ΠΈ ΠΊΠ°ΠΊΠΎΠΉ Ρƒ Π½Π΅Π³ΠΎ синтаксис, Π½ΠΎ ΠΏΡ€ΠΈ этом Π²Ρ‹ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ ΠΎΠ±Ρ‰Π΅Π΅ прСдставлСниС ΠΎΠ± этом ΠΈΠ»ΠΈ ΡƒΠΆΠ΅ писали Ρ‚Π°ΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.4.


Для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΆΠ΅ моя рСкомСндация Ρ‚Π°ΠΊΠΎΠ²Π°:

Если Π²Ρ‹ Π΄ΠΎ этого Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ с этим языком ΠΈ Π½Π΅ писали ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ сначала ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ сам язык (Π² сСти достаточно ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠΎΠ²) хотя Π±Ρ‹ Π½Π° минимальном ΡƒΡ€ΠΎΠ²Π½Π΅ (синтаксис, ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, основныС встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΠΌΠΏΠΎΡ€Ρ‚ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ Ρ‚.ΠΏ.).

Когда Ρƒ вас ΡƒΠΆΠ΅ появится прСдставлСниС ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ НаписаниС скриптов для Blender 2.49 (Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ Blender 2.49 Scripting), Π°Π²Ρ‚ΠΎΡ€ Michel Anders, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Π²Ρ‘Π». Π’ Π½Π΅ΠΉ, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ этих Π·Π°ΠΌΠ΅Ρ‚ΠΎΠΊ, ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассказываСтся ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ аспСктС программирования для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π°, Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° строк Π²ΠΎ всСх многочислСнных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…-ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ….


Когда Π²Ρ‹ почувствуСтС, Ρ‡Ρ‚ΠΎ ваш ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ для Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° приподнялся Π½Π°Π΄ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ "Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ", Ρ‚ΠΎΠ³Π΄Π° эти Π·Π°ΠΌΠ΅Ρ‚ΠΊΠΈ смогут ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ Ρ€Π΅Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΊ использованию API Π‘Π»Π΅Π½Π΄Π΅Ρ€Π° 2.5.


МСши

МСш

Π­Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° создаСт Π΄Π²Π° мСша. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ β€” закрытая ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄Π°, ΠΊΠ°ΠΊ с Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ, Ρ‚Π°ΠΊ ΠΈ с Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ…ΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ гранями. Π’Ρ‚ΠΎΡ€ΠΎΠΉ β€” ΠΏΡ€ΠΎΠ²ΠΎΠ»ΠΎΡ‡Π½Ρ‹ΠΉ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. ИмСна ΠΎΠ±ΠΎΠΈΡ… мСшСй ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ. Π’Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ сдвигаСтся Π²Π±ΠΎΠΊ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ рядом с ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄ΠΎΠΉ. Для этого трСбуСтся Π΅Π³ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ.



#----------------------------------------------------------

# File meshes.py

#----------------------------------------------------------

import bpy


def createMesh(name, origin, verts, edges, faces):

    # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ мСша ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

    me = bpy.data.meshes.new(name+'Mesh')