animation programming techniques
TRANSCRIPT
![Page 1: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/1.jpg)
نویسی برنامه روشهایانیمیشن
برایای رایانه های بازی
فصیحی امیرحسینشریف افزار فن
1391تیر
![Page 2: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/2.jpg)
اهداف
در • انیمیشن سازی پیاده فنی روشهای بر مروریها بازی
سازی • بهینه روشهایجدید • های روش بررسیعلمی • تحقیقاتی های حوزه بعضی با آشناییهای • بازی از برخی در انیمیشن های فناوری تحلیل
روزانیمیشن • افزارهای میان
![Page 3: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/3.jpg)
انیمیشن سازی پیاده روشهای انواعبازی در
• Cel Animation• Billboards with animated textures• Rigid Hierarchical• Vertex Animation• Skinned Animation
![Page 4: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/4.jpg)
Cel Animation
![Page 5: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/5.jpg)
3D Animation
Doomبازی •oQuad دوربین سمت به هاییoAnimated Texture
![Page 6: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/6.jpg)
3D Animation
Rigid Hierarchical Animation
![Page 7: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/7.jpg)
Per Vertex Animation / Morph Target
![Page 8: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/8.jpg)
Facial Morph Demo Video
![Page 9: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/9.jpg)
Skinned Animation
![Page 10: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/10.jpg)
Skinned Animation
• Software Skinning• Hardware Skinning (GPU shaders)
![Page 11: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/11.jpg)
Automatic Rigging
http://www.mit.edu/~ibaran/autorig/
![Page 12: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/12.jpg)
انیمیشن در زمان
• Pose Interpolation / Continuous Time• Time unit (seconds/frames)• Frame/Sample
ttt = 0.2 ttt = 0.8 ttt = 1.3
Keyframe 1 Keyframe 2 Keyframe 3
![Page 13: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/13.jpg)
انیمیشن برای ای داده قالب
• Joint 1o Keyframe 1
Translation• x, y, z
Orientation• x, y, z, w
Scale• x, y, z
o Keyframe 2 Translation
• .....o ....
• Joint 2
o ....
![Page 14: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/14.jpg)
فشرده روش عنوان به انیمیشنسازی
الزم هر: اطالعات از vertexموقعیت لحظه هر درزمان.
اطالعات: کمترین ذخیره هدف
![Page 15: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/15.jpg)
Animation Retargeting
• Real-time motion retargetting to highly varied user created morphologies (Spore)• http://chrishecker.com/Real-time_motion_retargeting_to_highly_varied_user-created_morphologies
• Feature points based facial animation retargetting • http://dl.acm.org/citation.cfm?id=1450621
![Page 16: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/16.jpg)
Havok Animation Retargeting Video
![Page 17: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/17.jpg)
Metachannels
• Eventso Time = 0.5
footstep lefto Time = 1.5
footstep righto ...
• ...
![Page 18: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/18.jpg)
Animation BlendingLERP Blending
• Temporal Interpolation
• Motion Continuity (Cross Fading)
• Directional Locomotiono Targeted Movemento Pivotal Movement
• Complex LERP Blendo Generalized one dimensionalo Simple Two dimensionalo Triangular Two dimensionalo Generalized Two dimensional
![Page 19: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/19.jpg)
Blending
• Partial skeleton blending• Additive blending
o Stance variationo Locomotion noiseo Aim and look ato Overloading time axis
![Page 20: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/20.jpg)
Partial Blending
Uncharted 2
![Page 21: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/21.jpg)
Additive Blending
![Page 22: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/22.jpg)
Blend Trees
![Page 23: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/23.jpg)
Blend Tree
![Page 24: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/24.jpg)
UDK Blend Tree Video
![Page 25: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/25.jpg)
Post Processing
• Procedural Animation• Inverse Kinematics• Ragdolls
![Page 26: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/26.jpg)
RagdollsRagdolls in Diablo 3 (box2d.googlecode.com/files/GDC2012_ErinCatto_Ragdolls.pdf)
![Page 27: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/27.jpg)
Leg IK
![Page 28: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/28.jpg)
Animation Pipeline
• Clip decompression and pose extraction• Pose blending• Global pose generation• Post-processing• Recalculation of global poses• Matrix palette generation
![Page 29: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/29.jpg)
انیمیشن سازی بهینه
کمتر • حافظه از استفادهبصورت • حافظه از cache friendlyاستفاده
![Page 30: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/30.jpg)
فشرده – کمتر حافظه از استفادهسازی
• Channel Omission• Quantization
o Scalar Quantization (Jonathan Blow:
http://number-none.com/product/Scalar%20Quantization/index.html)
• Sample Frequency and Key Omission• Curve Based Compression (B-Splines, Granny)
• Selective Loading and Streaming
![Page 31: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/31.jpg)
Curve Based Compression (B-Splines)
30fps -> 90 frames -> 90 * 32bits = 27180 bitsCurve Fitting -> 7 data points -> 7 * 32bits = 224 bits
t = 3 sec
q
![Page 32: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/32.jpg)
CPU Cache
Bitsquid Engine (Low Level Animation System)http://bitsquid.blogspot.com/2009/11/bitsquid-low-level-animation-system.htmlhttp://bitsquid.blogspot.com/2011/10/low-level-animation-part-2.html
![Page 33: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/33.jpg)
Multithreaded Animation
• Intel Horsepower demo:http://software.intel.com/en-us/articles/horsepower-source-code-download/
![Page 34: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/34.jpg)
Intel Horsepower Demo
Single Threaded Animation
![Page 35: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/35.jpg)
Intel Horsepower Demo
Multithreaded Animation
![Page 36: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/36.jpg)
Animation Layering
Face Layer - PartialHand Layer - PartialHair Layer - PartialBase Layer - Full BodyRun Randomness Layer - AdditiveWeapon Layer - PartialBreathing Layer - Additive
Animation and Player Control in Uncharted 1 & 2, Travis McIntosh, GDC 2010
![Page 37: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/37.jpg)
Physics Based Animation
مدل • برای فیزیکی سازی شبیهشده • تعریف پیش از انیمیشن از استفادهانیمیشن • و سازی شبیه ترکیبسپس • و فیزیDکی اعضای روی بر انیمیشن اعمال
سازی شبیه
![Page 38: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/38.jpg)
Dynamic, data-driven character control with adjustable balance, Dynamo
http://graphics.cs.williams.edu/papers/DynamoVGS06
![Page 39: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/39.jpg)
Dynamo Video - Adaptation
![Page 40: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/40.jpg)
Dynamo Video - Balance
![Page 41: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/41.jpg)
Dynamo - Boxing
![Page 42: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/42.jpg)
Dynamo - Failure
![Page 43: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/43.jpg)
Dynamic Response for Motion Capture Animationhttp://graphics.cs.ucr.edu/projects/dynResp/mocsim2.html
![Page 44: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/44.jpg)
Dynamic Response
![Page 45: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/45.jpg)
Dynamic Motion Synthesis
• Natural Motion (Endorphin, Euphoria) http://naturalmotion.com
• Gameso Read Dead Redemptiono GTA IVo Star Wars: The Force Unleashed
![Page 46: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/46.jpg)
Natural Motion - Euphoria
![Page 47: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/47.jpg)
فناوری پایه
![Page 48: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/48.jpg)
ژنتیکی های الگوریتم و عصبی شبکه
![Page 49: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/49.jpg)
Dynamic Motion Synthesis – Read Dead Redemption
![Page 50: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/50.jpg)
Dynamic Motion Synthesis – GTA IV
![Page 51: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/51.jpg)
Dynamic Motion Synthesis – Star Wars, Force Unleashed
![Page 52: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/52.jpg)
Parametric Motion Graphs
از • عمدتا حDرکتی، های داده MotionذخیرهCapture
ساخت • و ها داده Motion Graphآنالیزجستجوی • بازی real-timeانجام اجرای هنگام در
![Page 53: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/53.jpg)
Motion Graphs Research
Motion Graphshttp://research.cs.wisc.edu/graphics/Papers/Gleicher/Mocap/mograph.pdf
Parametric Motion Graphshttp://pages.cs.wisc.edu/~heckr/Papers/PMGFullPaper.pdf
![Page 54: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/54.jpg)
Parametric Motion Graphs Demo Video
![Page 55: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/55.jpg)
مصنوعی هوش و انیمیشن
حرکت • انتخابoMotion Graphoفیزیکی
activepassive
روباتیک • و کنترل تحقیقات با راستا هم
![Page 56: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/56.jpg)
Animation-Driven Locomotion
Animation Driven Locomotion for Smoother Navigation (GDC 2012)
Bobby AnguelovAI Programmer IO InteractiveGabriel Leblanc AI Programmer, EidosShawn Harris Senior Programmer, Big Huge Games
![Page 57: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/57.jpg)
انیمیشن افزارهای میان
• Natural Motion, Morpheme• Autodesk, HumanIK• RAD Game Tools, Granny• Havok Animation/Behavior• Chemical Games, Alienmotion
![Page 58: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/58.jpg)
Animation Middleware - Alienmotion
![Page 59: Animation Programming Techniques](https://reader031.vdocuments.net/reader031/viewer/2022021500/586e13311a28ab8a588b5cdd/html5/thumbnails/59.jpg)
• Game Engine Architecture, Jason Gregory• Bisquid.se• Game Programming Gems Series• AI Game Programming Wisdom Series• gamasutra.com
منابع سایر