Page 1 of 2

Direct access, filters etc

PostPosted: Feb 29, 2004 @ 9:04pm
by Jaguard
Is there any way to have fullscreen filters in my app whilst having good FPS? Something like blur effects and so on(like the one in Particles sample)

If only use get/setpixels once(all the screen), i'm getting terrible loss of FPS - only about 30 and less instead of 100++ if no this functions used.

Whatever can I do? Some tricks with lock or whatever? Anything?

I use Pfrog 7.0. I'm not quite understand what the PHAL is, but can it help?

PostPosted: Feb 29, 2004 @ 9:33pm
by fast_rx
if you're doing a lot of get/set pixels, you'll want to use the surface lock instead.

But... on some devices, the lock will have to internally rotate the surface (twice if you use that last option to keep the contents). This issue should be removed after the integration with pocketHAL.

PostPosted: Feb 29, 2004 @ 10:27pm
by Pam

PostPosted: Feb 29, 2004 @ 10:54pm
by Jaguard

PostPosted: Mar 1, 2004 @ 12:40pm
by Pam

PostPosted: Mar 1, 2004 @ 3:26pm
by fzammetti

PostPosted: Mar 1, 2004 @ 4:33pm
by Pam

PostPosted: Mar 1, 2004 @ 7:54pm
by Pam

PostPosted: Mar 1, 2004 @ 8:09pm
by Kzinti

PostPosted: Mar 2, 2004 @ 6:26pm
by Guest
Well, thanks for the answers, I'm really appreciate it. There are some more:

I dont want to get into PHAL yet(partly because I've spent a lot of time making pfrog work, and don't want to spent more time for now), so I'm still interested in making pfrog fast enough.

1. Will it be the good idea to copy the video buffer into some temporary buffer to make operations on it and then send it back? If yes, what will be the best way - the cycle TempBuff = buffer.pixels[y*dy+x] or maybe memcpy()? But I'm not sure about the size to give into memcpy() - I suppose it should depend on pitch?
Maybe I'll receive some extra perfomance by using my own blit functions on this temporary buffer?

2. Is there any way to use alpha mask? There is display->SetBlending(), but it ifluence all the surface. I'm not sure about PixelShader, but it seems to me that it doesn't suit.
I need this basicly to make images look better. I tried blitting some prerendered images, and this looks terrible - There are a lot of almost black zones, something like Color(2,0,1). They are not filtrered by SetColorMask(0,0,0), of course, and the look is terrible. The usage of the same image as alpha blending mask could be nice sollution, I suppose.

3. And a little offtopic: I can't build my programm using any of: WCE ARM Debug, WCE ARM Release, WCE x86em Release. The only working target is WCE x86em Debug! When I try something different I get message about missing stlport_vc6_static.lib. I dont get this error when building WCE x86em Debug, but get it in all the other cases. That is really weird!
I've made the changes to stl_user_config.h, it helped me to compile PFrog lib, but I have no idea what to do with this error.. EVC3.0.

PS: Don't I tortune you with my poor english too hard? Sorry then ;)

PostPosted: Mar 2, 2004 @ 6:50pm
by Pam

PostPosted: Mar 2, 2004 @ 7:27pm
by Guest

PostPosted: Mar 2, 2004 @ 7:52pm
by Kzinti

PostPosted: Mar 2, 2004 @ 8:16pm
by jaguard

PostPosted: Mar 2, 2004 @ 10:02pm
by jaguard