Home Artists Posts Import Register

Downloads

Content

Update Notes

MIDI is currently disabled on Linux because unfortunately Godot's MIDI implementation is still broken. It looks like there is not currently much interest in fixing this for Godot 3.x (and I don't want to do it myself.)  For now I'm just leaving it disabled on Linux but I think there are probably more reliable MIDI libraries out there which I can use instead, so at some point during the development of the upcoming instrument system I will likely switch from using Godot's MIDI interface to something else.

Feature: MIDI settings panel on the sidebar. It just lists your connected MIDI input devices and the current MIDI lock target.

Feature: "MIDI lock". This is extremely not finished. There is a button which now appears in various places with an icon that looks like a keyboard. If you click the button it enables MIDI lock for that item. MIDI Lock just means "route all MIDI input to this thing". At the moment it's only MIDI note-on events and velocity is currently ignored. 

If you enable MIDI lock for a thing then it will remove the previous target if there was one. MIDI Lock buttons can be found in the following places:

  • At the top-right of the sample browser. Enabling it here will route MIDI to the focused item in the sample browser. An item has focus when the sample browser is visible and those little white markers appear in the corners. You can just click an item in the browser to give it focus. Clicking anywhere on the workspace area will remove focus from any sidebar controls, so enabling MIDI lock here is mainly intended for previewing sample items.
  • At the top-right of the block browser. This works the same way as it does for the sample browser.
  • At the top-right of an individual sample or block browser item. If you enable MIDI lock for an item, you can even hide the sidebar and the MIDI lock will persist.

You can play back samples at different pitches but when triggering a block, the MIDI note is also currently ignored, so it will play back at the same pitch every time. It's because at the moment this is all just implemented using the old block previewing code that I had before, which is not going to be good enough going forward and is going to be replaced as I get further with the instrument system.

MIDI note-off events are currently ignored. If you trigger a really long-running item then you can cancel it by pressing ESC. We will have more control over this in the future when the instrument/MIDI system is further along.

Update: When mouse-hovering over a workspace item, its name or ID string will now be displayed on the bottom bar, to the left of the Input button.

Update: The visual indication for when a UI element has mouse/keyboard focus has been updated from the old blue border to four white indicators in the corners of the element. Clicking once anywhere in the workspace area should always release mouse and keyboard focus.

Update: The file browser and block browser and sample browser have all been overhauled and unified:

  • The functionality of the old "Blocks" and "Samples" sidebar tabs have been rolled into the browser area at the bottom of the sidebar.
  • Adding samples or blocks from the browser to the workspace now always involves clicking and dragging the items from the browser over to the workspace (not just clicking once like before).
  • Multiple blocks or samples can now be selected at once.
  • You can drag one or more folders from the file browser into the workspace area. Blockhead doesn't know beforehand how deep the folder hierarchies are or how many audio files it will find so to avoid freezing the UI an intermediate panel will be opened while Blockhead recursively scans the dragged folders for audio files. You can then click "Add selected files to project" to add all of the files Blockhead found, or pick just the ones you want.
  • When a block is mouse-hovered in the workspace the visual indicators on the corresponding items in the browser will now use the color of the hovered block instance

Update: The concept of "saving" a block has been removed. Blocks that are not assigned to a folder will now appear in the block browser under the "No Folder" area at the bottom of the list. Blocks here will be automatically removed when the last remaining reference to it on the workspace is deleted by the user. To prevent a block from being automatically removed from the browser when it has no remaining instances, simply assign it to a folder.

Note that clearing a block's folder designation is like saying "I don't care about this anymore, you can get rid of it." If there is still at least one active instance on the workspace then it won't be removed, it will just go back to the "No Folder" area. If there were already no remaining instances when the folder designation was cleared, there is a grace period in that the item won't be removed from the browser immediately, but it will be removed eventually (probably the next time you delete something on the workspace.)

Update: The background task list widget that was currently in the bottom bar has been removed and replaced by the new task panel on the "Project" page of the sidebar. I think the old widget was a bit silly and weird and the replacement is much simpler. Background tasks can sometimes fail and generate errors, but I am no longer actually displaying these errors anywhere, with the exception of sample loading errors which will still appear on the associated sample item in the browser.

Update: The way that background tasks are managed internally should be a little more efficient than before. Background tasks are now added to one of three queues - baking, exporting or sample loading. The underlying threading situation is much better now. "Sample loading" includes mipmap generation and frame analysis for the fudge plugin.

Bugfix: Crash if you try to place a new manipulator from the parameter right-click menu

Bugfix: Crash when shrinking a block to the smallest possible size, if there is another smaller block in the selection

Bugfix: Probable crash if slice shortcut is pressed while dragging

Bugfix: No default key assigned for snap toggle

Bugfix: Block's end is not snapped-to if it was truncated when the drag operation began

Bugfix: State transition length slider doesn't do anything

Bugfix: File browser preview bar does not visually update correctly after the user seeks to the middle of a file at least once


Links

Known Issues: https://trello.com/b/MT1A3Zob/blockhead-issues
Discord: Blockhead (discord.com)

Comments

No comments found for this post.