A pixel (an abbreviation of pictures) can be considered as one of the many tiny dots that make up the representation of a picture in a computer's memory. However, each such information element is not really a dot, nor a square, but an abstract sample. With care, pixels in an image can be reproduced at any size without the appearance of visible dots or squares; but in many contexts, they are reproduced as dots or squares and can be visibly distinct when not fine enough. The intensity of each pixel is variable; in color systems, each pixel has typically three or four dimensions of variability such and red, green and blue, or cyan, magenta, yellow and black.
Pixels are generally thought of as the smallest complete sample of an image. The definition is highly context sensitive. For example, we can speak of pixels in a visible mage (e.g., a printed page) or pixels carried by one or more electronic signal(s), or represented by one or more digital value(s), or pixels on a display device, or pixels in a digital camera (photo sensor elements). This list is not exhaustive and depending on context there are several synonyms which are accurate in particular contexts, e.g. pel, sample, bytes, bits, dots, sports, superset, triad, stripe set, window, etc. We can also speak of pixels in the abstract, in particular when using pixels as a measure of resolution, e.g. 2400 pixels per inch or 640 pixels per line. “Dots” is often used to mean pixels, especially by computer sales and marketing people, and gives rise to the abbreviation DPI or dots per inch.
The more pixels used to represent an image, the closer the result can resemble the original. The number of pixels in an image is sometimes called the resolution, though resolution can also be defined more specifically. Pixels can be expressed as a single number, as in a “three-megapixel” digital camera, which has a nominal three million pixels, or as a pair of numbers, as in a “640 by 480 display”, which has 640 pixels from side to side and 480 from top to bottom (as in a VGA display), and therefore has a total number of 640×480=307,200 pixels.
In computer programming, an image composed of pixels is known as a bitmapped image or a raster image. The word raster originates from analogue television technology. Bitmapped images are used to encode digital video and to produce some types of computer-generated art. Since the resolution of most computer displays can be adjusted from the computer's operating system, a display's pixel resolution may not be an absolute measurement.
Modern LCD computer displays are designed with a native resolution which can be considered as the perfect match between pixels and triads (CRT displays are use red-green-blue phosphor triads, but they are not coincident with image pixels, and cannot therefore be said to be equivalent to pixels).
Typically, the native resolution will produce the sharpest picture capable from the display. However since the user can adjust the resolution, the monitor must be capable of displaying other resolutions. However, the size of the pixels on LCD displays are effectively fixed. As such, non-native resolutions have to be supported by approximate resampling in the LCD screen, using interpolation algorithms. This often causes the screen to look jagged or blurry. For example, a display with a native resolution of 1280×1024 will look best set at 1280×1024 resolution, and may be unable to display in 1600×1200 at all due to the lack of physical triads.
The aspect ratio of an image (“aspect ratio”) can be defined as its displayed width divided by its height (usually expressed as “x:y”). For instance, the aspect ratio of a traditional television screen is 4:3, or 1.33:1. High definition television uses an aspect of 16:9, or about 1.78:1. Aspect ratios of 2.39:1 (2.35:1 prior to SMPTE revision in 1970) or 1.85:1 are frequently used in cinematography, while the aspect ratio of a sync-sound 35 mm film frame is around 1.378:1 (also known as “Academy” ratio). Silent films which used the full frame were shot in 1.33:1.
Today, several different aspect ratios are used to display content (e.g., graphics). The aspect ratios may vary from display device to display device and from manufacturer to manufacturer and change as new devices come to market. Varying aspect ratios provide unique challenges in a highly regulated gaming environment. As such, techniques that can accommodate displaying content for various aspect ratios would be highly useful.
Broadly speaking, the invention relates to techniques for displaying content for various display aspect ratios (“aspect ratios”). It will be appreciated that the techniques are especially well suited for displaying content that includes graphics (graphical content) for environments that require adherence to various graphical design, licensing and/or regulatory requirements (e.g., gaming environments).
In accordance with one aspect of the invention, a resource manager can vary display content for various aspect ratios used to display information in a computing environment. The resource manager can, for example, effectively control and adjust the content to be displayed on a display based on the particular aspect ratio of the display. This allows providing content that is more suitable and/or especially designed for displaying on a particular aspect ratio. It will be appreciated that resource manager can facilitate execution of the same computer program code for various aspect ratio as the content displayed for each aspect ratio can be effectively adjusted by the resource manager. This means that the same computer program code (e.g., computer game such as video poker game) can be provided regardless of the aspect ratio used, yet the content including video, audio and audio-visual content associated with the computer program can be varied based on the aspect ratio used to display information on one or more displays.
In order to support multiple aspect ratios, the resource manager can use an Aspect Ratio Adaptable Data Set (ARADS) provided in accordance with another aspect of the invention. The Aspect Ratio Adaptable Data Set (ARADS) effectively supports displaying graphical content for various aspect ratios. The Aspect Ratio Adaptable Data Set (ARADS) can include “base data” and “aspect-ratio-specific data.” The base data is used as a base (or initial basis) for displaying content (e.g., graphics) on any one of a plurality of different aspect ratios. It will be appreciated that the base data can, fro example, include graphics (e.g., graphical objects, elements, items, icons, individual screens, or components displayed) designed for a particular aspect ratio (e.g., an existing game design for a particular aspect ratio associated with a display of a gaming machine). However, base data can also be designed to be independent of any particular aspect ratios in accordance with another aspect of the invention. On the other hand, the aspect-ratio-specific data provided as another component of the Aspect Ratio Adaptable Data Set (ARADS) can be designed to complement and/or replace the base data in order to, for example, present the graphics for a criteria such as those noted above for gaming environment). It will be appreciated that the base data can effectively be data commonly used for various aspect ratios. As such, typically the Aspect Ratio Adaptable Data Set (ARADS) requires less space and/or production time than it would be required to separately provide data for each different aspect ratio. Furthermore, this approach allows modification or addition of individual objects (elements, items, icons) rather than modifying an entire screen as a whole. In one embodiment, aspect-ratio-specific data is determined when base data is deemed to be insufficient for displaying content on a particular aspect ratio. This determination can, for example, be made based on various criteria associated with design or layout of graphics (e.g., as required or preferred for games played on gaming machines in a gaming environment).
In accordance with another aspect of the invention, the Aspect Ratio Adaptable Data Set (ARADS) can be used to support dynamic display of content, based on the aspect ratio as detected for a display. In one embodiment, a resource manager can determine the aspect ratio of a display and provide content deemed appropriate for the aspect ratio at a given time. These dynamic display techniques will be especially appreciated for computing environments where several different aspect ratios associated with numerous combination of displays can be used by various devices at a given time to execute any one of several programs (e.g., games on gaming machines configured for various combinations of display with different aspect ratios). In one embodiment, the aspect ratio of a display is determined before a computer program (e.g., game) is executed on a computing device (e.g., gaming machine). Based on the determined aspect ratio, appropriate aspect-ratio-specific data is determined in order to complement and/or replace the base data provided for multiple aspect ratios. Hence, display of graphics can be tailored for each display based on the display aspect ratio. Moreover, there is no need to have several different computer programs (e.g., computer games) to accommodate different aspect ratios, as this approach allows one computer program to be used with an Aspect Ratio Adaptable Data Set (ARADS) in order to effectively present data for various aspect ratios, thereby avoiding the cost of production and maintenance of separate computer codes and/or data for each aspect ratio used.
In accordance with yet another aspect of the invention, aspect-specific-ratio is determined by modifying a “base presentation.” More particularly, base data is initially used as a base presentation for a particular aspect ratio. Subsequently, the base presentation can be effectively changed and/or adjusted for the particular aspect ratio to achieve a desired or preferred presentation. In one embodiment, a graphics package is used to display a base presentation. The graphics package is then used to modify the base presentation, based on visual inspection, to achieve the desired or preferred presentation. Subsequently, the desired or preferred presentation can be stored and aspect-ratio-specific data can be generated to represent the desired or preferred modifications and/or changes to the base presentation.
The invention can be implemented in numerous ways, including a method, an apparatus, a computer readable medium, a computer system, or a signal embodied in a carrier wave. Several embodiments of the invention are discussed below.
Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.
The present invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which:
Screen shots 5A-5B depict graphics for a computer game adjusted for a widescreen aspect ratio in accordance with one embodiment of the invention.
As noted in the background section, several different aspect ratios are in use today in gaming machines depending on the display technology employed. As such, techniques that can accommodate displaying content (e.g., graphics) for various aspect ratios would be highly useful. Unfortunately, accommodating different aspect ratios has been a difficult problem, especially for modern LCD screens partly because the size of the pixels are effectively fixed. As an example, content for Audio-Visual Processing or Presentation (AVP) is conventionally designed for a particular aspect ratio (e.g., standard screen). Displaying content designed of a specific aspect ratio (e.g., standard screen) on a different aspect ratio (e.g., widescreen) has proved to be problematic, especially for modern LCD screens partly because (unlike CRT's) the size of the pixels cannot be adjusted to accommodate an aspect ratio other than the one associated with the native resolution (or maximum resolution) of the LCD screen (or display). As a result, content originally designed for a particular aspect ratio (e.g., standard screen) is presented on another aspect ratio (e.g., widescreen) with undesirable effects of side effects. The undesirable side effects, for example, include losing the original look-and-feel, omission of content, and not maximizing use of available screen space. To further illustrate,
These undesirable effects are especially problematic and/or unacceptable for applications (e.g., gaming) where it is highly desirable to maintain the same look and feel for the content (e.g., graphics displayed for a computer game) while maximizing the use of the screen and ensuring content especially what is considered to be critical (e.g., score, credit) is not lost and/or comprised (e.g., made less readable or clear as originally designed). In general, some environments (e.g., gaming environments) typically require a more sharper environment than that provided by TV or Personal Computer (PC) environments and have more rigorous standards with respect to, for example, how accurately information is presented and how easy it would be to read. For example, a gaming machine should display credit and other critical information accurately and in a manner that is easy to read. As such, even small variations from design, regulatory or licensing requirements, (e.g., Graphical User Interface design requirement) are generally unacceptable for some applications and environment (e.g., gaming applications and environment).
It should be noted that it is possible to create computer programs and/or data that specifically supports a particular aspect ratio. By way of example, a separate game can be designed for each different aspect ratio. Each game would have data and/or code designed for a particular aspect ratio. However, each game would be subject to often rigorous, costly and time consuming testing and approval as prescribed by various gaming jurisdictions. This approach is not desirable because it requires a significant amount of additional resources causing, among other things, a lag in production time.
Further, aspect ratios that are needed are not always known, a priori, to game manufacturers, which limits their ability to generate software that supports a particular aspect ratio. For example, a gaming machine may be manufactured with a display that provides a particular native aspect ratio. After some time in the field, the display may fail for some reason. At this time, as a result of the rapid evolution in display technologies, a new display with the same native aspect ratio may no longer be available and a new display with a different aspect ratio could be installed which may comprise the graphics quality of content displayed on the gaming machine. In this example, the gaming manufacturer has little ability to predict what display standards will exist when a replacement is needed. Hence, it would be a wasteful to generate code for a particular display standard.
In addition, original content which is relatively difficult and/or expensive to redo (e.g., movies) would have to be redone for several different aspect ratios. Yet another different drawback is that the size of programs (e.g., computer games) may dramatically increase (e.g., from 200 MB to 1.2 GB) in order to accommodate different aspect ratios. Furthermore, several sets of code would have to be maintained for each aspect ratio. If a different computer program is developed for each aspect ratio, then each computer program is tested separately. This, in turn, introduces a whole set of problems including testing, maintenance, licensing and regulatory issues (e.g., ensuring that each version of the game meets rigorous gaming and/or licensing requirements).
In view of the foregoing, it is apparent that there is a need for improved techniques for displaying content. Accordingly, the invention pertains to improved techniques for displaying content for various display aspect ratios (“aspect ratios”). It will be appreciated that the techniques are especially well suited for displaying content that includes graphics (graphical content) for environments that require adherence to various graphical design, licensing and/or regulatory requirements (e.g., gaming environments).
In accordance with one aspect of the invention, a resource manager can vary display content for various aspect ratios used to display information in a computing environment. The resource manager can, for example, effectively control and adjust the content to be displayed on a display based on the particular aspect ratio of the display. This allows providing content that is more suitable and/or especially designed for displaying on a particular aspect ratio. It will be appreciated that resource manager can facilitate execution of the same computer program code for various aspect ratio as the content displayed for each aspect ratio can be effectively adjusted by the resource manager. This means that the same computer program code (e.g., computer game such as video poker game) can be provided regardless of the aspect ratio used, yet the content including video, audio and audio-visual content associated with the computer program can be varied based on the aspect ratio used to display information on one or more displays.
In order to support multiple aspect ratios, the resource manager can use an Aspect Ratio Adaptable Data Set (ARADS) provided in accordance with another aspect of the invention. The Aspect Ratio Adaptable Data Set (ARADS) effectively supports displaying graphical content for various aspect ratios. The Aspect Ratio Adaptable Data Set (ARADS) can include “base data” and “aspect-ratio-specific data.” The base data is used as a base (or initial basis) for displaying content (e.g., graphics) on any one of a plurality of different aspect ratios. It will be appreciated that the base data can, fro example, include graphics (e.g., graphical objects, elements, items, icons, individual screens, or components displayed) designed for a particular aspect ratio (e.g., an existing game design for a particular aspect ratio associated with a display of a gaming machine). However, base data can also be designed to be independent of any particular aspect ratios in accordance with another aspect of the invention. On the other hand, the aspect-ratio-specific data provided as another component of the Aspect Ratio Adaptable Data Set (ARADS) can be designed to complement and/or replace the base data in order to, for example, present the graphics for a criteria such as those noted above for gaming environment). It will be appreciated that the base data can effectively be data commonly used for various aspect ratios. As such, typically the Aspect Ratio Adaptable Data Set (ARADS) requires less space and/or production time than it would be required to separately provide data for each different aspect ratio. Furthermore, this approach allows modification or addition of individual objects (elements, items, icons) rather than modifying an entire screen as a whole. In one embodiment, aspect-ratio-specific data is determined when base data is deemed to be insufficient for displaying content on a particular aspect ratio. This determination can, for example, be made based on various criteria associated with design or layout of graphics (e.g., as required or preferred for games played on gaming machines in a gaming environment).
In accordance with another aspect of the invention, the Aspect Ratio Adaptable Data Set (ARADS) can be used to support dynamic display of content, based on the aspect ratio as detected for a display. In one embodiment, a resource manager can determine the aspect ratio of a display and provide content deemed appropriate for the aspect ratio at a given time. These dynamic display techniques will be especially appreciated for computing environments where several different aspect ratios associated with numerous combination of displays can be used by various devices at a given time to execute any one of several programs (e.g., games on gaming machines configured for various combinations of display with different aspect ratios). In one embodiment, the aspect ratio of a display is determined before a computer program (e.g., game) is executed on a computing device (e.g., gaming machine). Based on the determined aspect ratio, appropriate aspect-ratio-specific data is determined in order to complement and/or replace the base data provided for multiple aspect ratios. Hence, display of graphics can be tailored for each display based on the display aspect ratio. Moreover, there is no need to have several different computer programs (e.g., computer games) to accommodate different aspect ratios, as this approach allows one computer program to be used with an Aspect Ratio Adaptable Data Set (ARADS) in order to effectively present data for various aspect ratios, thereby avoiding the cost of production and maintenance of separate computer codes and/or data for each aspect ratio used.
In accordance with yet another aspect of the invention, aspect-specific-ratio is determined by modifying a “base presentation.” More particularly, base data is initially used as a base presentation for a particular aspect ratio. Subsequently, the base presentation can be effectively changed and/or adjusted for the particular aspect ratio to achieve a desired or preferred presentation. In one embodiment, a graphics package is used to display a base presentation. The graphics package is then used to modify the base presentation, based on visual inspection, to achieve the desired or preferred presentation. Subsequently, the desired or preferred presentation can be stored and aspect-ratio-specific data can be generated to represent the desired or preferred modifications and/or changes to the base presentation.
Embodiments of these aspects of the invention are discussed below with reference to
In order to vary content for different aspect ratios and/or allow a single computer program code to effectively serve various aspect-ratios, an Aspect Ratio Adaptable Data Set (ARADS) 68 is provided in accordance with one aspect of the invention. Generally, the Aspect Ratio Adaptable Data Set (ARADS) can include base data 70. It will be appreciated that the base data 70 can, for example, be aspect-ratio independent data 70 provided for various aspect ratios. As such, the aspect-ratio independent data 70 can serve as base or common data for various aspect ratios. Alternatively, base data 70 can be data that was originally designed for a particular aspect ratio, but used as a basis for display content on other aspect ratios. In any case, the base data 70 can serve as a basis for displaying content on various aspect ratios. In addition to the base data (e.g., aspect-ratio independent data), aspect-ratio specific data 72 can be provided to better address each individual aspect ratio. The aspect-ratio specific data 72 can include data specifically provided for one or more specific aspect-ratios. In general, the aspect-ratio specific data can complement and/or replace the base data 70 in order to provide better content for a specific aspect ratio. The Aspect Ratio Adaptable Data Set (ARADS) is discussed in greater detail below. It should be noted that the resource manager 52 can effectively determine the appropriate content for display for a particular aspect-ratio. By way of example, the resource manager 52 can determine that for the aspect ratio associated with display 54, a particular portion of aspect-ratio specific data 72 should be used in addition and/or instead of the base data 70. This means that the resource manager 52 can, for example, determine aspect-ratio specific data 72 that is an exact or close match to the aspect ratio associated with the display 54. Therefore, the resource manager 52 can effectively determine the best, most suitable and/or best available content for a particular display aspect ratio associated with a display used for displaying content associated with the aspect-ratio independent program code 66, thereby allowing a single program (e.g., a computer game) to be executed for numerous aspect ratios and yet allowing enough flexibility to tailor content for a particular aspect ratio as much as it is desired. For example, for a first aspect ratio, there may be need for little or no aspect-ratio-specific data, but for a second aspect ratio, most or even the entire base data may be ignored and/or overwritten as content is primarily or entirely taken from aspect-ratio-specific data provided for the second aspect ratio. It will also be appreciated that a significant portion of Aspect Ratio Adaptable Data Set (ARADS) can be data used for various aspect ratios. This means that the base data 70 can be a significant portion of the ARADS, thereby requiring less storage, maintenance, testing and/or regulatory approval that would be required if computer program code and/or data is developed for each specific aspect ratio.
In order to accommodate various aspect ratios, an aspect Ratio Adaptable Data Set (ARADS) 101 is provided for the computing environment 100. Referring to
More particularly, the aspect-ratio-specific data 112 can include a set of data for a plurality of different aspect ratios (Data1-DataN). Thus, in order to display content for a particular aspect ratio (aspect ratio I), the combination of the base data 110 and a particular aspect-ratio-specific data (Data I) from the set of aspect-ratio-specific data (ARSD) 112 can be used. By way of example, the combination of the base data 110 and aspect-ratio-specific data 1 can be used to display content on the display 121 with a first aspect ratio. However, aspect-ratio-specific data 2 is used in combination with the base data 110 to display content on the display 122 (or one of its display units) with a corresponding second aspect ratio, and so on.
It will be appreciated that aspect-ratio specific data 112 can ensure that one or more presentation or display criteria are met. It should also be noted that the Aspect Ratio Adaptable Data Set (ARADS) 101 can be associated with a computer program (e.g., game for a gaming machine) 120 which may also be stored in the storage 102, server 104 and/or computing devices 1 and 2. In general, each of a plurality of computer programs (G1, . . . GN) can be associated respectively with a plurality Aspect Ratio Adaptable Data Sets (ARADS1, . . . ARADSN) as suggested by
To further elaborate,
In general, aspect-ratio-specific data can complement the base data 110 in order to ensure that one or more criteria (e.g., presentation criteria) are met. As such, the aspect-ratio-specific data 2 can, for example, describe the changes or additions that need to be made to the base data 110 in order to display the objects in accordance with a design criterion (e.g., design criteria, e.g., maintaining the same look and feel). Those skilled in the art will appreciate that aspect-ratio-specific data 112 can, for example, change (e.g., scale down, scale up) a base object, replace a base object, move a base object, or change its relationship with other objects, or introduce a new object or a new relationship between one or more objects. As will be discussed below, aspect-ratio-specific data (e.g., aspect-ratio-specific data 2) can be generated using a graphics package in accordance with one embodiment of the invention. This allows a designer (e.g., a human) to conveniently define aspect-ratio-specific data in accordance with various presentation or graphics design criteria. As such, there is no practical limitation to changes and/or additions that can be made to the base data 110. Referring to
Although base data 110 can be data originally designed for a particular aspect ratio, those skilled in the art will also appreciate that base data 110 can be designed to be independent of any aspect ratio in accordance with one aspect of the invention. This means that a set of aspect ratio independent objects can be designed or identified to serve as base data for various aspect ratios. Such objects may have characteristics common to various aspect ratios. These aspect ratio independent objects can serve as a set of base objects (e.g., common objects, initial objects) as basis for displaying content for multiple aspect ratios. Furthermore, an aspect ratio independent object can be modified to obtain an aspect-ratio-specific object and/or additional aspect specific objects can be provided to complement the base objects in order to address a particular aspect ratio when there is a need.
In any case, in order to display objects for a particular aspect ratio, the combination of base data (or objects) and aspect-ratio-specific data (or objects) can be effectively used to display contents for various aspect ratios. By way of example, an aspect-ratio-specific object can effectively modify and/or replace a base object or add a new object to the set of base objects. Referring again to
Those skilled in the art will also appreciate that the base data 110 can be initially used to display objects on the second display 130 before aspect-ratio-specific data 2 is used to effectively adjust the display for the second aspect ratio associated with the second display 130. Alternatively, aspect-ratio-specific data 2 can be used to effectively modify the base data 110 before displaying the objects on the second display 130. In other words, base data 110 can be modified, based on the aspect-ratio-specific data to generate the data (modified data) needed to display objects on the second display 130.
Various aspects of the content that can be varied and effectively customized fo r various aspect ratios include, for example, layout of content (e.g., position, size, and/or number of graphical objects), and textual properties (e.g., font type, font size, spacing, formatting, paragraph indenting and/or spacing, line and page breaks, bullets, numbering and/or character types and/or languages). Those skilled in the art will appreciate that graphical objects can be modeled in three dimensions (3D) using 3D modeling. For example, content representing three dimensional reels associated with a reel-based game on a gaming machine can be modeled in 3D. However, these models can be different for different aspect ratios so that, for example, 3D models of reels for the standard screen aspect ratio is different than the 3D models of the same reels for a wide screen aspect ratio. Animation or movement of objects can also be varied and effectively tailored for various aspect ratios in a similar manner as a single scene can be modified. By way of example, even the movement of an object (e.g., movement of a ball) may be designed to be different for a wide screen aspect ratio than a standard aspect ratio. In general, different images, bitmaps, movies and/or sounds, can be provided for different aspect ratios as the aspect-ratio-specific data. By way of example, a different movie can be provided for a wide screen aspect ratio than a standard aspect ratio. The game can be formatted differently or completely different movies can be provided. However, the movie(s) can be effectively part of the same game provided by the game computer program. It should be noted that audio content can also be varied for different aspect ratios. For example, audio for left and right channels can be provided for a standard aspect ratio (or display), but audio for a wide screen aspect can include a central channel in addition to the left and right channels. Some exemplarily aspect ratios include: standard, widescreen, double-wide, narrow, double-narrow, 5:4, 4:3, 9:16, and 16:19. It is clear that the invention can be used to accommodate any aspect ratio including those that may developed in the future as the invention does not pose any assumptions or limits on the aspect ratios that can be used to display content.
It will also be appreciated that aspect ratio adaptable data 100 (shown in
Next, the aspect ratio of a display(s) intended for displaying graphics of the computer program is determined (306). Thereafter, based on the aspect ratio of the display, aspect-ratio-specific data is selected from the set of aspect-ratio-specific data in order to display the graphics on the display. Accordingly, the combination of the selected aspect-ratio-specific data (e.g., b1) and the base data (a) can be used to display the graphics. Subsequently, it is determined (312) whether there are other displays to consider. Method 300 ends if it is determined that there are no more displays to consider. However, it is determined (312) that there is at least one display to consider, aspect ratio is determined (306) for the display. Thereafter, method 300 proceeds in a similar manner as discussed above to select (308) aspect-ratio-specific data and display (310) the graphics. Method 300 ends when it is determined (312) that there are no more displays to consider.
After the base data is presented (452) as the base presentation, it is determined (454) whether to modify the base presentation to ensure that one or more presentation criteria are met. This determination (454) can, for example, be made by visually inspecting the layout of the graphical components or screen shots. If it is determined (454) to modify the base presentation, modification of the base presentation is initiated (456) in order to achieve a preferred or modified presentation. The base presentation can, for example, be modified based on a presentation criterion (e.g., design criteria such as maintaining the same look and feel for different aspect ratios, or maximizing use of the display screen ensuring that the critical information is not omitted, ensuring quality of displayed content). Those skilled in the art will appreciate that, for example, a graphics package can be used to modify and/or add various graphical components and/or relationships between them. Subsequently, data representing the preferred or modified presentation is determined (458). Typically, this data can complement the base data to achieve the preferred or modified representation. In other words, aspect-ratio-specific data that can complement the base data in order to achieve the one or more presentation criteria can be determined (458). Again, a graphics package can be used to determine (458) the aspect-ratio-specific data that represents the preferred or modified presentation. Finally, the aspect-ratio-specific data is stored (460) for the particular aspect ratio. The aspect-ratio-specific data can, for example, be added to a set of aspect-ratio-specific data associated with base data.
Screen shots 5A-5B depict graphics for a computer game adjusted for a widescreen aspect ratio in accordance with one embodiment of the invention. More particularly,
Those skilled in the art will appreciate that there is no need to modify the source image or games elements, yet content can appear as crisp and clear as that displayed for the original content (
Referring to
The gaming-machine 2 includes a top box 6, which sits on top of the main cabinet 4. The top box 6 houses a number of devices, which may be used to add features to a game being played on the gaming-machine 2, including speakers 10, 12, 14, a ticket printer 18 which prints bar-coded tickets 20, a key pad 22 for entering player tracking information, a florescent display 16 for displaying player tracking information, a card reader 24 for entering a magnetic striped card containing player tracking information, and a video display screen 42. The ticket printer 18 may be used to print tickets for a cashless ticketing system. Further, the top box 6 may house different or additional devices than shown in the
Understand that gaming-machine 2 is but one example from a wide range of gaming-machine designs on which the present invention may be implemented. For example, not all suitable gaming-machines have top boxes or player tracking features. Further, some gaming-machines have two or more game displays—mechanical and/or video. And, some gaming-machines are designed for bar tables and have displays that face upwards. As another example, a game may be generated in on a host computer and may be displayed on a remote terminal or a remote gaming device. The remote gaming device may be connected to the host computer via a network of some type such as a local area network, a wide area network, an intranet or the Internet. The remote gaming device may be a portable gaming device such as but not limited to a cell phone, a personal digital assistant, and a wireless game player. Those of skill in the art will understand that the present invention, as described below, can be deployed on most any gaming-machine now available or hereafter developed.
Referring back to the example depicted in
During the course of a game, a player may be required to make a number of decisions, which affect the outcome of the game. For example, a player may vary his or her wager on a particular game, select a prize for a particular game selected from a prize server, or make game decisions which affect the outcome of a particular game. The player may make these choices using the player-input switches 32, the video display screen 34 or using some other device which enables a player to input information into the gaming-machine. In some embodiments, the player may be able to access various game services such as concierge services and entertainment content services using the video display screen 34 and one more input devices.
During certain game events, the gaming-machine 2 may display visual and auditory effects that can be perceived by the player. These effects add to the excitement of a game, which makes a player more likely to continue playing. Auditory effects include various sounds that are projected by the speakers 10, 12, 14. Visual effects include flashing lights, strobe lights or other patterns displayed from lights on the gaming-machine 2 or from lights behind the belly glass 40. After the player has completed a game, the player may receive game tokens from the coin tray 38 or the ticket 20 from the printer 18, which may be used for further games or to redeem a prize. Further, the player may receive a ticket 20 for food, merchandise, or games from the printer 18.
IGT gaming-machines are implemented with special features and additional circuitry that differentiate them from general-purpose computers (e.g., desktop PC's and laptops). Some of these components and features are included in the network devices of the present invention, as appropriate. Some examples of these additional components and features are described below.
A watchdog timer is normally used in IGT gaming-machines to provide a software failure detection mechanism. In a normally operating system, the operating software periodically accesses control registers in the watchdog timer subsystem to “re-trigger” the watchdog. Should the operating software fail to access the control registers within a preset timeframe, the watchdog timer will timeout and generate a system reset. Typical watchdog timer circuits contain a loadable timeout counter register to allow the operating software to set the timeout interval within a certain range of time. A differentiating feature of the some preferred circuits is that the operating software cannot completely disable the function of the watchdog timer. In other words, the watchdog timer always functions from the time power is applied to the board.
IGT gaming computer platforms preferably use several power supply voltages to operate portions of the computer circuitry. These can be generated in a central power supply or locally on the computer board. If any of these voltages falls out of the tolerance limits of the circuitry they power, unpredictable operation of the computer may result. Though most modern general-purpose computers include voltage monitoring circuitry, these types of circuits only report voltage status to the operating software. Out of tolerance voltages can cause software malfunction, creating a potential uncontrolled condition in the gaming computer. Gaming-machines of the present assignee typically have power supplies with tighter voltage margins than that required by the operating circuitry. In addition, the voltage monitoring circuitry implemented in IGT gaming computers typically has two thresholds of control. The first threshold generates a software event that can be detected by the operating software and an error condition generated. This threshold is triggered when a power supply voltage falls out of the tolerance range of the power supply, but is still within the operating range of the circuitry. The second threshold is set when a power supply voltage falls out of the operating tolerance of the circuitry. In this case, the circuitry generates a reset, halting operation of the computer.
The standard method of operation for IGT slot machine game software is to use a state machine. Each function of the game (bet, play, result, etc.) is defined as a state. When a game moves from one state to another, critical data regarding the game software is stored in a custom non-volatile memory subsystem. In addition, game history information regarding previous games played, amounts wagered, and so forth also should be stored in a non-volatile memory device. This feature allows the game to recover operation to the current state of play in the event of a malfunction, loss of power, etc. This is critical to ensure the player's wager and credits are preserved. Typically, battery backed RAM devices are used to preserve this critical data. These memory devices are not used in typical general-purpose computers.
IGT gaming computers normally contain additional interfaces, including serial interfaces, to connect to specific subsystems internal and external to the slot machine. The serial devices may have electrical interface requirements that differ from the “standard” EIA RS232 serial interfaces provided by general-purpose computers. These interfaces may include EIA RS485, EIA RS422, Fiber Optic Serial, Optically coupled serial interfaces, current loop style serial interfaces, etc. In addition, to conserve serial interfaces internally in the slot machine, serial devices may be connected in a shared, daisy-chain fashion where multiple peripheral devices are connected to a single serial channel.
IGT Gaming-machines may alternatively be treated as peripheral devices to a casino communication controller and connected in a shared daisy chain fashion to a single serial interface. In both cases, the peripheral devices are preferably assigned device addresses. If so, the serial controller circuitry must implement a method to generate or detect unique device addresses. General-purpose computer serial ports are not able to do this.
Security monitoring circuits detect intrusion into an IGT gaming-machine by monitoring security switches attached to access doors in the slot machine cabinet. Preferably, access violations result in suspension of game play and can trigger additional security operations to preserve the current state of game play. These circuits also function when power is off by use of a battery backup. In power-off operation, these circuits continue to monitor the access doors of the slot machine. When power is restored, the gaming-machine can determine whether any security violations occurred while power was off, e.g., via software for reading status registers. This can trigger event log entries and further data authentication operations by the slot machine software.
Trusted memory devices are preferably included in an IGT gaming-machine computer to ensure the authenticity of the software that may be stored on less secure memory subsystems, such as mass storage devices. Trusted memory devices and controlling circuitry are typically designed to not allow modification of the code and data stored in the memory device while the memory device is installed in the slot machine. The code and data stored in these devices may include authentication algorithms, random number generators, authentication keys, operating system kernels, etc. The purpose of these trusted memory devices is to provide gaming regulatory authorities a root trusted authority within the computing environment of the slot machine that can be tracked and verified as original. This may be accomplished via removal of the trusted memory device from the slot machine computer and verification of the secure memory device contents is a separate third party verification device. Once the trusted memory device is verified as authentic, and based on the approval of the verification algorithms contained in the trusted device, the gaming-machine is allowed to verify the authenticity of additional code and data that may be located in the gaming computer assembly, such as code and data stored on hard disk drives.
The gaming system 900 may receive inputs from different groups/entities and output various services and or information to these groups/entities. For example, game players 925 primarily input cash or indicia of credit into the system, make game selections that trigger software downloads, and receive entertainment in exchange for their inputs. Game software content providers provide game software for the system and may receive compensation for the content they provide based on licensing agreements with the gaming machine operators. Gaming machine operators select game software for distribution, distribute the game software on the gaming devices in the system 900, receive revenue for the use of their software and compensate the gaming machine operators. The gaming regulators 930 may provide rules and regulations that must be applied to the gaming system and may receive reports and other information confirming that rules are being obeyed.
In the following paragraphs, details of each component and some of the interactions between the components are described with respect to
In another embodiment, a game usage-tracking host 915 may track the usage of game software on a plurality of devices in communication with the host. The game usage-tracking host 915 may be in communication with a plurality of game play hosts and gaming machines. From the game play hosts and gaming machines, the game usage tracking host 915 may receive updates of an amount that each game available for play on the devices has been played and on amount that has been wagered per game. This information may be stored in a database and used for billing according to methods described in a utility based licensing agreement.
The game software host 902 may provide game software downloads, such as downloads of game software or game firmware, to various devious in the game system 900. For example, when the software to generate the game is not available on the game play interface 911, the game software host 902 may download software to generate a selected game of chance played on the game play interface. Further, the game software host 902 may download new game content to a plurality of gaming machines via a request from a gaming machine operator.
In one embodiment, the game software host 902 may also be a game software configuration-tracking host 913. The function of the game software configuration-tracking host is to keep records of software configurations and/or hardware configurations for a plurality of devices in communication with the host (e.g., denominations, number of paylines, paytables, max/min bets). Details of a game software host and a game software configuration host that may be used with the present invention are described in co-pending U.S. Pat. No. 6,645,077, by Rowe, entitled, “Gaming Terminal Data Repository and Information System,” filed Dec. 21, 2000, which is incorporated herein in its entirety and for all purposes.
A game play host device 903 may be a host server connected to a plurality of remote clients that generates games of chance that are displayed on a plurality of remote game play interfaces 911. For example, the game play host device 903 may be a server that provides central determination for a bingo game play played on a plurality of connected game play interfaces 911. As another example, the game play host device 903 may generate games of chance, such as slot games or video card games, for display on a remote client. A game player using the remote client may be able to select from a number of games that are provided on the client by the host device 903. The game play host device 903 may receive game software management services, such as receiving downloads of new game software, from the game software host 902 and may receive game software licensing services, such as the granting or renewing of software licenses for software executed on the device 903, from the game license host 901.
In particular embodiments, the game play interfaces or other gaming devices in the gaming system 900 may be portable devices, such as electronic tokens, cell phones, smart cards, tablet PC's and PDA's. The portable devices may support wireless communications and thus, may be referred to as wireless mobile devices. The network hardware architecture 916 may be enabled to support communications between wireless mobile devices and other gaming devices in gaming system. In one embodiment, the wireless mobile devices may be used to play games of chance.
The gaming system 900 may use a number of trusted information sources. Trusted information sources 904 may be devices, such as servers, that provide information used to authenticate/activate other pieces of information. CRC values used to authenticate software, license tokens used to allow the use of software or product activation codes used to activate to software are examples of trusted information that might be provided from a trusted information source 904. Trusted information sources may be a memory device, such as an EPROM, that includes trusted information used to authenticate other information. For example, a game play interface 911 may store a private encryption key in a trusted memory device that is used in a private key-public key encryption scheme to authenticate information from another gaming device.
When a trusted information source 904 is in communication with a remote device via a network, the remote device will employ a verification scheme to verify the identity of the trusted information source. For example, the trusted information source and the remote device may exchange information using public and private encryption keys to verify each other's identities. In another embodiment of the present invention, the remote device and the trusted information source may engage in methods using zero knowledge proofs to authenticate each of their respective identities. Details of zero knowledge proofs that may be used with the present invention are described in US publication no. 2003/0203756, by Jackson, filed on Apr. 25, 2002 and entitled, “Authentication in a Secure Computerized Gaming System, which is incorporated herein in its entirety and for all purposes.
Gaming devices storing trusted information might utilize apparatus or methods to detect and prevent tampering. For instance, trusted information stored in a trusted memory device may be encrypted to prevent its misuse. In addition, the trusted memory device may be secured behind a locked door. Further, one or more sensors may be coupled to the memory device to detect tampering with the memory device and provide some record of the tampering. In yet another example, the memory device storing trusted information might be designed to detect tampering attempts and clear or erase itself when an attempt at tampering has been detected.
The gaming system 900 of the present invention may include devices 906 that provide authorization to download software from a first device to a second device and devices 907 that provide activation codes or information that allow downloaded software to be activated. The devices, 906 and 907, may be remote servers and may also be trusted information sources. One example of a method of providing product activation codes that may be used with the present invention is describes in previously incorporated U.S. Pat. No. 6,264,561.
A device 906 that monitors a plurality of gaming devices to determine adherence of the devices to gaming jurisdictional rules 908 may be included in the system 900. In one embodiment, a gaming jurisdictional rule server may scan software and the configurations of the software on a number of gaming devices in communication with the gaming rule server to determine whether the software on the gaming devices is valid for use in the gaming jurisdiction where the gaming device is located. For example, the gaming rule server may request a digital signature, such as CRC's, of particular software components and compare them with an approved digital signature value stored on the gaming jurisdictional rule server.
Further, the gaming jurisdictional rule server may scan the remote gaming device to determine whether the software is configured in a manner that is acceptable to the gaming jurisdiction where the gaming device is located. For example, a maximum bet limit may vary from jurisdiction to jurisdiction and the rule enforcement server may scan a gaming device to determine its current software configuration and its location and then compare the configuration on the gaming device with approved parameters for its location.
A gaming jurisdiction may include rules that describe how game software may be downloaded and licensed. The gaming jurisdictional rule server may scan download transaction records and licensing records on a gaming device to determine whether the download and licensing was carried out in a manner that is acceptable to the gaming jurisdiction in which the gaming device is located. In general, the game jurisdictional rule server may be utilized to confirm compliance to any gaming rules passed by a gaming jurisdiction when the information needed to determine rule compliance is remotely accessible to the server.
Game software, firmware or hardware residing a particular gaming device may also be used to check for compliance with local gaming jurisdictional rules. In one embodiment, when a gaming device is installed in a particular gaming jurisdiction, a software program including jurisdiction rule information may be downloaded to a secure memory location on a gaming machine or the jurisdiction rule information may be downloaded as data and utilized by a program on the gaming machine. The software program and/or jurisdiction rule information may used to check the gaming device software and software configurations for compliance with local gaming jurisdictional rules. In another embodiment, the software program for ensuring compliance and jurisdictional information may be installed in the gaming machine prior to its shipping, such as at the factory where the gaming machine is manufactured.
The gaming devices in game system 900 may utilize trusted software and/or trusted firmware. Trusted firmware/software is trusted in the sense that is used with the assumption that it has not been tampered with. For instance, trusted software/firmware may be used to authenticate other game software or processes executing on a gaming device. As an example, trusted encryption programs and authentication programs may be stored on an EPROM on the gaming machine or encoded into a specialized encryption chip. As another example, trusted game software, i.e., game software approved for use on gaming devices by a local gaming jurisdiction may be required on gaming devices on the gaming machine.
In the present invention, the devices may be connected by a network 916 with different types of hardware using different hardware architectures. Game software can be quite large and frequent downloads can place a significant burden on a network, which may slow information transfer speeds on the network. For game-on-demand services that require frequent downloads of game software in a network, efficient downloading is essential for the service to viable. Thus, in the present inventions, network efficient devices 910 may be used to actively monitor and maintain network efficiency. For instance, software locators may be used to locate nearby locations of game software for peer-to-peer transfers of game software. In another example, network traffic may be monitored and downloads may be actively rerouted to maintain network efficiency.
One or more devices in the present invention may provide game software and game licensing related auditing, billing and reconciliation reports to server 912. For example, a software licensing billing server may generate a bill for a gaming device operator based upon a usage of games over a time period on the gaming devices owned by the operator. In another example, a software auditing server may provide reports on game software downloads to various gaming devices in the gaming system 900 and current configurations of the game software on these gaming devices.
At particular time intervals, the software auditing server 912 may also request software configurations from a number of gaming devices in the gaming system. The server may then reconcile the software configuration on each gaming device. In one embodiment, the software auditing server 912 may store a record of software configurations on each gaming device at particular times and a record of software download transactions that have occurred on the device. By applying each of the recorded game software download transactions since a selected time to the software configuration recorded at the selected time, a software configuration is obtained. The software auditing server may compare the software configuration derived from applying these transactions on a gaming device with a current software configuration obtained from the gaming device. After the comparison, the software-auditing server may generate a reconciliation report that confirms that the download transaction records are consistent with the current software configuration on the device. The report may also identify any inconsistencies. In another embodiment, both the gaming device and the software auditing server may store a record of the download transactions that have occurred on the gaming device and the software auditing server may reconcile these records.
There are many possible interactions between the components described with respect to
The many features and advantages of the present invention are apparent from the written description, and thus, it is intended by the appended claims to cover all such features and advantages of the invention. Further, since numerous modifications and changes will readily occur to those skilled.
Number | Name | Date | Kind |
---|---|---|---|
5513342 | Leong et al. | Apr 1996 | A |
6264561 | Saffari et al. | Jul 2001 | B1 |
6278433 | Narui | Aug 2001 | B2 |
6645077 | Rowe | Nov 2003 | B2 |
20030038832 | Sobol | Feb 2003 | A1 |
20030203756 | Jackson | Oct 2003 | A1 |
20040102245 | Escalera et al. | May 2004 | A1 |
20040107245 | Bodnar et al. | Jun 2004 | A1 |
20040248642 | Rothschild | Dec 2004 | A1 |
20050059494 | Kammler | Mar 2005 | A1 |
20060009286 | Durham et al. | Jan 2006 | A1 |
20060140513 | Tran Xuan et al. | Jun 2006 | A1 |
20080072252 | Morris et al. | Mar 2008 | A1 |
Number | Date | Country |
---|---|---|
1 217 600 | Jun 2002 | EP |
Number | Date | Country | |
---|---|---|---|
20080111841 A1 | May 2008 | US |