Objects ripple when camera moves?

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Post Reply
danielmccarthy
Posts: 51
Joined: Fri May 30, 2014 12:55 am

Objects ripple when camera moves?

Post by danielmccarthy »

When I move my player all objects around it begin to ripple anyone else experienced this? How can I stop it

Thanks,
Dan
kklouzal
Posts: 343
Joined: Sun Mar 28, 2010 8:14 pm
Location: USA - Arizona

Re: Objects ripple when camera moves?

Post by kklouzal »

Please give more detail and/or a screenshot/video if you can please. I can't quite grasp the issue from your description.
Dream Big Or Go Home.
Help Me Help You.
dearingj
Posts: 7
Joined: Sun Dec 30, 2007 5:43 am
Contact:

Re: Objects ripple when camera moves?

Post by dearingj »

Graphical 'rippling' can often be caused when your program doesn't synchronize its drawing of graphics with your display's vertical retrace period. The display ends up showing different pieces of the picture from two or more different frames. The fact that you only notice the problem when your camera moves suggests that this may be the cause, as it would be unnoticeable when there's little or no movement. The fix is simple: when you call createDevice, set vsync to true.

Code: Select all

video::E_DRIVER_TYPE type = video::EDT_OPENGL;
core::dimension2d< u32 > size = core::dimension2d< u32 >(640, 480);
u32 bits = 16;
bool fullscreen = false;
bool stencilbuffer = false;
bool vsync = true;
IrrlichtDevice* device = createDevice( type, size, bits, fullscreen, stencilbuffer, vsync )
Here's a relevant Wikipedia article if you want more information: Screen tearing
randomMesh
Posts: 1186
Joined: Fri Dec 29, 2006 12:04 am

Re: Objects ripple when camera moves?

Post by randomMesh »

dearingj wrote:The fix is simple: when you call createDevice, set vsync to true.

Code: Select all

video::E_DRIVER_TYPE type = video::EDT_OPENGL;
core::dimension2d< u32 > size = core::dimension2d< u32 >(640, 480);
u32 bits = 16;
bool fullscreen = false;
bool stencilbuffer = false;
bool vsync = true;
IrrlichtDevice* device = createDevice( type, size, bits, fullscreen, stencilbuffer, vsync )
AFAIK vsync only works in fullscreen mode.
"Whoops..."
kklouzal
Posts: 343
Joined: Sun Mar 28, 2010 8:14 pm
Location: USA - Arizona

Re: Objects ripple when camera moves?

Post by kklouzal »

I can confirm vsync works in or out of fullscreen mode.
Dream Big Or Go Home.
Help Me Help You.
Post Reply