This site is no longer active and is available for archival purposes only. Registration and login is disabled.

Screen Wipe


Screen Wipe

Postby Ryumaster » Sep 6, 2007 @ 11:43am

Hi!
I can not understand, how to use Wipe.
Do I have to put StartWipe(0) on OnInit,
and Wipe(destanation, source, EWIPE_SLIDELEFT,0, NULL, 0) on OnNextFrame?
I've tried different combinations but program always breaks with an error so I wondering what am I doing wrong.
I love postindustrial life.
User avatar
Ryumaster
pm Member
 
Posts: 86
Joined: Sep 17, 2006 @ 11:24am
Location: Lithuania, Kaunas


Postby edge » Sep 6, 2007 @ 2:05pm

Hi Ryumaster,

You need to call StartWipe() inside OnDisplayInit(), because the display isn't initialized in OnInit() yet.

I hope this helps.

BTW,
I've also added a solution for the hss.dll problem in the 3.10 version release topic.
EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Postby Ryumaster » Sep 6, 2007 @ 9:52pm

Hi!
Error was because of my mistake, and now test program runs without error breaks. But there is no screen wipe I can see. Am I doing the right sequence?

1. I'm creating 3 different surfaces 240X320.
2. Then: StartWipe(1) on DisplayInit.
3. Then: display->Wipe(&srf2, &srf1, &srf3,0,1,0,0) on OnNextFrame;
All I can see is the black screen. Maybe I have to use WipeScreenMap too, because I can not figure out what is that function for. Or maybe I have to update timer function manually somehow?
I love postindustrial life.
User avatar
Ryumaster
pm Member
 
Posts: 86
Joined: Sep 17, 2006 @ 11:24am
Location: Lithuania, Kaunas


Postby edge » Sep 10, 2007 @ 10:50am

Hi Ryumaster,

For the wipe to work you need to set the fourth parameter to a time value between 0 and 65535.

The best way is to use a timer variable, and increase it every frame with the timedelta value you receive from OnNextFrame(). MapScreenWipe() is only needed for certain wipe types (EWIPE_BLOCKS and EWIPE_SCREEN).
EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Postby Ryumaster » Sep 12, 2007 @ 10:48am

I love postindustrial life.
User avatar
Ryumaster
pm Member
 
Posts: 86
Joined: Sep 17, 2006 @ 11:24am
Location: Lithuania, Kaunas


Postby edge » Sep 12, 2007 @ 11:58am

EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Postby mamahow » Oct 29, 2008 @ 9:28am

Hi,

If we want to use wipe() API,
Can we use pixelate wipe type with "RGBA" surface?

If not, do you have suggestion if we strongly need to use alpha surface?

Thanks,
mamahow
mamahow
pm Member
 
Posts: 17
Joined: Jul 1, 2008 @ 10:29am


Postby edge » Oct 30, 2008 @ 2:57pm

Hi,

Do you need to wipe from RGBA to RGBA, or from RGBA to a normal RGB surface?
EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Postby mamahow » Oct 31, 2008 @ 6:39am

Hi,
Yes, We need both of these two operations.
mamahow
pm Member
 
Posts: 17
Joined: Jul 1, 2008 @ 10:29am


Postby edge » Nov 3, 2008 @ 11:47am

Hi,

Unfortunately, the only way to achieve this with good performance is to program your own wipe. The pixelate wipe works like this:
- Divide the image into several blocks (depending on the wipe size)
- Use fillrect on each block with a certain color on the destination surface
- The color is retrieved from the center of the block in the original image
EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


about wipe()

Postby sunfred » Nov 10, 2008 @ 4:36am

1. I'm creating 3 different surfaces 240X320.
2. Then: StartWipe(1) on DisplayInit.
3. Then: display->Wipe(&srf2, &srf1, &srf3,1000,1,0,0) on OnNextFrame;

i followed the step,but i can not see the result.
sunfred
pm Member
 
Posts: 11
Joined: Nov 7, 2008 @ 4:53am


Postby edge » Nov 11, 2008 @ 10:09am

EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Return to EDGELIB


Sort


Forum Description

Powerful and affordable C++ middleware solution covering true multi-platform 2D, 3D and network features for Apple iPhone, Windows Mobile, Symbian S60, UIQ, Linux and Windows desktop.

Moderator:

edge

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

cron