sine wave works now
This commit is contained in:
@@ -15,15 +15,91 @@
|
||||
//==============================================================================
|
||||
/*
|
||||
*/
|
||||
class FilterView : public juce::Component
|
||||
/*
|
||||
* ==============================================================================
|
||||
*
|
||||
* CrushView.h
|
||||
* Created: 16 Jan 2026 5:05:38pm
|
||||
* Author: esca
|
||||
*
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "juce_gui_basics/juce_gui_basics.h"
|
||||
#include "juce_opengl/juce_opengl.h"
|
||||
#include <JuceHeader.h>
|
||||
#include "OpenGLUtils.h"
|
||||
#include <string>
|
||||
//==============================================================================
|
||||
/*
|
||||
*/
|
||||
#define CRUSHVIEW_SAMPLECOUNT 200
|
||||
|
||||
class FilterView : public juce::Component, public juce::OpenGLRenderer
|
||||
{
|
||||
public:
|
||||
FilterView();
|
||||
~FilterView() override;
|
||||
FilterView();
|
||||
~FilterView() override;
|
||||
|
||||
void paint (juce::Graphics&) override;
|
||||
void resized() override;
|
||||
void renderFilter();
|
||||
|
||||
void newOpenGLContextCreated() override;
|
||||
void renderOpenGL() override;
|
||||
void openGLContextClosing() override;
|
||||
|
||||
void paint (juce::Graphics&) override;
|
||||
void resized() override;
|
||||
|
||||
private:
|
||||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (FilterView)
|
||||
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (FilterView)
|
||||
|
||||
bool isLowPass;
|
||||
float cutoff;
|
||||
float mix;
|
||||
|
||||
juce::OpenGLContext ctx;
|
||||
juce::OpenGLPixelFormat antialiasing;
|
||||
|
||||
std::vector<Vertex> filterVertices;
|
||||
std::vector<unsigned int> filterIndices;
|
||||
|
||||
std::vector<Vertex> filterBackgroundVertices;
|
||||
std::vector<unsigned int> filterBackgroundIndices;
|
||||
|
||||
std::vector<Vertex> fftVertices;
|
||||
std::vector<unsigned int> fftIndices;
|
||||
|
||||
std::vector<VertexTexture> backgroundVertices;
|
||||
std::vector<unsigned int> backgroundIndices;
|
||||
|
||||
juce::ComponentListener listener;
|
||||
|
||||
GLuint vboFilter;
|
||||
GLuint iboFilter;
|
||||
|
||||
GLuint vbofft;
|
||||
GLuint ibofft;
|
||||
|
||||
GLuint vboBackground;
|
||||
GLuint iboBackground;
|
||||
|
||||
std::string vertexShader;
|
||||
std::string fragmentShader;
|
||||
std::string vertexShaderFill;
|
||||
std::string fragmentShaderFill;
|
||||
|
||||
std::string vertexShaderBackground;
|
||||
std::string fragmentShaderBackground;
|
||||
|
||||
std::unique_ptr<juce::OpenGLShaderProgram> shaderProgram;
|
||||
std::unique_ptr<juce::OpenGLShaderProgram> shaderProgermFilter;
|
||||
std::unique_ptr<juce::OpenGLShaderProgram> shaderProgramBackground;
|
||||
|
||||
juce::Image background;
|
||||
juce::OpenGLTexture bgTexture;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user