Starting Point - Eye Gaze

Whilst many of the modules in the SpecialEffect DevKit might be applicable to your game, we’ve compiled a selection of modules which may be considered particularly relevant for many games supporting eye gaze.

The modules listed below can be expanded to reveal information on how they might be applied to various eye gaze interactions. This can be used as a starting point when interacting with the DevKit, if suitable for your game.

Eye gaze is a method of controlling a device using eye movement alone, most often using a connected eye gaze camera. Whilst eye gaze cameras can be supported natively using their individual APIs, here we have focused primarily on accomodating players who are using eye gaze to emulate a mouse input.

Most assistive eye gaze cameras can be used to emulate mouse input on PC and compatible mobile devices via different software. However, considerations around the speed, accuracy, and effort required may need to be applied to the mouse control in your game, to ensure a broad range of players using eye gaze can access your game in this way. By supporting eye gaze like this, you can also open up your game to more players using other assistive mouse inputs as well.

In addition to referencing the Devkit, examples of eye gaze accessible games that SpecialEffect have created can be found at www.eyegazegames.com.


1.2    Supporting Multiple Input Devices

“Give players a choice of different input devices to play your game.”

Having the choice to access a game using various compatible devices available on a particular platform, as well as options for how those devices are handled by the game, can be helpful and necessary for some players.

Alongside any other input devices that your game supports, include support for mouse devices as a minimum as this could allow players using a range of assistive mice, such as eye gaze, to play.

However, other considerations may need to be made to accomodate players using eye gaze, some of which are described in subsequent modules below.




3.3    Continuous Holds

“Provide alternative options for actions that require an input to be continuously held.”

Some games will require you to hold an input down to continuously perform an action. For example dragging an item in a point and click game. An alternative to this interaction might be to press the input once to pick up the item, and then again to let go.

Whilst completing a drag or swipe interaction is often possible using eye gaze, for some players it can be time consuming and effortful, requiring additional and repetitive interactions within the mouse control software they are using. Reducing mouse interactions to a single left click as much as possible, can reduce the required effort and increase the ease, efficiency, and enjoyment of interacting with your game for players.




3.4    Set Duration Holds

“Let players modify interactions that require holding an input for a specific amount of time.”

Sometimes an input will only need to be held down for a certain amount of time in order to perform an action. This could be a significant amount of time or a very brief hold. For some players even a short hold can be difficult, so provide alternatives where possible.

A useful alternative to this might be to let players press the input once, and for the action to activate automatically once the set duration has passed.

The most commonly used output from eye gaze software is a single short mouse click. Providing players with the option to use these single clicks to complete actions, instead of longer input holds, may allow them to play your game more effectively.




3.5    Repeated Presses

“Let players avoid repeated button presses in quick succession.”

If players are required to press an input repeatedly and in quick succession for a certain amount of time, an option to avoid this can be worthwhile.

An alternative to this might be to let the player hold the input down instead, or you may consider reducing the interaction down to a single input press if possible.

As with other more complex input interactions present in your game, performing repeated clicks in quick succession using eye gaze software may be difficult, or in this case even impossible. Simplifying actions that require these interactions down to just a single click, can allow players to progress past these events and continue playing.




4.4    Response Curves

“Let players adjust response curves to personalise their control of an action.”

Actions that are analog and can take many different values between the inner deadzone and outer threshold, will respond to the player’s input in a specific way, depending on how you’ve configured it to feel.

The response curve, which describes this relationship, can be adjusted to make the action more or less sensitive at different input values. Letting players adjust the curve, to suit the way they use their input, can give them more control over the action.

Emulating a mouse input with eye gaze has its own intricacies compared to using a physical mouse, and so actions can often benefit from being fine-tuned to make them feel more responsive. For instance, when controlling an action like in-game camera movement with a mouse input like eye gaze, the ability to control the acceleration or sensitivity of this movement, can allow players to match the camera movement to an amount of eye movement that feels right.




4.8    Contextual Analog Settings

“Allow players to adjust analog settings individually by context.”

Analog settings should also be adjustable for different contexts within your game.

Given the intricacies involved in emulating a mouse input with eye gaze, different actions might control quite differently from one another. Providing settings to adjust the sensitivity of analog actions within different contexts, ensures players can access more of your game.




5.6    Testing Configurations

“Give players options to test their setups while becoming familiar with your game.”

In order for players to get familiar with your game, with the various actions they can perform, and to test how adjusting the various settings will affect their experience, consider adding a consequence-free area or mode for the player to practice in.

Since creating an effective eye gaze setup can sometimes involve a considerable amount of configuration, allowing players to adjust settings in contained sandbox areas means they can see the results of changing each setting first hand, without the potential pressure that the main experience might bring.




6.4    Timing Elements

“Let players reduce or remove the need for quick or precisely timed movements.”

At certain points in your game you may require the player to respond quickly to something, or to precisely time when an input is used. Some players may struggle to do this, so it can be useful to provide options that affect the level of precision, or speed of response needed to access those parts of your game.

Whilst eye gaze can offer responsive control in many instances, this may not be the case for all users or all interactions. For instance, some users may utilise a dwell iteraction as part of their eye gaze software, which requires keeping the emulated mouse at, or near, a specific position for a certain amount of time, at which point a click will be activated.

The short delay of this interaction can make precisely timing an input difficult, therefore being able reduce or remove the need for accurate timing can be necessary for many players.




6.5    Analog Action Assists

“Give players options to assist their control of analog actions.”

For actions in your game that are controlled by analog inputs, consider providing options that make it easier for the player to have a good level of control over those actions.

There may be players who don’t quite have the required dexterity with eye gaze to optimally perform an action, and so would benefit from options to have these actions assisted in some way. There are many ways that you could assist an analog action, and these will depend on the nature of your game and the actions it contains.

For instance if the interaction in your game is cursor-based at any point, you might be able to increase the size of the area in which the cursor needs to be in order to select an object, or to increase the size of the cursor for a similar effect. Ensuring that there is also space between the targets can aid this and help avoid incorrect selections, and might reduce the level of dexterity needed when using eyegaze.




7.2    Alternative Actions

“Offer players alternative ways to perform actions.”

There may be actions in your game that require the use of certain inputs or input interactions that some players may find challenging. Providing alternative ways to perform these actions might simplify your game and allow more people to access it.

Games that use cursor interactions, like point and click style games, sometimes require other inputs to perform certain actions, such as requiring buttons or keys to open a menu or inventory. Consider whether some of those actions could potentially be performed when the user selects a graphical element on screen with their cursor instead. This way they might no longer need to have access to some inputs.

If your game is suitable you could consider allowing players to perform all of the actions in your game whilst using just a mouse cursor and a single left click, which could enable eye gaze players to play independently.




7.3    Automatic Digital Actions

“Allow players to automate certain digital actions.”

Even when alternative ways to perform certain actions are available, some players may find there are still too many actions overall for them to play successfully. In these cases it might be possible to reduce the number of actions the player needs to perform by partially, or fully automating them. Which could in turn reduce the total number of inputs required to play your game.

There are a number of ways you might automate digital actions, and how this is implemented will depend on the nature of each action and each game.

For instance if your game features driving you could provide an option to auto accelerate, so that players no longer need to use an input to accelerate at the same time as using an input for other actions. Which might be especially useful for eye gaze users who are using mouse emulation to steer.




7.4    Automatic Analog Actions

“Allow players to automate certain analog actions in a specific or optimal way.”

In a similar way to automating digital actions, analog actions could also be automated.

Analog actions however can take any number of values, so you will need to decide how best to automate them given the current actions available in your game. You might decide to let players configure how analog actions are performed in a specific way, or you might have them be performed in an optimal way instead.

One benefit of automating analog actions might be to prevent the player from having to perform otherwise complex input interactions. There may be players who don’t quite have the required dexterity with eye gaze to optimally perform some actions, and so would benefit from options to have these actions automated.



  1. Back to Starting Points ↵