PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online)...

27
PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus Omarsson CCP Games Snorri Sturluson CCP Games Monier Maher NVIDIA

Transcript of PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online)...

Page 1: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEXVigfus Omarsson CCP GamesSnorri Sturluson CCP GamesMonier Maher NVIDIA

Page 2: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Outline

APEX OverviewAPEX Clothing used by CCP

Clothing considerationsMaya DCC plug-in overviewAPEX IntegrationDemos

APEX ModulesAPEX DestructionAPEX ParticlesAPEX VegetationAPEX Turbulence

Page 3: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

What is APEX?

APEX is a “Scalable Dynamics Framework”Scalable: Content adapts to different hardware capabilitiesDynamics: The way things move and interactFramework: A structured environment

APEX consists of two major components:Authoring:

High-level authoring of dynamic systemsDCC plugins, standalone tools, and game engine plugins

Runtime:A modular SDK – minimal integration into game engineLeverages PhysX for simulations

Page 4: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX Architecture

PC PC +GPUConsoles

Aut

horin

g

Des

truct

ion

Clo

thin

g

……

Vege

tatio

n

StandaloneAPEX Tools

DCCPlug-In

PhysX SDKRenderer

Run

-tim

e

APEX Core

Page 5: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

© 2008 NVIDIA Corporation.

APEX is Artist Focused

• Artist level abstractions of dynamic systems• “Destructible bunker” vs. “collection of bricks”

• Intuitive and easy to use

Page 6: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Why Cloth Simulation?

Adds variety and secondary motion to animationCan increase plausibility in realistic scenes a lotThe same toolset can also be used to create soft body simulation

Page 7: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Things to be aware of

Like any other simulation, cloth requires boundaries and “taming”Sometimes non-realistic cloth simulation looks betterElaborate cloth assets can be quite complex to keep nice at all timesIteration and testing are the key

Page 8: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Pipeline Integration

APEX export was easily integrated into CCP export pipelineUse of cloth templates speeds up clothing creation

Create once, use often

ACA Apex Cloth Data

GR2 Other Model Data

CCP Export

RED

Page 9: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Maya Demo

Page 10: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Challenges

Numbers of characters on-screen can’t be controlled in an MMO

LODs are a mustHigh visual fidelity requires lots of consideration for collision meshes

Sitting on furniture – how do you handle that?Characters must affect each other too

Page 11: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX integration

Page 12: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Implement a few classes

• NxResourceCallback• Manage shared objects

NxUserRenderResourceManager• Manage vertex and index buffers

NxUserRendererPerform the rendering

Page 13: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Actors

Load clothing assets from .aca filesCreate clothing actor from assetAPEX renders actors through your engine

Page 14: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Debugging aids

Lots of debugging info to be rendered

Useful for the programmersBut even more so for cloth authoringWorth spending time to support it all

Page 15: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

More debugging aids

Visual debuggerAllows recording of dataAnalyze simulation without game engine

Page 16: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Maximizing performance

Cloth simulation is heavyGPU can do heavy liftingMaximizing parallelism maximizes performance

Delay skinning to match up with simulationRendering lags further behindSyncing audio and other effects with animation may become a bigger issue

Page 17: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Benefits of APEX

Fast, easily iterated authoringArtist friendlyTweakable data easily exposed in engine for final tweakingDebug preview in engine availableEasily integrated into game engine

Page 18: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Live Demo

Page 19: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX Modules

Page 20: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX DestructionFully and partial destructible environmentsPhysXLab tool with preview functionalityFully integrated with APEX Particles Fracture with noiseHierarchical destructionPlastic deformationLevel of Detail

Scalability

Page 21: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX DestructionAuthoring Pipeline

OBJ FBX BMP USER

APEX

Des

truc

tion

PhysX SDKRenderer

APEX Core

APXAPEX Asset file

Mesh data & Fracture Map

Page 22: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX ParticlesFull Collision with PhysX environmentForce fields (wind, explosions) Authorable behavior and effect modifiersRenderable as sprites or meshes (with orientation)Generic emitterSpecial purpose emitters

Air/Ground emitterWeapon emitter

Page 23: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX ParticlesAuthoring Pipeline

OBJ FBX BMP USER

APEX

Parti

cles

PhysX SDKRenderer

APEX Core

APXAPEX Asset file

Mesh data & Fracture Map

Page 24: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX TurbulenceGame Example

Page 25: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX Vegetation / SpeedTreeFull and partial tree destruction/deformation State transition between physical and static treesTight integration with APEX ParticlesLevel of DetailFully integrated into SpeedTree® Modeler

Automatic generation of tree skeleton Configurable bone and joint systemSupport for multiple APEX Particle Emitters

Page 26: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

APEX Vegetation / SpeedTree Authoring Pipeline

TGA PNG OBJ STM

APEX

PhysX SDKRenderer

APEX Core

Vege

tatio

n

SPMProcedural Files

Images, meshes

Page 27: PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) …developer.download.nvidia.com/presentations/2010/... · PHYSICALLY SIMULATED CLOTHING BY CCP (EVE Online) USING NVIDIA APEX Vigfus

Where To Find UsMobile-friendly schedule: http://bit-ly/gdc-nvidiaNVIDIA - Main Expo Area, Booth 1702CCP – Career Pavilion, Booth 2502March 11th Sponsored Sessions

March 12th Presentations

Twitter: nvidiadeveloper, Website: http://developer.nvidia.com

0900-1000 Room 310, South Hall

Tegra - Developing Killer Content for Advanced Mobile Platforms

1330-1430 Room 310, South Hall

Physically Simulated Clothing by CCP (EVE Online) Using NVIDIA APEX

1500-1600 Room 310, South Hall

Authoring Physically Simulated Destruction with NVIDIA APEX

1630-1730 Room 310, South Hall

NVIDIA's New Game Development Environment: NVIDIA Parallel Nsight™

0900-1000 Room 304, South Hall

Taking Fluid Simulation Out of the Box: Particle Effects in Dark Void, Sarah Tariq (NVIDIA), Joe Cruz (VFX)