projects
/
goodguy
/
history.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rework histogram_bezier, init wm icon set_icon(gg), update de.po+msg/txt
[goodguy/history.git]
/
cinelerra-5.1
/
guicast
/
vframe3d.C
diff --git
a/cinelerra-5.1/guicast/vframe3d.C
b/cinelerra-5.1/guicast/vframe3d.C
index 65eb1f3e92ff6a5def475444ac0b9eec810b859a..649a3b1997343d9577a0b885ec95da2f153e7adf 100644
(file)
--- 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:
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();
if(pbuffer) {
enable_opengl();
screen_to_texture();
@@
-151,30
+147,22
@@
void VFrame::to_texture()
void VFrame::create_pbuffer()
{
void VFrame::create_pbuffer()
{
- i
f(pbuffer &&
- pbuffer->window_id != BC_WindowBase::get_synchronous()->current_window->get_id())
- {
+ i
nt 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;
}
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();
}
}
void VFrame::enable_opengl()
{
create_pbuffer();
- if(pbuffer)
- {
+ if( pbuffer ) {
pbuffer->enable_opengl();
}
}
pbuffer->enable_opengl();
}
}
@@
-278,7
+266,7
@@
void VFrame::init_screen(int w, int h)
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
// Shift down and right so 0,0 is the top left corner
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
// Shift down and right so 0,0 is the top left corner
- glTranslatef(-
w/2, h/2
, 0.0);
+ glTranslatef(-
(w-1)/2.f, (h-1)/2.f
, 0.0);
glTranslatef(0.0, 0.0, -(far + near) / 2);
glDisable(GL_DEPTH_TEST);
glTranslatef(0.0, 0.0, -(far + near) / 2);
glDisable(GL_DEPTH_TEST);