예제 #1
0
void DoGFilter::end() {
    AbstractFilter::end();
    _imageFbo.end();

    
    _edgeTangentFbo.begin();
    _edgeTangentFilters->begin();
    _imageFbo.draw(0,0);
    _edgeTangentFilters->end();
    _edgeTangentFbo.end();
    
    
    _directionalDoGFilter->setSecondTexture(_edgeTangentFbo.getTexture());
    _directionalFbo.begin();
    _directionalDoGFilter->begin();
    _imageFbo.draw(0, 0);
    _directionalDoGFilter->end();
    _directionalFbo.end();
    
    _flowDoGFilter->setSecondTexture(_edgeTangentFbo.getTexture());
    _flowDoGFilter->begin();
    _updateParameters(&_shader);
    _directionalFbo.draw(0, 0);
    _flowDoGFilter->end();
    //_directionalFbo.draw(0, 0);
    //_edgeTangentFbo.draw(0, 0);
    
}
예제 #2
0
 SphericalPointProjector::SphericalPointProjector() : PointProjector() {
   _imageRows = 480;
   _imageCols = 640;
   _horizontalFov = M_PI;
   _verticalFov = M_PI / 4.0f;
   _horizontalCenter = _imageCols / 2.0f;
   _verticalCenter = _imageRows / 2.0f;
   _updateParameters();
 }
예제 #3
0
void AbstractFilter::begin() {
    #ifdef _APPGC_OFXSIMPLEGUITOO
    if(_b_activeFilter){
    #endif
        _shader.begin();
    #ifdef _APPGC_OFXSIMPLEGUITOO
    }
    #endif
        _updateParameters(&_shader);

}
예제 #4
0
void AbstractFilter::begin() {
    _shader.begin();
    _updateParameters(&_shader);
}
예제 #5
0
 void  SphericalPointProjector::scale(float scalingFactor) {
   PointProjector::scale(scalingFactor);
   _updateParameters();
 }