X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fvframe3d.C;h=aba006b8a11c43270ec1ab5ef53f16ae0b343105;hb=3b781cd7b4b9c477e637adb876a229d2781ee33b;hp=65eb1f3e92ff6a5def475444ac0b9eec810b859a;hpb=02a79c110b1bce1d500849c82b2098863cd60424;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/guicast/vframe3d.C b/cinelerra-5.1/guicast/vframe3d.C index 65eb1f3e..aba006b8 100644 --- a/cinelerra-5.1/guicast/vframe3d.C +++ b/cinelerra-5.1/guicast/vframe3d.C @@ -99,10 +99,6 @@ void VFrame::to_texture() return; case VFrame::SCREEN: - if((get_w() % 4) || (get_h() % 4)) { - printf("VFrame::to_texture w=%d h=%d\n", get_w(), get_h()); - return; - } if(pbuffer) { enable_opengl(); screen_to_texture(); @@ -151,30 +147,22 @@ void VFrame::to_texture() void VFrame::create_pbuffer() { - if(pbuffer && - pbuffer->window_id != BC_WindowBase::get_synchronous()->current_window->get_id()) - { + int ww = (get_w()+3) & ~3, hh = (get_h()+3) & ~3; + if( pbuffer && (pbuffer->w != ww || pbuffer->h != hh || + pbuffer->window_id != BC_WindowBase::get_synchronous()->current_window->get_id() ) ) { delete pbuffer; pbuffer = 0; } - if((get_w() % 4) || (get_h() % 4)) - { - printf("VFrame::create_pbuffer w=%d h=%d\n", get_w(), get_h()); - return; - } - - if(!pbuffer) - { - pbuffer = new BC_PBuffer(get_w(), get_h()); + if( !pbuffer ) { + pbuffer = new BC_PBuffer(ww, hh); } } void VFrame::enable_opengl() { create_pbuffer(); - if(pbuffer) - { + if( pbuffer ) { pbuffer->enable_opengl(); } }