E-Prime 2.0 offers the ability to use Display flipping to perform any drawing operations. The use of flipping is recommended especially for larger displays to reduce the possibility of display tearing (when part of the new/old screen appear at the same time).
Use of flipping will require a PreRelease value aproximately of one refresh duration for the object that preceeds the drawing object to ensure proper scheduling. Without ample PreRelease, the object will schedule for the following refresh period. This would be reflected in the OnseTime and OnsetDelay properties.
NOTE: When flipping is enabled, all E-Basic Canvas calls targeting the on-screen canvas will internally wait for the vertical blank refresh period. The use of Display.WaitForVerticalBlank will thus not be necessary and if used would cause the Canvas operation to draw a refresh later. Whether using flipping or not, it is recommend when performing any drawing commands to do so on an offscreen canvas and then use one Canvas.Copy operation to update the screen.
Legacy End User Comments
|How do you turn OFF this feature?|
|In E-Basic, use the following command: |
Display.FlippingEnabled = False
In the E-Studio interface:
1) Open Experiment Object
2) Select Devices
3) Click Edit button for Display device
4) Select the FlippingEnabled drop down choice
5) OK to accept/dismiss dialogs
For proper timing under Windows 8, flipping and use of minimally E-Prime 2.0 SP1 (22.214.171.1243) is required. E-Prime users are encouraged to indicate what type of paradigms they view the flipping setting is better suited than with flipping. In nearly all cases, the paradigm would require minimal changes to accommodate flipping.
|"Use of flipping will require a PreRelease value aproximately of one refresh duration for the object that preceeds the drawing object to ensure proper scheduling." I don't understand what this means. How do we know what value to set the PreRelease field to? What is one refresh duration?|
|In script the refresh rate and duration can be obtained by Display.CalculatedRefreshRate and Display.CalculatedRefreshDuration. The RefreshRate is stored in the edat2 as well. E-Prime 2.0 SP1 default pre release of "same as duration" typically will be more than enough time needed. For more information on refresh rates and duration please see the critical timing chapter in the pdf files.|