مقدمة في البرمجة النصية في KONTAKT، الجزء 4

In this 5 Part MPVHub Series, Toby Pitman explores the wonderful world of scripting in Native Instruments' Kontakt sampler. Part 4 covers interface basics. Read the next part on The Hub tomorrow!  

حتى آخر مرة ألقينا نظرة على المتغيرات. في هذا الجزء كانوا في طريقهم لإلقاء نظرة على أساسيات واجهة بعض الاشياء.

القدرة على تصميم واجهات المخصصة الخاصة بك في مجموعات KONTAKT حقا بصرف النظر عن أي عينات البرامج الأخرى. ويمكن تصميم كل أداة تقوم بها لتعطيك أو وصول المستخدم سهلة المعالم الهامة أجل التغيير والتبديل دون الحاجة إلى الخوض في عمل (وشاقة في بعض الأحيان) الداخلية للKONTAKT.

كما يسمح لك (أو المطور) فرصة للقضاء بعض الملامح التصميم الفني إلى الصك الخاص بك عن طريق إضافة عمل فني حسب الطلب وعناصر واجهة المستخدم. كل مكتبة تشتري (والذي بني في مكتبة KONTAKT) لديه نظرة فريدة من نوعها والسمات المحددة. هذا هو كل شيء وصولا الى البرمجة.

إذا كيف يمكنك أن تفعل ذلك؟ حسنا، تظهر إساءة لك!

إنشاء طريقة عرض الأداء

أول شيء عليك القيام به لخلق أي نوع من التفاعل هو لإنشاء طريقة عرض الأداء. ويتم ذلك باستخدام خط بسيط جدا من التعليمات البرمجية الخاصة بك على الحرف الأول بين ... ينتهي في رد الاتصال.

make_perfview

تحتاج أيضا إلى تحديد الارتفاع. ويمكن قياس الرأي الأداء بطريقتين، في وضع الشبكة أو بكسل.

باستخدام شبكات

في وضع الشبكة وينقسم إلى ستة مشاهدة الأداء الأعمدة. يمكن أن يكون ما يصل كل عمود إلى 16 الصفوف. شبكة كل كتلة لديها تنسيق الشبكة. أعمدة الصفوف 1-6 و 1-16. أدناه تستطيع أن ترى هذه الكتل الشبكة والإحداثيات الخاصة بكل منها.

Grid Mode


لضبط ارتفاع في كميات الشبكة تحتاج إلى إضافة الأمر التالي.

set_ui_height ()

بين قوسين فسوف إضافة عدد من الصفوف العمودية التي تريدها. يتم تعيين هذا في مضاعفات صفين، أو رقما من 1-8. وذلك لأن المقبض الافتراضي هو صفين عالية.


لذلك إذا كنا نريد لدينا الأداء عرض ثمانية صفوف عالية نضيف 4 في الأقواس.

Code Example 1


عندما ضرب تطبيق يوول إشعار سوف محرر البرامج النصية التوسع. وذلك لأن جميع عناصر التحكم التي هي أيضا خلق للعرض في محرر نصي حتى تستطيع أن ترى ما تفعلونه.

Expanded


إذا كنت الخروج من وضع أداة تحرير فسوف نرى أيضا أن واجهة KONTAKT قد ذهب من الحجم الافتراضي لها ...

Default size


لنسخة موسعة استنادا إلى ارتفاع الشبكة الذي قمت بتعيينه.

Expanded


مرة واحدة كنت قد خلقت بعض الضوابط يوول وضع هذه الشبكة باستخدام إحداثيات. المزيد عن هذا في وقت لاحق. لايم الأمثلة التالية سوف تستخدم وضع الشبكة.

باستخدام بكسل

قائلا أنه يمكنك أيضا تعيين طولك بالبكسل (KONTAKT 4 وما فوق). يمكنك القيام بذلك باستخدام ..

set_ui_height_px ()

هذا مفيد إذا كنت تعمل لخلفية الرسم وتحتاج إلى وضع ضوابط على مستوى بكسل. ووضع ذلك على ارتفاع من 250 داخل الأقواس جعل منطقة العمل الخاصة بك 250px عالية.

set_ui_height_px (250)


Height of 250px


عندما تتحرك الضوابط، سيتم استخدام القيم بكسل ثم وضعها. في KONTAKT 5 قد تم توسيع عرض الأداء من 350px في الإصدارات السابقة ل540px.

حتى الآن لدينا مساحة للعمل مع يتيح جعل بعض الاشياء!

أي شيء لاعلان؟

من أجل إنشاء عنصر تحكم UI أو واجهة تحكم العضو نحتاج أولا أن تعلن أنها بين موقعنا في رد الحرف الأول. هذا هو نفس عندما أعلنا المتغيرات وقتنا الماضي. ويتمثل جزء كبير من السبب في أننا نفعل ذلك هو أن يتم تعيين كل عنصر تحكم نخلق اسم متغير حتى نتمكن من مرجع له في البرامج النصية لدينا.

في KONTAKT هناك عددا من الضوابط UI يمكنك إنشاء. لكل منها علامة دعوتها الخاصة، بداية مع كل ui_ البادئة. وهذه هي:

  • ui_knob - A default rotary dial.
  • ui_slider - A default slider / horizontal fader.
  • ui_label - Simple text label
  • ui_button - A simple button
  • ui_menu - A drop down menu
  • ui_switch - Simple on/off switch
  • ui_table - Useful interface for sequencers and arpeggiators
  • ui_file_selector - For selecting and loading files
  • ui_level_meter - A simple audio level meter (Kontakt 5)
  • ui_text_edit - Enter user text
  • ui_value_edit - Enter a user value
  • ui_waveform - Add a waveform display of a zone or slices (Kontakt 5)


لإنشاء عنصر تحكم علينا استخدام التعليمات البرمجية التالية. لمقبض الافتراضي سيكون هذا ...

تعلن ui_knob $ ( ، ، )


فسوف تجد كل عنصر تحكم إنشاء مجموعة مختلفة من المعلمات. على سبيل المثال ui_label معلمتين عن العرض والارتفاع التي تم تعيينها في كميات الشبكة.

تعلن ui_label $ ( ، )


تحديد معلمات

أول شيء عليك القيام به هو إعطاء UI التحكم الخاصة بك متغير اسم فريد. دعونا نقول وخلق عقدة الافتراضي. يمكن أن أسميها myKnob.

تعلن ui_knob $ myKnob ( ، ، )


في أي وقت أريد استخدام هذا المقبض لعمل شيء أشرت $ myKnob.


ولست بحاجة الآن لتعيين المعلمات لتصل. مع مقبض الافتراضي لدي ثلاثة.


دقيقة = قيمة الحد الأدنى

الحد الأقصى = القيمة القصوى

عرض بين نسبة = يقسم مجموعة لتبسيط أرقام العرض


وباستخدام التعليمات البرمجية التالية إنشاء المقبض الافتراضي الذي يذهب 1-100 في 100 الخطوات (100/1).

Code Example 2


وسوف يكون هذا الآن أيضا موجودة في عرض الأداء.

Knob


يتيح إضافة تسمية. سوء تسميته myLabel.


تعلن ui_label $ myLabel ( ، )


سوء أيضا تعيين العرض والارتفاع في القياسات الشبكة.

Code Example 3


الذي يعطي لي هذا.

New Label


فسوف تجد كل المعلومات حول المعلمات المختلفة في الدليل المرجعي KSP في الفصل واجهة تحكم العضو.


الانتقال التحكم UI


هناك مجموعة أخرى من عناصر واجهة المستخدم تسمى أوامر الموجودة هناك لمساعدتك على التعامل مع الضوابط UI الخاص بك. ويطلق واحدة من هذه move_control ().


هذه ثلاثة معلمات.


move_control ( ، ، )

  • variable = The variable name of the UI control you want to move.
  • x-position = The horizontal position in grid coordinates.
  • y-position = The vertical position in grid coordinates.


دعونا نقول أريد الانتقال myKnob أدناه myLabel. لا أستطيع القيام بذلك عن طريق استخدام التعليمات البرمجية التالية.

Code Example 4


وهذا نقله إلى الصف 1، العمود 2. يمكنك أيضا استخدام move_control_px () واستبدال القيم الشبكة مع القيم بكسل.

Moved knob


إعادة تسمية عناصر التحكم الخاصة بك

حاليا تتم تسمية كل من لدينا المقبض وتسمية افتراضيا مع اسمهم متغير. هذا هو السهل تغيير باستخدام واجهة المستخدم أمر آخر يسمى set_text (). هذه معلمتين.


set_text ( ، )

  • variable = The variable name of the UI control you want to change the text for.
  • text = The replacement text in quotations.


وأضاف إيف set_text () لكلا العنصرين إرادتي مثل هذا ..

Code Example 5


هيريس النتيجة.

Relabled button


نأمل يمكنك ان ترى هذا يحدث فيها. نعلن وإعداد المعلمات سيطرتنا ومن ثم التلاعب مزيد من الضوابط المحددة مسبقا مع أوامر مفيدة (انظر الفصل أوامر واجهة المستخدم في الدليل المرجعي KSP).

في المرة القادمة إضافة بعض الوظائف بشكل جيد العالم الحقيقي لبعض الضوابط. وهو المكان الذي يبدأ المرح!

يمكنك تحميل أمثلة التعليمات البرمجية في هذه

روابط سريعة

مقدمة في البرمجة النصية في KONTAKT، الجزء 1

مقدمة في البرمجة النصية في KONTAKT، الجزء 2

مقدمة في البرمجة النصية في KONTAKT، الجزء 3

مقدمة في البرمجة النصية في KONTAKT، الجزء 4

مقدمة في البرمجة النصية في KONTAKT، الجزء 5


For the past 20 years Toby has worked as a professional guitarist, programmer and producer. Clients include Sir Paul McCartney, George Michael, Shirley Bassey, Yusuf Islam, Giles Martin as well as the London 2012 Olympic Ceremonies. He has also worked extensively in TV, Advertising and Film. As well as composing himself he has also ... Read More

Discussion

Want to join the discussion?

Create an account or login to get started!