{"id":435,"date":"2016-06-14T20:25:25","date_gmt":"2016-06-14T11:25:25","guid":{"rendered":"http:\/\/blog.criware.com\/?p=435"},"modified":"2016-06-14T20:25:25","modified_gmt":"2016-06-14T11:25:25","slug":"interactive-music-with-adx2","status":"publish","type":"post","link":"https:\/\/blog.criware.com\/index.php\/2016\/06\/14\/interactive-music-with-adx2\/","title":{"rendered":"Interactive Music with ADX2"},"content":{"rendered":"<p>There are many powerful ways to implement interactive music with AtomCraft. In this tutorial, we are going to introduce the Block playback system. Blocks allow you to organize your Cues in sections that can be played in a different order depending on the game context.<\/p>\n<h6><strong><span style=\"text-decoration: underline; color: #000000;\">Step 1: Change the display units of the timeline to bars and beats.<\/span><\/strong><\/h6>\n<p>\u2022 Open your Cue and right-click on the ruler, then select [Timebase Settings]\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-437 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_02.png\" alt=\"ADX2_IM_02\" width=\"643\" height=\"195\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_02.png 643w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_02-300x91.png 300w\" sizes=\"auto, (max-width: 643px) 100vw, 643px\" \/><\/p>\n<p>\u2022 In the [Timebase Settings] window choose Bars\/Beat<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-438 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_03.png\" alt=\"ADX2_IM_03\" width=\"288\" height=\"206\" \/><\/p>\n<h6><span style=\"color: #000000;\"><strong><span style=\"text-decoration: underline;\">Step 2: Create Blocks in a Cue.<\/span><\/strong><\/span><\/h6>\n<p>\u2022 Right-click on the timeline and in the context menu, select [New Object].<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-439 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_04.png\" alt=\"ADX2_IM_04\" width=\"779\" height=\"321\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_04.png 779w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_04-300x124.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_04-768x316.png 768w\" sizes=\"auto, (max-width: 779px) 100vw, 779px\" \/><\/p>\n<p>\u2022 Chose [Create Block].<br \/>\nA new Block appears at the top of the timeline.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-440 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_05.png\" alt=\"ADX2_IM_05\" width=\"986\" height=\"419\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_05.png 986w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_05-300x127.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_05-768x326.png 768w\" sizes=\"auto, (max-width: 986px) 100vw, 986px\" \/><\/p>\n<p>\u2022 Create more Blocks for your music<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-441 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_06.png\" alt=\"ADX2_IM_06\" width=\"1162\" height=\"410\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_06.png 1162w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_06-300x106.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_06-768x271.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_06-1024x361.png 1024w\" sizes=\"auto, (max-width: 1162px) 100vw, 1162px\" \/><\/p>\n<h6><span style=\"color: #000000;\"><strong><span style=\"text-decoration: underline;\">Step 3: If you like, you can change the color of your Blocks.<\/span><\/strong><\/span><\/h6>\n<p>\u2022 Right-click on a Block and select [color settings].<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-442 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_07.png\" alt=\"ADX2_IM_07\" width=\"642\" height=\"615\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_07.png 642w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_07-300x287.png 300w\" sizes=\"auto, (max-width: 642px) 100vw, 642px\" \/><\/p>\n<h6><span style=\"color: #000000;\"><strong><span style=\"text-decoration: underline;\">Step 4: Add your music!<\/span><\/strong><\/span><\/h6>\n<p>\u2022 Create a Track per instrument or per type of music loop.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-443 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_08.png\" alt=\"ADX2_IM_08\" width=\"1487\" height=\"792\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_08.png 1487w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_08-300x160.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_08-768x409.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_08-1024x545.png 1024w\" sizes=\"auto, (max-width: 1487px) 100vw, 1487px\" \/><\/p>\n<p>\u2022 Simply drop the loops on the right tracks in the appropriate Blocks.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-444 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_09.png\" alt=\"ADX2_IM_09\" width=\"1485\" height=\"793\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_09.png 1485w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_09-300x160.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_09-768x410.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_09-1024x547.png 1024w\" sizes=\"auto, (max-width: 1485px) 100vw, 1485px\" \/><\/p>\n<h6><span style=\"text-decoration: underline; color: #000000;\"><strong>Step 5: Define the Block&#8217;s behavior.<\/strong><\/span><\/h6>\n<p>\u2022 Double-click on a Block to open the properties pane.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-445 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_10.png\" alt=\"ADX2_IM_10\" width=\"1296\" height=\"342\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_10.png 1296w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_10-300x79.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_10-768x203.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_10-1024x270.png 1024w\" sizes=\"auto, (max-width: 1296px) 100vw, 1296px\" \/><\/p>\n<p>Here we can rename the Block or change its duration.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-446 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_11.png\" alt=\"ADX2_IM_11\" width=\"489\" height=\"190\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_11.png 489w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_11-300x117.png 300w\" sizes=\"auto, (max-width: 489px) 100vw, 489px\" \/><\/p>\n<p>The Block destination corresponds to where the playback jumps when the Block has finished playing or has reached a transition point.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-447 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_12.png\" alt=\"ADX2_IM_12\" width=\"550\" height=\"187\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_12.png 550w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_12-300x102.png 300w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/p>\n<p>There are 3 types of transitions available:<br \/>\n\u2022 The first one is [None]. It will stop the playback at the end of the block.<br \/>\n\u2022\u00a0The 2nd one is [Next Block]. The Block will transition to the next block.<br \/>\n\u2022\u00a0The 3rd one is [Block Destination]. The Block will transition to a block from a list of our choice.<\/p>\n<p>If you select 3rd option, the [Block Destination Setting] window will appear.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-448 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_13.png\" alt=\"ADX2_IM_13\" width=\"462\" height=\"433\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_13.png 462w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_13-300x281.png 300w\" sizes=\"auto, (max-width: 462px) 100vw, 462px\" \/><\/p>\n<p>Here we can add or remove destination Blocks and choose among 4 types of transitions.<\/p>\n<p>For instance, if we choose [Sequential] and select a new Block as destination, the current Block will transition to the selected Block at the end of the playback.<\/p>\n<p>If we chose [Random] and insert all the available Blocks, it will transition to a random Block at the end of the playback.<\/p>\n<p>Let&#8217;s go back to the Block properties pane.<br \/>\nAs seen below,\u00a0we can define the number of times the Block should loop before transitioning. Enter either -1 for an infinite loop or the number of loops to perform.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-449 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_14.png\" alt=\"ADX2_IM_14\" width=\"549\" height=\"183\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_14.png 549w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_14-300x100.png 300w\" sizes=\"auto, (max-width: 549px) 100vw, 549px\" \/><\/p>\n<p>The [Block number of divisions] parameter divides the Block in intervals at which transitions can occur.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-450 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_15.png\" alt=\"ADX2_IM_15\" width=\"552\" height=\"183\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_15.png 552w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_15-300x99.png 300w\" sizes=\"auto, (max-width: 552px) 100vw, 552px\" \/><\/p>\n<p>For instance, if we have a 4-bar music loop, set the division number to 4 and select [Division] for the [Block transition timing], the Block will wait until the 1st beat of the next bar before transitioning to the destination Block.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-451 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_16.png\" alt=\"ADX2_IM_16\" width=\"1306\" height=\"190\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_16.png 1306w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_16-300x44.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_16-768x112.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_16-1024x149.png 1024w\" sizes=\"auto, (max-width: 1306px) 100vw, 1306px\" \/><\/p>\n<h6><span style=\"text-decoration: underline; color: #000000;\"><strong>Step 6: Add transitioning Tracks.<\/strong><\/span><\/h6>\n<p>It is possible to play a specific Track when transitioning (like an additional jingle).<\/p>\n<p>\u2022 To do that, create a Track and add a transition segment at the end of a Block.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-452 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_17.png\" alt=\"ADX2_IM_17\" width=\"1234\" height=\"559\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_17.png 1234w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_17-300x136.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_17-768x348.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_17-1024x464.png 1024w\" sizes=\"auto, (max-width: 1234px) 100vw, 1234px\" \/><\/p>\n<p>\u2022 Right-click on the Track and in the context menu, select the [Block Transition Playback Type] and choose [Playback Transition].<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-453 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_18.png\" alt=\"ADX2_IM_18\" width=\"832\" height=\"151\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_18.png 832w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_18-300x54.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_18-768x139.png 768w\" sizes=\"auto, (max-width: 832px) 100vw, 832px\" \/><\/p>\n<p>The Track now appears differently to indicate that it will only be playing during transitions.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-454 size-full\" src=\"http:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_19.png\" alt=\"ADX2_IM_19\" width=\"1314\" height=\"323\" srcset=\"https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_19.png 1314w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_19-300x74.png 300w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_19-768x189.png 768w, https:\/\/blog.criware.com\/wp-content\/uploads\/2016\/06\/ADX2_IM_19-1024x252.png 1024w\" sizes=\"auto, (max-width: 1314px) 100vw, 1314px\" \/><\/p>\n<p>This concludes our tutorial on the implementation of adaptive music using Blocks.<\/p>\n<p>Note that the Block playback system can also be advantageously used to design complex sound effects relying on a sequence of events, such as\u00a0mechanisms and so on&#8230;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are many powerful ways to implement interactive music with AtomCraft. In this tutorial, we are going to introduce the<\/p>\n","protected":false},"author":2,"featured_media":498,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"colormag_page_container_layout":"default_layout","colormag_page_sidebar_layout":"default_layout","footnotes":""},"categories":[5,7],"tags":[],"class_list":["post-435","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adx","category-tutorials"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/435","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/comments?post=435"}],"version-history":[{"count":13,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/435\/revisions"}],"predecessor-version":[{"id":508,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/posts\/435\/revisions\/508"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media\/498"}],"wp:attachment":[{"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/media?parent=435"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/categories?post=435"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.criware.com\/index.php\/wp-json\/wp\/v2\/tags?post=435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}