private void CreateButterflyTexture() { butterfly = new Texture2D(resolution << 1, numButterfliesPow2, highPrecision ? TextureFormat.RGBAFloat : TextureFormat.RGBAHalf, false, true); butterfly.hideFlags = HideFlags.DontSave; butterfly.filterMode = FilterMode.Point; butterfly.wrapMode = TextureWrapMode.Clamp; int[][] indices; Vector2[][] weights; ButterflyFFTUtility.ComputeButterfly(resolution, numButterflies, out indices, out weights); FillButterflyTexture(butterfly, indices, weights); butterfly.Apply(); }
private void CreateButterflyTexture() { this._Butterfly = new Texture2D(this._Resolution << 1, this._NumButterfliesPow2, (!this._HighPrecision) ? TextureFormat.RGBAHalf : TextureFormat.RGBAFloat, false, true) { hideFlags = HideFlags.DontSave, filterMode = FilterMode.Point, wrapMode = TextureWrapMode.Clamp }; int[][] indices; Vector2[][] weights; ButterflyFFTUtility.ComputeButterfly(this._Resolution, this._NumButterflies, out indices, out weights); this.FillButterflyTexture(this._Butterfly, indices, weights); this._Butterfly.Apply(); }
public FFTBuffers(int resolution) { this._Resolution = resolution; this.Timed = new float[resolution * resolution * 12]; this.PingPongA = new float[resolution * 12]; this.PingPongB = new float[resolution * 12]; this.NumButterflies = (int)(Mathf.Log((float)resolution) / Mathf.Log(2f)); ButterflyFFTUtility.ComputeButterfly(resolution, this.NumButterflies, out this.Indices, out this.Weights); for (int i = 0; i < this.Indices.Length; i++) { int[] array = this.Indices[i]; for (int j = 0; j < array.Length; j++) { array[j] *= 12; } } }
public FFTBuffers(int resolution) { this.resolution = resolution; timed = new float[resolution * resolution * 12]; pingPongA = new float[resolution * 12]; pingPongB = new float[resolution * 12]; numButterflies = (int)(Mathf.Log((float)resolution) / Mathf.Log(2.0f)); ButterflyFFTUtility.ComputeButterfly(resolution, numButterflies, out indices, out weights); for (int ii = 0; ii < indices.Length; ++ii) { var localIndices = indices[ii]; for (int i = 0; i < localIndices.Length; ++i) { localIndices[i] *= 12; } } }