### Draw Waveform with Custom Equation Source: https://soundquest.jp/article/plugin/uhm-introduction Draws a waveform using a custom mathematical equation. This example defines a linear graph with the equation y = 2x - 1. ```uhm Wave "2*phase-1" //つまりはy=2x-1のグラフを描いている ``` -------------------------------- ### Reverse Table Value Progression in Frame Range Source: https://soundquest.jp/article/plugin/uhm-introduction Demonstrates how to reverse the progression of the 'table' variable within a frame range by setting the 'end' value smaller than the 'start' value. This allows for specific morphing directions. ```uhm Wave "sin( (4_/2^table_)*pi*phase)" _start=127 end=0_ //フレーム127から0に向かってtable値が上昇 Wave "sin( (4/2^table)*pi*phase)" start=128 end=255 ``` -------------------------------- ### Define Frame Ranges for Different Morphing Behaviors Source: https://soundquest.jp/article/plugin/uhm-introduction Specifies different behaviors for distinct frame ranges using 'start' and 'end' attributes. The 'table' variable automatically adjusts its 0-1 range within each specified frame segment. ```uhm Wave "sin( (2*2^table)*pi*phase)" _start=0 end=127" //フレーム0〜127まではこの動き Wave "sin( (4/2^table)*pi*phase)" _start=128 end=255_ //フレーム128〜255まではこの動き ``` -------------------------------- ### Create Morphing Waveform using Frame Variable Source: https://soundquest.jp/article/plugin/uhm-introduction Creates a morphing wavetable by using the 'frame' variable, which represents the current frame number. This example changes the cycle speed of a sine wave as the frame progresses. ```uhm Wave "sin( (2+2*_frame/255_)*pi*phase)" ``` -------------------------------- ### Exporting UHM Waveforms to WAV Files Source: https://soundquest.jp/article/plugin/uhm-introduction Use the 'Export' command followed by a file path to convert UHM waveforms into WAV files. This process occurs automatically when Hive loads a UHM file containing the Export command. Incorrect paths result in no file generation, and existing files are overwritten without warning. ```uhm Export "../My WT/Hello UHM.wav" ``` -------------------------------- ### Utilizing Auxiliary Buffers for Complex Waveforms in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction Employ 'aux1' and 'aux2' buffers via the 'target' attribute to store intermediate waveforms, facilitating more readable and modular construction of complex sounds like FM synthesis. ```uhm Wave "asin(sin(2*phase*pi))/pi" Wave "x * (1-table)" Wave "(2*phase-1)" _target=aux1_ Wave "x * table" _target=aux1_ Wave "x + _aux1_" ``` -------------------------------- ### Create Morphing Waveform using Table Variable (Exponential) Source: https://soundquest.jp/article/plugin/uhm-introduction Creates a morphing wavetable with an exponential change using the 'table' variable. The expression '2^table' results in exponential growth as the table value increases. ```uhm Wave "sin( (2*_2^table_ )*pi*phase)" // こう書くと変化は指数関数的になる ``` -------------------------------- ### Create Pulse Wave using Logical Expression Source: https://soundquest.jp/article/plugin/uhm-introduction Generates a pulse wave by directly using a logical expression. The waveform is set to 1 where the condition (phase <= 1/2) is true, and 0 otherwise. Normalization is then applied. ```uhm Wave "(phase<=1/2)" //条件に当てはまる範囲は1、そうでなければ0の座標をとる Spectrum lowest=0 highest=0 "0" //y座標の範囲を-1〜1に整形 ``` -------------------------------- ### Express Logical AND in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction Simulates a logical AND operation using multiplication of boolean expressions. The result is 1 only if both conditions are true. ```uhm Wave "(phase>=1/2)*(phase<3/4)" //x座標が1/2以上かつ3/4未満なら真(1),他は偽(0) ``` -------------------------------- ### Create Square Wave using Select Statement Source: https://soundquest.jp/article/plugin/uhm-introduction Generates a square wave by using the 'select' statement to branch the waveform based on a condition. The waveform is set to 1 for the left half (phase <= 1/2) and -1 for the right half. ```uhm Wave "select( (phase<=1/2) , 1 , -1)" //グラフの左半分か右半分かを分岐してSqr波を描く ``` -------------------------------- ### Multi-line Waveform Description in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction Use the 'x' variable to carry over calculations from previous lines, enabling multi-line waveform definitions for better readability and complex constructions. ```uhm Wave "asin(sin(2*phase*pi))/pi" Wave "_x_ * (1-table)" Wave "_x_ + (2*phase-1)*table" ``` ```uhm Wave "( asin(sin(2*phase*pi))/pi )*(1-table) + ( 2*phase-1 )*table" ``` -------------------------------- ### Create Morphing Waveform using Table Variable (Linear) Source: https://soundquest.jp/article/plugin/uhm-introduction Creates a morphing wavetable using the 'table' variable, which ranges from 0 to 1 within the specified frame range. This simplifies morphing compared to the 'frame' variable by removing the need for manual scaling. ```uhm Wave "sin( (2+2*_table_)*pi*phase)" // ÷255を書く手間要らず ``` -------------------------------- ### Define Number of Frames and Basic Waveform Source: https://soundquest.jp/article/plugin/uhm-introduction Specifies the total number of frames for a wavetable and draws a basic waveform. The 'Wave' command defines the y-axis values based on the 'phase' (x-axis). ```uhm //スラッシュ2個でその行のそれ以降はコメントになります NumFrames = 256 //フレーム数の指定 Wave "phase" //phaseはいわゆるxのことなので、これはy=xのグラフを描いている ``` -------------------------------- ### Express Logical XOR in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction Simulates a logical XOR (exclusive OR) operation by summing boolean expressions and checking if the sum is exactly equal to 1. This results in 1 only if exactly one of the conditions is true. ```uhm Wave "( ((phase<=1/4)+(phase>=3/4)) ==1)" //排他的論理和(XOR)の場合こう ``` -------------------------------- ### Express Logical OR in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction Simulates a logical OR operation by summing boolean expressions and checking if the sum is greater than or equal to 1. This ensures the result is 1 if at least one condition is true. ```uhm Wave "( ((phase<=1/4)+(phase>=3/4)) >=1)" //x座標が1/4以下または3/4以上なら真(1),他は偽(0) ``` -------------------------------- ### Specifying Operations with Blend Attribute in UHM Source: https://soundquest.jp/article/plugin/uhm-introduction The 'blend' attribute allows specifying how a new formula should interact with the current waveform, such as multiplication ('multiply') or addition ('add'), offering alternatives to explicit operators like '*'. ```uhm Wave "asin(sin(2*phase*pi))/pi" Wave "(1-table)" _blend=multiply_ Wave "(2*phase-1)*table" _blend=add_ ``` -------------------------------- ### Normalize Waveform to -1 to 1 Range Source: https://soundquest.jp/article/plugin/uhm-introduction Applies DC Offset Removal to normalize the waveform, ensuring the positive and negative parts of the graph have equal total amounts. This adjusts the graph vertically to fit within the -1 to 1 range. ```uhm Spectrum lowest=0 highest=0 "0" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.