Citizendia

A game programmer is a programmer who primarily develops video games or related software (such as game development tools). A programmer is someone who writes Computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist A video game is a Game that involves interaction with a User interface to generate visual feedback on a video device. A game development tool is a specialized Software application that assists or facilitates the making of a computer or video game. Game programming has many specialized disciplines; practitioners of any may regard themselves as "game programmers". Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. A game programmer should not be confused with a game designer; many designers are also programmers, but not all are, and it is rare for one person to serve both roles in modern professional games. A "game designer" is a person who designs Video games or one who designs traditional games such as Board games Video Games Designer A video game designer

Contents

History

The Apple II series was a popular game platform during the early home computer era.  Despite being outperformed by later systems, it remained popular until the early 1990s.
The Apple II series was a popular game platform during the early home computer era. A personal computer Game (also known as a computer game or simply PC game) is a Video game played on a Personal computer, rather A home computer was a class of Personal computer entering the market in 1977 and becoming common during the 1980s Despite being outperformed by later systems, it remained popular until the early 1990s. The 1990s collectively refers to the years between and including 1990 and 1999

In the early days of video games (from the early 1970s to mid-1980s), a game programmer also took on the job of a designer and artist. This article is about the Decade 1970-1979 For the Year 1970 see 1970. The 1980s was the decade spanning from January 1 1980 to December 31 1989. A game artist is an Artist who creates art for one or more types of Games Game artists are responsible for all of the aspects of Game development that call This was generally because the abilities of early computers were so limited that having specialized personnel for each function was unnecessary. A computer is a Machine that manipulates data according to a list of instructions. Game concepts were generally light and games were only meant to be played for a few minutes at a time, but more importantly, art content and variations in gameplay were constrained by computers' limited power.

Later, as specialized arcade hardware and home systems became more powerful, game developers could develop deeper storylines and could include such features as high-resolution and full color graphics, physics, advanced artificial intelligence and digital sound. An arcade game is a coin-operated entertainment machine typically installed in businesses such as Restaurants Pubs Video arcades and Family Entertainment Hardware is a general term that refers to the physical artifacts of a Technology. A home computer was a class of Personal computer entering the market in 1977 and becoming common during the 1980s Physics (Greek Physis - φύσις in everyday terms is the Science of Matter and its motion. Digital audio uses Digital signals for Sound reproduction. This includes analog-to-digital conversion, digital-to-analog conversion, storage Technology has advanced to such a great degree that contemporary games usually boast 3D graphics and full motion video using assets developed by professional graphic artists. 3D computer graphics (in contrast to 2D computer graphics) are graphics that use a three-dimensional representation of geometric data that is stored in the computer Full motion video based games, usually abbreviated as FMV-based games, are Video games that rely upon pre-recorded TV -quality movie or A graphic designer (also known as a graphic artist and communication designer) is a professional within the Graphic design and Graphic arts industry

The desire for adding more depth and assets to games necessitated a division of labor. Division of labour or specialization is the specialization of cooperative labour in specific circumscribed tasks and roles intended to increase the Productivity Initially, art production was relegated to fulltime artists. A game artist is an Artist who creates art for one or more types of Games Game artists are responsible for all of the aspects of Game development that call Next game programming became a separate discipline from game design. Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. Game design is the process of designing the content and rules of a Game. Now, only some games, such as the puzzle game Bejeweled, are simple enough to require just one fulltime programmer. Puzzle video games are a genre of Video games that emphasize Puzzle solving Bejeweled is a Puzzle game by PopCap Games, first developed for the browser in 2001. Despite this division, however, most game developers (artists, programmers and even producers) have some say in the final design of contemporary games. A game producer is the person in charge of overseeing development of a Video game.

Disciplines

A contemporary computer game may include advanced physics, artificial intelligence, 3D graphics, digitized sound, an original musical score, complex strategy and may use several input devices (such as mice, keyboards, gamepads and joysticks) and may be playable against other people via the Internet or over a LAN. In Computing, a mouse (plural mice, mouse devices, or mouses) In Computing, a keyboard is an Input device partially modelled after the typewriter keyboard which uses an arrangement of buttons or keys A gamepad, also called joypad or control pad, is a type of Game controller held in the hand where the digits (especially thumbs are used to provide input A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling The Internet is a global system of interconnected Computer networks Each aspect of the game can consume all of one programmer's time and, in many cases, several programmers. Some programmers may specialize in one area of game programming, but many are familiar with several aspects. Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. The number of programmers needed for each feature depends somewhat on programmers' skills, but mostly are dictated by the type of game being developed.

Game physics programmer

A game's physics programmer is dedicated to developing the physics a game will employ. Physics (Greek Physis - φύσις in everyday terms is the Science of Matter and its motion. Typically, a game will only simulate a few aspects of real-world physics. For example, a space game may need simulated gravity, but would not have any need for simulating water viscosity. Gravitation is a natural Phenomenon by which objects with Mass attract one another Viscosity is a measure of the resistance of a Fluid which is being deformed by either Shear stress or Extensional stress.

Since processing cycles are always at a premium, physics programmers may employ "shortcuts" that are computationally inexpensive, but look and act "good enough" for the game in question. Sometimes, a specific subset of situations is specified and the physical outcome of such situations are stored in a record of some sort and are never computed at runtime at all.

Some physics programmers may even delve into the difficult tasks of inverse kinematics and other motions attributed to game characters, but increasingly these motions are assigned via motion capture libraries so as not to overload the CPU with complex calculations. Inverse kinematics is the process of determining the parameters of a jointed flexible object (a Kinematic chain) in order to achieve a desired pose Motion capture, motion tracking, or mocap are terms used to describe the process of recording movement and translating the movement onto a digital model

For a role-playing game such as Might and Magic, only one physics programmer may be needed. A role-playing game ( RPG; often roleplaying game) is a Game in which the participants assume the roles of Fictional characters. Might and Magic ( MM) is a series of Computer role-playing games from New World Computing, which in 1996 became a subsidiary of For a complex combat game such as Battlefield 1942, teams of several physics programmers may be required. Battlefield 1942 is a 3D World War II First-person shooter (FPS Computer game developed by Swedish company Digital

See also: dynamical simulation

Artificial intelligence programmer

An AI programmer develops the logic the game uses to carry out a large number of actions. Dynamical simulation, in Computational physics, is the Simulation of systems of objects that are free to move usually in three dimensions according to Newton's It has recently evolved into a specialized discipline, as these tasks used to be implemented by programmers who specialized in other areas. An AI programmer may program pathfinding, strategy and enemy tactic systems. Pathfinding is a term used mostly by computer applications to plot the best route from point A to point B This is one of the most challenging aspects of game programming and its sophistication is developing rapidly. According to Game Developer Magazine, many contemporary games dedicate sixty percent of their programming staff to AI. Game Developer magazine is a Monthly trade Periodical for the Video game industry.

Some games, such as strategy games like Civilization III or role-playing games such as The Elder Scrolls IV: Oblivion, use AI heavily, while others, such as puzzle games, use it sparingly or not at all. A strategy game is a Game (eg computer, video or Board game) in which the players' decision-making skills have a high significance Sid Meier's Civilization III is a turn-based strategy Computer game by Firaxis Games, the sequel to Sid Meier's Civilization II A computer role-playing game ( CRPG) is a broad Video game genre originally developed for personal computers and other home computers The Elder Scrolls IV Oblivion is a Single player Fantasy -themed action-oriented Computer role-playing game developed by Bethesda Game Studios Puzzle video games are a genre of Video games that emphasize Puzzle solving Many game developers have created entire languages that can be used to program their own AI for games via scripts. A programming language is an Artificial language that can be used to write programs which control the behavior of a machine particularly a Computer. "Scripting" redirects here For other uses see Script. These languages are typically less technical than the language used to implement the game, and will often be used by the game or level designers to implement the world of the game. Many studios also make their games' scripting available to players, and it is often used extensively by third party mod developers. Mod or modification is a term generally applied to Computer games especially First-person shooters RPGs and Real-time strategy games

Game AI programming should not be confused with academic AI programming and research: game programming has little use for developments in this area of study. Game artificial intelligence refers to techniques used in computer and video games to produce the Illusion of intelligence in the behavior of Non-player Although both areas do borrow from each other from time to time, they are usually considered distinct disciplines.

Graphics programmer

Historically, this title usually belonged to a programmer who developed specialized blitter algorithms and clever optimizations for 2D graphics. Bit blit ( bitblt, blitting etc is a Computer graphics operation in which several Bitmap patterns are combined into one using a "raster 2D computer graphics is the Computer -based generation of Digital images mdashmostly from two-dimensional models (such as 2D geometric models text and digital Today, however, it is almost exclusively applied to programmers who specialize in developing and modifying complex 3D graphic renderers. Some 2D graphics skills have just recently become useful again, though, for developing games for the new generation of cell phones, PDAs and handheld game consoles. A handheld game console is a lightweight portable electronic machine for playing Video games Unlike Video game consoles the controls screen and speakers

A 3D graphics programmer must have a firm grasp on advanced mathematical concepts such as vector and matrix math, quaternions and linear algebra. In Mathematics, a matrix (plural matrices) is a rectangular table of elements (or entries) which may be Numbers or more generally Quaternions, in Mathematics, are a non-commutative extension of Complex numbers They were first described by the Irish Mathematician Linear algebra is the branch of Mathematics concerned with

Programmers specializing in this area of game development can demand high wages and are usually a scarce commodity. Game development is the process by which a Game is produced Today this term most commonly refers to the development of Video games Overview Development Their skills can be used for computer games as well as games for game consoles such as the PlayStation 3, Wii and the Xbox 360. The Xbox 360 is the second Video game console produced by Microsoft, and was developed in cooperation with IBM, ATI, and SiS.

A 3D graphics programmer may also specialize in a subset of 3D graphics programming, such as pixel shaders or vertex shaders. A pixel shader is a shader program often executed on a Graphics processing unit. Vertex shader (abbreviation VS) is a shader program normally executed on the Graphics processing unit.

Sound programmer

Not always a separate discipline, sound programming has been a mainstay of game programming since the days of Pong. Pong is a first generation Video game released originally as a Coin -operated Arcade game by Atari Inc Most games make use of audio, and many have a full musical score. Computer audio games eschew graphics altogether and use sound as their primary feedback mechanism. An audio game is a Game played on an Electronic device such as—but not limited to—a Personal computer.

Many games use advanced techniques such as 3D positional sound, making audio programming a non-trivial matter. 51, Multichannel audio, Multichannel music Surround 3D Surround 5 With these games, one or two programmers may dedicate all their time to building and refining the game's sound engine, and sound programmers may be trained or have a formal background in digital signal processing. Digital signal processing ( DSP) is concerned with the representation of the signals by a sequence of numbers or symbols and the processing of these signals

Scripting tools are often created and/or maintained by sound programmers for use by sound designers. Sound design is a technical/conceptually creative field It covers all non-compositional elements of a film a play a music performance These tools allow designers to associate sounds with characters, actions, objects and events while also assigning music or atmospheric sounds for game environments (levels or areas) and setting environmental variables such as reverberation.

Gameplay programmer

Though all programmers add to the content and experience that a game provides, a gameplay programmer focuses more on a game's strategy and the "feel" of a game. This is usually not a separate discipline, as what this programmer does usually differs from game to game, and they will inevitably be involved with more specialized areas of the game's development such as graphics or sound.

This programmer may implement strategy tables, tweak input code, or adjust other factors that alter the game. Many of these aspects may be altered by programmers who specialize in these areas, however (for example, strategy tables may be implemented by AI programmers).

Scripter

In early computer games, gameplay programmers would write code to create all the content in the game — if the player was supposed to shoot a particular monster, and a red key was supposed to appear along with some text on the screen, then this functionality was all written in C or assembly language by a gameplay programmer. tags please moot on the talk page first! --> In Computing, C is a general-purpose cross-platform block structured See the terminology section below for information regarding inconsistent use of the terms assembly and assembler

These days, large game projects have a team of scripters to implement this sort of game content. Scripters usually are also game designers, and it is easier to find and employ a qualified game designer who can be taught a script language, as opposed to the difficulty of finding a qualified game designer who has mastered C++ on the target platform. "Scripting" redirects here For other uses see Script. C++ (" C Plus Plus " ˌsiːˌplʌsˈplʌs is a general-purpose Programming language.

UI programmer

This programmer specializes in programming user interfaces (UIs) for games. The user interface (or Human Computer Interface) is the aggregate of means by which people&mdash the users '&mdash interact with the System Though some games have custom user interfaces, this programmer is more likely to develop a library that can be used across multiple projects. In Computer science, a library is a collection of Subroutines used to develop Software. Most UIs look 2D, though contemporary UIs usually use the same 3D technology as the rest of the game so some knowledge of 3D math and systems is helpful for this role. Advanced UI systems may allow scripting and special effects, such as transparency, animation or particle effects for the controls.

Input programmer

The joystick was the primary input device for 1980s era games.  Now game programmers must account for a wide range of input devices, but the joystick today is supported in relatively few games, though still dominant for flight simulators.
The joystick was the primary input device for 1980s era games. A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling The 1980s was the decade spanning from January 1 1980 to December 31 1989. Now game programmers must account for a wide range of input devices, but the joystick today is supported in relatively few games, though still dominant for flight simulators. A flight simulator is a system that tries to copy or simulate, the experience of flying an aircraft

Input programming, while usually not a job title, or even a full-time position on a particular game project, is still an important task. This programmer writes the code specifying how input devices such as a keyboard, mouse or joystick affect the game. In Computing, a keyboard is an Input device partially modelled after the typewriter keyboard which uses an arrangement of buttons or keys These routines are typically developed early in production and are continually tweaked during development. Normally, one programmer does not need to dedicate his entire time to developing these systems. A first person shooter such as Quake may need a very complex and low latency input system, while the needs of a turn-based strategy game such as Heroes of Might and Magic are much lower. A first-person shooter ( FPS) is an action Video game from the Shooter game The initial development of Maze War Quake is a First-person shooter Computer game that was released by Id Software on June 22, 1996. Heroes of Might and Magic is a series of Video games created by New World Computing.

Network programmer

This programmer writes code that allows players to compete against each other (or play together) connected via a LAN or the Internet (or in rarer cases, directly connected via modem). The Internet is a global system of interconnected Computer networks Modem (from mo dulator- dem odulator is a device that modulates an analog carrier signal to encode Digital information Programmers implementing this feature of a game can spend all their time on this one task. Network programming is one of the most challenging game programming roles. These programmers have to deal with network latency, packet compression, and dropped or interrupted connections. In Computing and especially Computer networks lag (slang is a symptom where the result of an action appears later than expected Though this type of programming can consume the entire development process, network programming is often put off until the last few months of development, adding additional difficulties to this role.

Game tools programmer

One of the less recognized members of the development team, the tools programmer can make game development heaven or unbearably difficult. Tools are used on almost every game for tasks such as scripting, importing or converting art, modifying behaviors or building levels. A game development tool is a specialized Software application that assists or facilitates the making of a computer or video game. Some tools, such as an IDE, 3D graphics modeling software and Photoshop are COTS products, but many tools are specific to the game and are custom programmed. In Computing, an integrated development environment ( IDE) is a Software application that provides comprehensive facilities to Computer programmers Commercial off-the-shelf ( COTS) is a term for Software or Hardware, generally technology or computer products that are ready-made and available for sale

It is the tools programmer's job to write the tools that handle these game-specific tasks. Some tools will be included with the game, but most will not. Most tools evolve with the game and can easily consume all of several programmers' time. Well written and fairly bug-free tools make everyone's development tasks easier. Poorly written or poorly documented ones can seriously hamper development and jeopardize the project. Due to time constraints, however, many tools are not carefully implemented.

Porting programmer

Porting a game from one platform to another has always been an important activity for game developers. See also Software portability In Computer science, porting is the process of adapting software so that an executable program can be created An operating system (commonly abbreviated OS and O/S) is the software component of a Computer system that is responsible for the management and coordination Some programmers specialize in this activity, converting code from one operating system to work on another. In Computer science, source code (commonly just source or code) is any sequence of statements or declarations written in some Human-readable Sometimes, the programmer is responsible for making the application work not for just one operating system, but on a variety of devices, such as mobile phones. Often, however, "porting" can involve re-writing the entire game from scratch as proprietary languages, tools or hardware make converting source code a fruitless endeavor. A programming language is an Artificial language that can be used to write programs which control the behavior of a machine particularly a Computer.

This programmer must be familiar with both the original and target operating systems and languages (for example, converting a game originally written in C++ to Java), convert assets, such as artwork and sounds or rewrite code for low memory phones. C++ (" C Plus Plus " ˌsiːˌplʌsˈplʌs is a general-purpose Programming language. This programmer may also have to side-step buggy language implementations, some with little documentation, refactor code, oversee multiple branches of code, rewrite code to scale for wide variety of screen sizes and implement special operator guidelines. They may also have to fix bugs that were not discovered in the original release of a game.

Technology programmer

The technology programmer is more likely to be found in larger development studios with specific departments dedicated solely to R&D. The phrase research and development (also R and D or more often R&D) according to the Organization for Economic Co-operation and Development, refers Unlike other members of the programming team, the technology programmer usually isn't tied to a specific project or type of development for an extended length of time, and they will typically report directly to a CTO or department head rather than a game producer. As the job title implies, this position is extremely demanding from a technical perspective and requires intimate knowledge of the target platform hardware. Tasks cover a broad range of subjects including the practical implementation of algorithms described in research papers, very low-level assembly optimization and the ability to solve challenging issues pertaining to memory requirements and caching issues during the latter stages of a project. There is considerable amount of cross-over between this position and some of the others, particularly the graphics programmer.

Lead game programmer

The lead programmer is ultimately in charge of all programming for the game. It is their job to make sure the various submodules of the game are being implemented properly and to keep track of development from a programming standpoint. A person in this role usually transitions from other aspects of game programming to this role after several years of experience. Despite the title, this person usually has less time for writing code than other programmers on the project as they are required to attend meetings and interface with the client or other leads on the game. However, the lead programmer is still expected to program at least some of the time and is also expected to be knowledgeable in most technical areas of the game. There is often considerable common ground in the role of technical director and lead programmer, such that the jobs are often covered by one person.

Platforms

The PlayStation 3 is one of the platforms for which a game programmer may specialize.  It is rare to "specialize" in more than one platform, but programmers who specialize in portable disciplines such as AI may find their experience is transferrable to several platforms.
The PlayStation 3 is one of the platforms for which a game programmer may specialize. It is rare to "specialize" in more than one platform, but programmers who specialize in portable disciplines such as AI may find their experience is transferrable to several platforms.

Most game programmers specialize on one platform or another. For example, a programmer can specialize on the PlayStation 3, Xbox 360 or Windows. The Xbox 360 is the second Video game console produced by Microsoft, and was developed in cooperation with IBM, ATI, and SiS. Microsoft Windows is a series of Software Operating systems and Graphical user interfaces produced by Microsoft. So, in addition to specializing in one game programming discipline, a programmer may also specialize in development on a certain platform. Therefore, one game programmer's title might be "PlayStation 3 3D Graphics Programmer. " Some disciplines, such as AI, are transferable to various platforms and needn't be tailored to one system or another. Also, general game development principles such as 3D graphics programming concepts, sound engineering and user interface design are naturally transferable between platforms.

Experience needed

Notably, there are many game programmers with no formal education in the subject, having started out as hobbyists and doing a great deal of programming on their own, for fun, and eventually succeeding because of their aptitude and homegrown experience. However, most job solicitations for game programmers specify a bachelor's degree (in mathematics, physics, computer science, "or equivalent experience").

Increasingly, universities are starting to offer courses and degrees in game programming. A university is an institution of Higher education and Research, which grants Academic degrees in a variety of subjects Any such degrees should offer a well-rounded education that includes all the fundamentals of software engineering. Software engineering is the application of a systematic disciplined quantifiable approach to the development operation and maintenance of Software.

Compensation

Salaries for game programmers vary from company to company and country to country. In general, however, pay for game programming is generally about the same for comparable jobs in the business sector. This is despite the fact that game programming is some of the most difficult of any type and usually requires longer hours than mainstream programming. However, most game programmers feel it is worth the sacrifice for the fun and casual working environments. Results of a 2007 survey indicate that the average salary for a game programmer is USD$83,383 annually. The United States dollar ( sign: $; code: USD) is the unit of Currency of the United States; it has also been The least experienced programmers (with less than 3 years experience) generally earn about $57,665, while developers with over six years experience on average earn $94,525. [1]

Generally, lead programmers are the most well compensated, though some 3D graphics programmers may challenge or surpass their salaries. According to the same survey above, lead programmers on average earn $103,409 annually. [1]

A controversial subject in the game industry recently has been the issue of unpaid overtime, particularly as highlighted in a blog entry by EA Spouse,[2] who described some of the darker aspects of working in the industry. EA Spouse is the name commonly used to refer to a Blog post originally made on November 11, 2004 to LiveJournal. At some companies (the blog entry targeted Electronic Arts specifically), "crunch time" (a period where programmers will often work around the clock to finish a project) has become the expected norm through the whole development cycle. This is not true of all companies however, and many game studios provide excellent working environments and conditions.

Job security

Though sales of video games rival other forms of entertainment such as movies, the video game industry is extremely volatile. The video game industry (formally referred to as Interactive entertainment) is the economic sector involved with the development, Marketing Game programmers are not insulated from this instability as their employers experience financial difficulty.

Third-party developers, the most common type of video game developers, depend upon a steady influx of funds from the video game publisher. A video game developer is a software developer (a business or an individual that creates Video games A developer may specialize in a certain video A video game publisher is a company that publishes Video games that they have either developed internally or have had developed by a Video game developer If a milestone or deadline is not met (or for a host of other reasons, like the game is cancelled), funds may become short and the developer may be forced to retrench employees or declare bankruptcy and go out of business. Bankruptcy is a legally declared inability or impairment of ability of an individual or organization to pay their Creditors Creditors may file a bankruptcy petition against Game programmers who work for large publishers are somewhat insulated from these circumstances, but even the large game publishers can go out of business (as when Hasbro Interactive was sold to Infogrames and several projects were cancelled; or when The 3DO Company went bankrupt in 2003 and ceased all operations). Hasbro Interactive was a video game production and publishing subsidiary of Hasbro, the large Game and Toy company Infogrames Entertainment SA ( IESA) ( is an international Holding company headquartered in Villeurbanne, Lyon, France. The 3DO Company (formerly THDO on the NASDAQ stock exchange also known as 3DO, was a Video game console developer and third-party game Year 2003 ( MMIII) was a Common year starting on Wednesday of the Gregorian calendar. Some game programmers' resumes consist of short stints lasting no more than a year as they're forced to leap from one doomed studio to another. This is why some prefer to consult and are therefore somewhat shielded from the effects of the fates of individual studios.

Languages and tools

Microsoft Visual Studio is one of the tools (an IDE) that game programmers may use to build games for Windows or the Xbox.
Microsoft Visual Studio is one of the tools (an IDE) that game programmers may use to build games for Windows or the Xbox. Microsoft Corporation is an American multinational Computer technology Corporation, which rose to dominate the Home computer Microsoft Visual Studio is the main Integrated Development Environment (IDE from Microsoft. In Computing, an integrated development environment ( IDE) is a Software application that provides comprehensive facilities to Computer programmers Microsoft Windows is a series of Software Operating systems and Graphical user interfaces produced by Microsoft. The Xbox is a sixth-generation Video game console produced by Microsoft Corporation.

Most commercial computer and video games are written primarily in C++, C, and some assembly language. C++ (" C Plus Plus " ˌsiːˌplʌsˈplʌs is a general-purpose Programming language. tags please moot on the talk page first! --> In Computing, C is a general-purpose cross-platform block structured See the terminology section below for information regarding inconsistent use of the terms assembly and assembler Many games, especially those with complex interactive gameplay mechanics, tax hardware to its limit. As such, highly optimized code is required for these games to run at an acceptable frame rate. Because of this, compiled code is typically used for performance-critical components, such as visual rendering and physics calculations. A compiler is a Computer program (or set of programs that translates text written in a computer language (the source language) into another Almost all PC games also use either the DirectX or OpenGL APIs (or SDL) to interface with hardware devices. IBM PC compatible computers are those generally similar to the original IBM PC, XT, and AT. Microsoft DirectX is a collection of Application programming interfaces (APIs for handling tasks related to Multimedia, especially Game programming and OpenGL ( Open G raphics L ibrary is a standard specification defining a cross-language Cross-platform API for writing applications that produce Simple DirectMedia Layer ( SDL) is a cross-platform Free and open source software multimedia library written in C that presents a simple interface Xbox games use an API similar to DirectX. The Xbox is a sixth-generation Video game console produced by Microsoft Corporation. Microsoft DirectX is a collection of Application programming interfaces (APIs for handling tasks related to Multimedia, especially Game programming and

Various script languages are also used for the generation of content such as artwork and especially AI. "Scripting" redirects here For other uses see Script. Scripts are generally parsed at load time (when the game or level is loaded into main memory) and then executed at runtime (via logic branches or other such mechanisms). In Computer science and Linguistics, parsing, or more formally syntactic analysis, is the process of analyzing a sequence of tokens to They are generally not executed by an interpreter, which would result in much slower execution. In Computer science, an interpreter normally means a Computer program that executes, i Scripts tend to be used selectively, often for content design and high-level game logic. Some games are designed with high depedency on scripts and some scripts are compiled to binary format before game execution. In the optimization phase of development, some script functions will often be rewritten in a compiled language.

Java is used for many web browser based games because it is cross-platform, does not usually require installation by the user, and does not pose security risks, as may a downloaded executable program. A web browser is a software application which enables a user to display and interact with text images videos music games and other information typically located on a In computing cross-platform (also known as multi-platform) is a term used to refer to Computer software or computing methods and concepts that are implemented This article describes how security can be achieved through design and engineering Java is also the dominant language for mobile phone based games. Adobe Flash is also a popular development tool for browser-based games using the ActionScript language (there is some debate as to whether Flash actually constitutes a "language," but it is a popular web-based game development medium). Adobe Flash (previously called Shockwave Flash and Macromedia Flash) is a set of Multimedia software created by Macromedia and currently

As games have grown in size and complexity, middleware is becoming increasingly popular with the industry. Middleware is computer Software that connects Software components or applications Middleware provides greater and higher level functionality and larger feature sets than the standard lower level APIs such as DirectX and OpenGL, such as skeletal animation. Microsoft DirectX is a collection of Application programming interfaces (APIs for handling tasks related to Multimedia, especially Game programming and OpenGL ( Open G raphics L ibrary is a standard specification defining a cross-language Cross-platform API for writing applications that produce Skeletal animation, sometimes referred to as rigging is a technique in Computer animation, particularly in the animation of Vertebrates, in which a character is represented In addition to providing more complex technologies, some middleware also makes reasonable attempts to be platform independent, making common conversions from, for example, PC to PS2 much easier. In computing cross-platform (also known as multi-platform) is a term used to refer to Computer software or computing methods and concepts that are implemented Essentially, middleware is aimed at cutting out as much of the redundancy in the development cycle as possible (for example, writing new animation systems for each game a studio produces), allowing programmers to focus on new content.

Other tools are also essential to game developers: 2D and 3D packages (for example Photoshop, Maya or 3D Studio Max) enable programmers to view and modify assets generated by artists or other production personnel. Maya is a high-end 3D computer graphics and 3D modeling software package originally developed by Alias Systems Corporation, but now owned by 3ds Max (formerly 3D Studio MAX) is a modeling animation and rendering package developed by Autodesk Media and Entertainment. Source control systems keep source code safe, secure and optimize merging. Revision control (also known as version control (system (VCS, source control or (source code management (SCM) is the management of multiple revisions In Computer science, source code (commonly just source or code) is any sequence of statements or declarations written in some Human-readable IDEs with debuggers (such as Visual Studio) make writing code and tracking down bugs a less painful experience. In Computing, an integrated development environment ( IDE) is a Software application that provides comprehensive facilities to Computer programmers A debugger is a Computer program that is used to test and Debug other programs Microsoft Visual Studio is the main Integrated Development Environment (IDE from Microsoft.

See also: Game development tool and Tools from game programming

Notable game programmers

A few game programmers have garnered renown among game developers and game players alike. A game development tool is a specialized Software application that assists or facilitates the making of a computer or video game. Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. Below is a list of notable people who work or have worked in the Video game industry, on video or Computer games The list is divided into different roles but

See also

References

  1. ^ a b Fleming, Jeffrey (April 2008). Jordan Mechner (born 1964 is a Game programmer, Game designer, Screenwriter and Movie director. Prince of Persia is an action-adventure Video game series created by Jordan Mechner. Sidney K Meier (born February 24 1954 in Sarnia, Ontario, Canada) is an American programmer and designer of several Sid Meier's Civilization is a Turn-based strategy computer game created by Sid Meier for MicroProse in 1991 Sid Meier's Pirates! is a Computer game created by Sid Meier published by MicroProse in 1987 Railroad Tycoon is a business simulation designed by Sid Meier. Alan Miller is a pioneering and influential figure in the Video game industry. A video game publisher is a company that publishes Video games that they have either developed internally or have had developed by a Video game developer The Atari 2600 is a Video game console released in October 1977 Jeff 'Yak' Minter (born in Reading, April 22 1962) is a British computer / Video game designer and programmer Jeff 'Yak' Minter (born in Reading, April 22 1962) is a British computer / Video game designer and programmer Chris Sawyer is a Scottish computer game developer who is best-known for designing and programming RollerCoaster Tycoon Transport Tycoon ( TT) and Transport Tycoon Deluxe ( TTD) are computer games developed by RollerCoaster Tycoon (or often abbreviated RCT) is a series of Computer games that simulate Amusement park Tim Sweeney is a Computer game programmer and the founder of Epic Games, and is best known for his work on ZZT and the Unreal engine The Unreal Engine is a popular Game engine developed by Epic Games. ZZT is an ANSI -based computer game, created in 1991 by Tim Sweeney, of Epic Games (then Epic Megagames who later Anne Westfall is an influential Game programmer of the 1980s She is the wife of fellow game programmer Game designer and Entrepreneur Jon Freeman A home computer was a class of Personal computer entering the market in 1977 and becoming common during the 1980s Archon (Gr ἄρχων pl ἄρχοντες is a Greek word that means "ruler" frequently used as the title of a specific public office William Wright (born January 20 1960 in Atlanta Georgia) is an American computer Game designer and co-founder of This is a complete list of " Sim " games, their expansion packs and compilations SimCity is a city-building simulation game, first released in 1989 and designed by Will Wright. The Sims is a strategic life-simulation computer game developed by Maxis and published by Electronic Arts. For the phrase on which this program's title is based see Code monkey. "7th Annual Salary Survey". Game Developer 15 (4): 8. Game Developer magazine is a Monthly trade Periodical for the Video game industry. United Business Media.  
  2. ^ EA: The Human Story, ea_spouse entry on LiveJournal

External links

v  d  e
Video game industry
ActivitiesJobsTypes of video gamesCompanies
Game design
Game development
Game programming
Game testing
Journalism
Level design
Game producer
Game designer
Game programmer
Game artist
Game tester
Level designer
Arcade game
Computer game
Console game
Handheld game
Video game developer
Video game publisher
List of video game companies
List of publishers
Lists of video games
List of video game industry people
LiveJournal (often abbreviated LJ) is a Virtual community where Internet users can keep a Blog, Journal or Diary. Eurocom is also the name of an Israeli telecommunications company and a Canadian Computer maker The video game industry (formally referred to as Interactive entertainment) is the economic sector involved with the development, Marketing Game design is the process of designing the content and rules of a Game. Game development is the process by which a Game is produced Today this term most commonly refers to the development of Video games Overview Development Game programming, a subset of Game development, is the Programming of computer, console or Arcade games. Game testing refers to the process of Software testing for Video games The formal process performed by professional Game testers begins well into Video game journalism is a branch of Journalism concerned with the reporting and discussion of Video games. Level design or game mapping is the creation of levels mdashlocales stages or missions&mdashfor a Video game (such as a Console game or A game producer is the person in charge of overseeing development of a Video game. A "game designer" is a person who designs Video games or one who designs traditional games such as Board games Video Games Designer A video game designer A game artist is an Artist who creates art for one or more types of Games Game artists are responsible for all of the aspects of Game development that call A game tester analyzes Video games to document software defects as part of a Quality control process in Video game development. A level designer is a person who creates levels challenges or missions for computer and/or Video games using a specific set of programs These An arcade game is a coin-operated entertainment machine typically installed in businesses such as Restaurants Pubs Video arcades and Family Entertainment A personal computer Game (also known as a computer game or simply PC game) is a Video game played on a Personal computer, rather This article is about games played on consoles Video gaming is about this form of gaming in general A handheld video game is a Video game designed for a handheld device A video game developer is a software developer (a business or an individual that creates Video games A developer may specialize in a certain video A video game publisher is a company that publishes Video games that they have either developed internally or have had developed by a Video game developer This is a list of companies that have made Video games for either computers or video game consoles and includes both companies that currently exist as well as now-defunct companies This is a list of video and computer game publishers, past and present This is a list of all Video game lists that can be found on Wikipedia. Below is a list of notable people who work or have worked in the Video game industry, on video or Computer games The list is divided into different roles but
© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
Dapyx Software network: MP3 Explorer | Ebook Manager | Zenithic