// Use this for initialization void Start() { int num = analyzer.numOfBands; bars = new EqualizerBar[num]; columnScale = maxXCoordinate / num; barXScale = columnScale * 0.92f; LineRenderer lr = GetComponent <LineRenderer>(); lr.positionCount = num; lr.colorGradient = barColorsGradient; //lr.material = new Material (Shader.Find("Particles/Additive")); for (int i = 0; i < num; i++) { GameObject go = GameObject.Instantiate(equalizerBarPrefab) as GameObject; go.transform.SetParent(this.transform); go.transform.localPosition = Vector3.right * (i - num / 2) * columnScale; EqualizerBar bar = go.GetComponent <EqualizerBar>(); bars[i] = bar; //bar.visualizer = visualizer; bar.barPrefab = barPrefab; //bar.visualizerBand = i; bar.barYScale = barYScale; bar.barXScale = barXScale; bar.baseColor = barColorsGradient.Evaluate(Mathf.InverseLerp(0, num, i)); float hertz = analyzer.GetBandMidFreq(i); if (hertz >= 10000) { hertz = hertz / 1000; bar.text.text = hertz.ToString("F0") + "k"; } else if (hertz >= 1000) { hertz = hertz / 1000; bar.text.text = hertz.ToString("F1") + "k"; } else { bar.text.text = hertz.ToString("F0"); } Vector3 knobPosition = new Vector3((i - num / 2) * columnScale, barYScale * 7.5f, -7f); lr.SetPosition(i, knobPosition); GameObject knob = GameObject.Instantiate(knobPrefab) as GameObject; knob.transform.SetParent(this.transform); knobPosition.z = -0.8f; knob.transform.localPosition = knobPosition; knob.GetComponent <EqKnob>().id = i; } AudioAnalyzer.spectrumBarsUpdated += UpdateVisuals; }
// Use this for initialization void Start() { GameObject go = GameObject.Instantiate(equalizerBarPrefab) as GameObject; go.transform.SetParent(this.transform); go.transform.localPosition = Vector3.zero; go.transform.localScale = Vector3.one; bar = go.GetComponent <EqualizerBar>(); bar.barPrefab = barPrefab; bar.barYScale = barYScale; bar.barXScale = barXScale; bar.baseColor = Color.green * 0.5f; bar.text.text = "-24db"; }