ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building...

12
ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 TERRAIN RENDERING COMPOSITE TEXTURES OBSTACLE AVOIDANCE Bill White will present an overview of several tutorials and panel discussions that took place at SIGGRAPH 2000 concerning research directions for the computer and video gaming industry. RESEARCH DIRECTIONS IN COMPUTER & VIDEO GAMES

Transcript of ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building...

Page 1: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

ACM STUDENT CHAPTER MEETING!

WednesdaySeptember 20, 2000

2:00 – 3:00 PMEngineering Building

0012

TERRAIN RENDERING

COMPOSITE TEXTURES

OBSTACLE AVOIDANCE

Bill White will present an overview of several tutorials and panel discussions that took place at SIGGRAPH 2000 concerning research directions for the computer and video gaming industry.

RESEARCH DIRECTIONS INCOMPUTER & VIDEO GAMES

Page 2: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

The video gaming industry is booming!The video gaming industry is booming!

This year, for the first time, computer and video game revenue in the U.S. will exceed feature film revenue!

This year, for the first time, computer and video game revenue in the U.S. will exceed feature film revenue!

Cinema-quality graphics have been achieved in affordable platforms, driven by advances in processor and memory technology.

Cinema-quality graphics have been achieved in affordable platforms, driven by advances in processor and memory technology.

Page 3: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Where does computer graphics fit in?Where does computer graphics fit in?

Unfortunately, like the film industry, the computer game industry has limited resources (particularly time) for R&D.

Unfortunately, like the film industry, the computer game industry has limited resources (particularly time) for R&D.

It relies instead on academia and game platform developers to provide the research that results in game advances.

It relies instead on academia and game platform developers to provide the research that results in game advances.

Page 4: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

What’s so different about games research?What’s so different about games research?The momentum for graphics research in the past

has come from applications in the film industry and the scientific community.

The momentum for graphics research in the past has come from applications in the film industry and the scientific community.

Prioritized: High quality images Massive data sets

Prioritized: High quality images Massive data sets

Deprioritized: Real-time processing Inexpensive platform

Deprioritized: Real-time processing Inexpensive platform

Graphics research is being increasingly propelled by the video gaming and virtual reality industries.

Graphics research is being increasingly propelled by the video gaming and virtual reality industries.Prioritized: High quality images Massive data sets

Prioritized: High quality images Massive data sets

Reprioritized: Real-time processing Inexpensive platform

Reprioritized: Real-time processing Inexpensive platform

Page 5: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Problem Area #1: Scene ComplexityProblem Area #1: Scene ComplexityUnlike the simple games of yesteryear, modern games require multiple characters interacting in elaborate environments, with independent motion and (hopefully) realistic levels of detail.

Unlike the simple games of yesteryear, modern games require multiple characters interacting in elaborate environments, with independent motion and (hopefully) realistic levels of detail.

Approach A:Brute force modeling of vast numbers of polygons.

Problem:Serious processing.

Approach A:Brute force modeling of vast numbers of polygons.

Problem:Serious processing.

Approach B:Fast-processing, low-memory NURBS models of surfaces.

Problem:Counterintuitive modeling.

Approach B:Fast-processing, low-memory NURBS models of surfaces.

Problem:Counterintuitive modeling.

Approach C:Progressive meshes for continuous level-of-detail.

Problem:Smooth interpolation.

Approach C:Progressive meshes for continuous level-of-detail.

Problem:Smooth interpolation.

Page 6: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Brute Force Large Poly-Count DisplayBrute Force Large Poly-Count Display

Tens of thousands of polygons rendered at once.

Tens of thousands of polygons rendered at once.

The vertices of distant polygons might be merged to make larger, less detailed polygons.

The vertices of distant polygons might be merged to make larger, less detailed polygons.

Active polygon list must be continually updated as player navigates playing field.

Active polygon list must be continually updated as player navigates playing field.

Page 7: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

70,000triangles

30,000vertices

153 patches

NURBS Surface ModelingNURBS Surface Modeling

Large models can be effectively stored in a fraction of the space and processed in a fraction of the time as polygonal models.

Large models can be effectively stored in a fraction of the space and processed in a fraction of the time as polygonal models.

Developing the vertex sets for such models is rather elaborate and counterintuitive.

Developing the vertex sets for such models is rather elaborate and counterintuitive.

Page 8: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Continuous Level-of-DetailContinuous Level-of-Detail

Rather than using a single polygonal model for each object, use multiple models, displaying the more detailed one when the object is closer to the viewer.

Rather than using a single polygonal model for each object, use multiple models, displaying the more detailed one when the object is closer to the viewer.Artists are encouraged to composite multiple texture maps, to improve run-time performance by reducing retrieval time.

Artists are encouraged to composite multiple texture maps, to improve run-time performance by reducing retrieval time.This intensifies the problem of texture seams where the texture has been stitched together.

This intensifies the problem of texture seams where the texture has been stitched together.

Page 9: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Problem Area #2: Realistic

Behavior

Problem Area #2: Realistic

BehaviorHaving characters and objects within the game environment behave “appropriately” is a particular challenge to game developers.

Having characters and objects within the game environment behave “appropriately” is a particular challenge to game developers.

Physics in Games How to efficiently program the laws of physics into a game?

Physics in Games How to efficiently program the laws of physics into a game?

Emotion SynthesisHow to mimic human behavior so characters not controlled by the player react in a seemingly emotional fashion?

Emotion SynthesisHow to mimic human behavior so characters not controlled by the player react in a seemingly emotional fashion?

Steering Behavior How to get large numbers of characters to behave like a group of individuals?

Steering Behavior How to get large numbers of characters to behave like a group of individuals?

Page 10: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Physics in GamesPhysics in GamesPhysics in GamesPhysics in GamesYears of research in the field Years of research in the field

of scientific visualization of scientific visualization have yielded several efficient have yielded several efficient methods for rendering rigid methods for rendering rigid bodies and fluid dynamics.bodies and fluid dynamics.

Years of research in the field Years of research in the field of scientific visualization of scientific visualization

have yielded several efficient have yielded several efficient methods for rendering rigid methods for rendering rigid bodies and fluid dynamics.bodies and fluid dynamics.

Everything gets a bit more complex when the game Everything gets a bit more complex when the game player is allowed to interact with the environment player is allowed to interact with the environment

at will.at will.

Everything gets a bit more complex when the game Everything gets a bit more complex when the game player is allowed to interact with the environment player is allowed to interact with the environment

at will.at will.

Page 11: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Steering BehaviorSteering BehaviorSteering BehaviorSteering BehaviorSome game objects (enemy starfighters, attacking dinosaurs, Some game objects (enemy starfighters, attacking dinosaurs, etc.) tend to behave in “flocks” or “herds”, yielding behavior etc.) tend to behave in “flocks” or “herds”, yielding behavior patterns that aren’t that difficult to program or that time-patterns that aren’t that difficult to program or that time-consuming to render.consuming to render.

Some game objects (enemy starfighters, attacking dinosaurs, Some game objects (enemy starfighters, attacking dinosaurs, etc.) tend to behave in “flocks” or “herds”, yielding behavior etc.) tend to behave in “flocks” or “herds”, yielding behavior patterns that aren’t that difficult to program or that time-patterns that aren’t that difficult to program or that time-consuming to render.consuming to render.

PursuitPursuitPursuitPursuit

Obstacle AvoidanceObstacle AvoidanceObstacle AvoidanceObstacle AvoidanceNeighbor Neighbor DetectionDetectionNeighbor Neighbor DetectionDetection

AlignmentAlignmentAlignmentAlignment

Formation CorneringFormation CorneringFormation CorneringFormation Cornering

Page 12: ACM S TUDENT C HAPTER M EETING ! Wednesday September 20, 2000 2:00 – 3:00 PM Engineering Building 0012 T ERRAIN R ENDERING C OMPOSITE T EXTURES O BSTACLE.

Emotion SynthesisEmotion SynthesisEmotion SynthesisEmotion SynthesisHaving game characters react “emotionally” to the Having game characters react “emotionally” to the environment and the developments in the game’s storyline environment and the developments in the game’s storyline can greatly enhance the gaming experience.can greatly enhance the gaming experience.

Having game characters react “emotionally” to the Having game characters react “emotionally” to the environment and the developments in the game’s storyline environment and the developments in the game’s storyline can greatly enhance the gaming experience.can greatly enhance the gaming experience.

Programming the character to react to interactive (i.e., Programming the character to react to interactive (i.e., non-canned) stimuli can be incredibly difficult.non-canned) stimuli can be incredibly difficult.Programming the character to react to interactive (i.e., Programming the character to react to interactive (i.e., non-canned) stimuli can be incredibly difficult.non-canned) stimuli can be incredibly difficult.

One solution: Network multiple players together so One solution: Network multiple players together so each character is controlled by a separate emotion-each character is controlled by a separate emotion-driven player!driven player!

One solution: Network multiple players together so One solution: Network multiple players together so each character is controlled by a separate emotion-each character is controlled by a separate emotion-driven player!driven player!