Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching...
Transcript of Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching...
![Page 1: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/1.jpg)
Black Desert OnlineTaking MMO Development to the Next Level
Dongwook Ha ([email protected])
Gwanghyeon Go ([email protected])
2018-03-23
![Page 2: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/2.jpg)
Black Desert Online
![Page 3: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/3.jpg)
Challenges
Massive data and contents
Many characters on screen
Player characteristics
Large and dynamically changing world
![Page 4: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/4.jpg)
Massive data and contents
![Page 5: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/5.jpg)
Web-based contents
● Independent development track○ Separated server and database
○ Distribute network traffic
● Update online○ No need to build game client
● Natural multi-platform contents
![Page 6: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/6.jpg)
Web-based contents
● Independent development track○ Separated server and database
○ Distribute network traffic
● Update online○ No need to build game client
● Natural multi-platform contents
![Page 7: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/7.jpg)
Web-based contents
● Independent development track○ Separated server and database
○ Distribute network traffic
● Update online○ No need to build game client
● Natural multi-platform contents
![Page 8: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/8.jpg)
![Page 9: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/9.jpg)
![Page 10: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/10.jpg)
![Page 11: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/11.jpg)
![Page 12: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/12.jpg)
![Page 13: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/13.jpg)
![Page 14: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/14.jpg)
Efficiently authoring behavior trees
● Over 4,400 variations of Monsters and NPCs
● XML-based script approach○ Easy to handle many conditions, branches and events○ Easy to reuse and extend
● Provide easy ways to debug and navigate script code
● Used for action validation check from server-side○ To detect hack users
![Page 15: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/15.jpg)
Efficiently authoring behavior trees
● Over 4,400 variations of Monsters and NPCs
● XML-based script approach○ Easy to handle many conditions, branches and events○ Easy to reuse and extend
● Provide easy ways to debug and navigate script code
● Used for action validation check from server-side○ To detect hack users
![Page 16: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/16.jpg)
Efficiently authoring behavior trees
● Over 4,400 variations of Monsters and NPCs
● XML-based script approach○ Easy to handle many conditions, branches and events○ Easy to reuse and extend
● Provide easy ways to debug and navigate script code
● Used for action validation check from server-side○ To detect hack users
![Page 17: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/17.jpg)
Efficiently authoring behavior trees
● Over 4,400 variations of Monsters and NPCs
● XML-based script approach○ Easy to handle many conditions, branches and events○ Easy to reuse and extend
● Provide easy ways to debug and navigate script code
● Used for action validation check from server-side○ To detect hack users
![Page 18: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/18.jpg)
Easy resource creation
● Automatic key-framing cloth animation in the production stage
1. High resolution cloth simulation2. Compute skeletal animation approximating the simulation result
![Page 19: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/19.jpg)
![Page 20: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/20.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
1. Virtual point mass is attached to each influencing bone of painted vertices
2. Point masses are physically simulated using mass spring model3. Compute two skinning matrices from animation bones and point
masses (GPU)4. Interpolate by weight from color channel to get final skinning matrix
(GPU)
![Page 21: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/21.jpg)
![Page 22: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/22.jpg)
![Page 23: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/23.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
1. Virtual point mass is attached to each influencing bone of painted vertices
2. Point masses are physically simulated using mass spring model3. Compute two skinning matrices from animation bones and point
masses (GPU)4. Interpolate by weight from color channel to get final skinning matrix
(GPU)
![Page 24: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/24.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
1. Virtual point mass is attached to each influencing bone of painted vertices
2. Point masses are physically simulated using mass spring model3. Compute two skinning matrices from animation bones and point
masses (GPU)4. Interpolate by weight from color channel to get final skinning matrix
(GPU)
![Page 25: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/25.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
1. Virtual point mass is attached to each influencing bone of painted vertices
2. Point masses are physically simulated using mass spring model3. Compute two skinning matrices from animation bones and point
masses (GPU)4. Interpolate by weight from color channel to get final skinning matrix
(GPU)
![Page 26: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/26.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
1. Virtual point mass is attached to each influencing bone of painted vertices
2. Point masses are physically simulated using mass spring model3. Compute two skinning matrices from animation bones and point
masses (GPU)4. Interpolate by weight from color channel to get final skinning matrix
(GPU)
![Page 27: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/27.jpg)
![Page 28: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/28.jpg)
Easy resource creation
● Simple secondary motion by vertex painting
➤ Pros:- Easy to use- Minimum simulation cost- Requires no additional bones- Skinned mesh dependent
![Page 29: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/29.jpg)
● Let’s run in-game simulation for cloth animation○ Responsive cloth
● Bone-based simulation for cloth-like animation○ Fast and stable○ Inspired by “Meshless Deformations Based on Shape Matching”,
M. Müller, B. Heidelberger, M. Teschner, M. Gross. Proceedings of SIGGRAPH'05, 2005
○ Bone cluster based deformation for higher order bending motion
Easy resource creation
![Page 30: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/30.jpg)
● Bone-based simulation for cloth-like animation1. Driving bones are divided into overlapping clusters
- Each cluster has 2~3 bones
2. Compute goal positions of bones in each cluster
- Simpler shape matching
- Use roughly guiding animation as shape matching target
3. Bones in the overlapping regions have multiple goal positions
- Averaged
4. Integration:
Easy resource creation
![Page 31: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/31.jpg)
● Bone-based simulation for cloth-like animation1. Driving bones are divided into overlapping clusters
- Each cluster has 2~3 bones
2. Compute goal positions of bones in each cluster
- Simpler shape matching
- Use roughly guiding animation as shape matching target
3. Bones in the overlapping regions have multiple goal positions
- Averaged
4. Integration:
Easy resource creation
![Page 32: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/32.jpg)
● Bone-based simulation for cloth-like animation1. Driving bones are divided into overlapping clusters
- Each cluster has 2~3 bones
2. Compute goal positions of bones in each cluster
- Simpler shape matching
- Use roughly guiding animation as shape matching target
3. Bones in the overlapping regions have multiple goal positions
- Averaged
4. Integration:
Easy resource creation
![Page 33: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/33.jpg)
● Bone-based simulation for cloth-like animation1. Driving bones are divided into overlapping clusters
- Each cluster has 2~3 bones
2. Compute goal positions of bones in each cluster
- Simpler shape matching
- Use roughly guiding animation as shape matching target
3. Bones in the overlapping regions have multiple goal positions
- Averaged
4. Integration:
Easy resource creation
![Page 34: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/34.jpg)
![Page 35: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/35.jpg)
![Page 36: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/36.jpg)
Easy resource creation
● Bone-based simulation for cloth-like animation○ Collision with body
■ Each bone can have collision planes
➤ Pros:- Stable and fast (not a mass-spring model)- If necessary, animators can guide overall movement- Easy to implement
![Page 37: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/37.jpg)
Many characters on screen
![Page 38: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/38.jpg)
Animation system overview
● Non-uniform scaling● Multi-layered● Parametric blending● Additive blending● Inverse kinematics● Skinned-mesh morphing ● Simulation integrated
![Page 39: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/39.jpg)
● 16 playable classes (It’s growing!)○ has nearly 1,500 animation clips for each○ over 150MB for each
● Characters don’t share animation clips○ Accurate retargeting doesn’t come cheap
● Infeasible to load all animation clips for the visible characters
Dynamic animation loading
![Page 40: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/40.jpg)
● 16 playable classes (It’s growing!)○ has nearly 1,500 animation clips for each○ over 150MB for each
● Characters don’t share animation clips○ Accurate retargeting doesn’t come cheap
● Infeasible to load all animation clips for the visible characters
Dynamic animation loading
![Page 41: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/41.jpg)
● 16 playable classes (It’s growing!)○ has nearly 1,500 animation clips for each○ over 150MB for each
● Characters don’t share animation clips○ Accurate retargeting doesn’t come cheap
● Infeasible to load all animation clips for the visible characters
Dynamic animation loading
![Page 42: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/42.jpg)
Dynamic animation loading
● Fully dynamic loading○ Loading when needed, unloading when it’s not○ Easy to see motion lag due to loading time
● Dynamic loading with preloaded animation packs○ Generated for each character in the production stage○ Contains first 1~2 key-frames of animation clips○ Play animation using the key-frames in the pack while loading the
entire clip in a thread
![Page 43: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/43.jpg)
Dynamic animation loading
● Fully dynamic loading○ Loading when needed, unloading when it’s not○ Easy to see motion lag due to loading time
● Dynamic loading with preloaded animation packs○ Generated for each character in the production stage○ Contains first 1~2 key-frames of animation clips○ Play animation using the key-frames in the pack while loading the
entire clip in a thread
![Page 44: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/44.jpg)
Mockup models for distant characters
● Problems ○ What if hundreds of players gather together
■ Many different costumes
○ If you are moving fast, many characters are transient■ Unnecessary data loading and unloading
● Let’s render mockup models first○ Simplified model or default costume of the class○ Defer loading character data○ Save I/O throughput and memory
![Page 45: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/45.jpg)
Mockup models for distant characters
● Problems ○ What if hundreds of players gather together
■ Many different costumes
○ If you are moving fast, many characters are transient■ Unnecessary data loading and unloading
● Let’s render mockup models first○ Simplified model or default costume of the class○ Defer loading character data○ Save I/O throughput and memory
![Page 46: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/46.jpg)
Limiting details by distance
● Limit features by distance○ Effect / Sound○ Morphing / Facial animation / IK / Physics simulation○ and so on
● Limit the number of feature instances
![Page 47: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/47.jpg)
Black Desert Mobile
![Page 48: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/48.jpg)
Player Characteristics
![Page 49: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/49.jpg)
Player characteristics
Players want their characters to look different
Players want their characters to be of high quality, have details
Players want to interact with their characters and others
![Page 50: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/50.jpg)
Player characteristics
Character rendering
• Fake subsurface scattering for performance reason• Fake eyeball specular that players can always see• Cornea occlusion• Classical Kajiya-Kay anisotropic hair rendering• Vertically unwrapped hair texture without using direction map• Hair depth fixup for post processing• Random texel micro adjustment for security reason• Great meshes and textures! (most important)
![Page 51: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/51.jpg)
Player characteristics
Character rendering
• Fake subsurface scattering for performance reason• Fake eyeball specular that players can always see• Cornea occlusion• Classical Kajiya-Kay anisotropic hair rendering• Vertically unwrapped hair texture without using direction map• Hair depth fixup for post processing• Random texel micro adjustment for security reason• Great meshes and textures! (most important)
![Page 52: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/52.jpg)
Player characteristics
Character rendering
• Fake subsurface scattering for performance reason• Fake eyeball specular that players can always see• Cornea occlusion• Classical Kajiya-Kay anisotropic hair rendering• Vertically unwrapped hair texture without using direction map• Hair depth fixup for post processing• Random texel micro adjustment for security reason• Great meshes and textures! (most important)
![Page 53: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/53.jpg)
![Page 54: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/54.jpg)
Player characteristics
Character rendering
• Fake subsurface scattering for performance reason• Fake eyeball specular that players can always see• Cornea occlusion• Classical Kajiya-Kay anisotropic hair rendering• Vertically unwrapped hair texture without using direction map• Hair depth fixup for post processing• Random texel micro adjustment for security reason• Great meshes and textures! (most important)
![Page 55: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/55.jpg)
Player characteristics
Character rendering
• Fake subsurface scattering for performance reason• Fake eyeball specular that players can always see• Cornea occlusion• Classical Kajiya-Kay anisotropic hair rendering• Vertically unwrapped hair texture without using direction map• Hair depth fixup for post processing• Random texel micro adjustment for security reason• Great meshes and textures! (most important)
![Page 56: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/56.jpg)
Player characteristics
Character customization
• Face and body deformation (adjust bone transform)• Vertex morphing for facial expression with index matching• Blending among several wrinkle maps will be applied• Areal mask for makeup (adjust color, intensity and reflection)• Multitexturing for tattoo• Skinned beard meshes• Curly hair (adjust uv only)• The more elements, the better it is
![Page 57: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/57.jpg)
Player characteristics
Character customization
• Face and body deformation (adjust bone transform)• Vertex morphing for facial expression with index matching• Blending among several wrinkle maps will be applied• Areal mask for makeup (adjust color, intensity and reflection)• Multitexturing for tattoo• Skinned beard meshes• Curly hair (adjust uv only)• The more elements, the better it is
![Page 58: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/58.jpg)
![Page 59: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/59.jpg)
Player characteristics
Character customization
• Face and body deformation (adjust bone transform)• Vertex morphing for facial expression with index matching• Blending among several wrinkle maps will be applied• Areal mask for makeup (adjust color, intensity and reflection)• Multitexturing for tattoo• Skinned beard meshes• Curly hair (adjust uv only)• The more elements, the better it is
![Page 60: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/60.jpg)
![Page 61: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/61.jpg)
Player characteristics
Character customization
• Face and body deformation (adjust bone transform)• Vertex morphing for facial expression with index matching• Blending among several wrinkle maps will be applied• Areal mask for makeup (adjust color, intensity and reflection)• Multitexturing for tattoo• Skinned beard meshes• Curly hair (adjust uv only)• The more elements, the better it is
![Page 62: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/62.jpg)
Player characteristics
Character customization
• Face and body deformation (adjust bone transform)• Vertex morphing for facial expression with index matching• Blending among several wrinkle maps will be applied• Areal mask for makeup (adjust color, intensity and reflection)• Multitexturing for tattoo• Skinned beard meshes• Curly hair (adjust uv only)• The more elements, the better it is
![Page 63: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/63.jpg)
Player characteristics
![Page 64: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/64.jpg)
Player characteristics
Character detail
• My character has much more detail• My character looks at me naturally (look IK)• Interact with other PCs and NPCs (collision reaction)• Sweats after doing hard work (sweat map)• Gets wet in the water
![Page 65: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/65.jpg)
Player characteristics
Character detail
• My character has much more detail• My character looks at me naturally (look IK)• Interact with other PCs and NPCs (collision reaction)• Sweats after doing hard work (sweat map)• Gets wet in the water
![Page 66: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/66.jpg)
Player characteristics
![Page 67: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/67.jpg)
Player characteristics
Character detail
• My character has much more detail• My character looks at me naturally (look IK)• Interact with other PCs and NPCs (collision reaction)• Sweats after doing hard work (sweat map)• Gets wet in the water
![Page 68: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/68.jpg)
Large and dynamically changing world
![Page 69: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/69.jpg)
Large and dynamically changing world
We wanted a very long distance field
We wanted players to be able to move anywhere w/o loading
We wanted players to live in a continuously changing world
![Page 70: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/70.jpg)
Large and dynamically changing world
Efficient and easy world building process for speed!
• Voxel based terrain to make cave-style spots easier and faster• Sketch Up is used for houses and castles including interiors• Massive alpha blended weathering decals built-in on meshes• Massive alpha blended screen space decals• Efficient prefab usage with easy construction tools• Fast resource and script change reflection
![Page 71: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/71.jpg)
![Page 72: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/72.jpg)
Large and dynamically changing world
Efficient and easy world building process for speed!
• Voxel based terrain to make cave-style spots easier and faster• Sketch Up is used for houses and castles including interiors• Massive alpha blended weathering decals built-in on meshes• Massive alpha blended screen space decals• Efficient prefab usage with easy construction tools• Fast resource and script change reflection
![Page 73: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/73.jpg)
Large and dynamically changing world
Efficient and easy world building process for speed!
• Voxel based terrain to make cave-style spots easier and faster• Sketch Up is used for houses and castles including interiors• Massive alpha blended weathering decals built-in on meshes• Massive alpha blended screen space decals• Efficient prefab usage with easy construction tools• Fast resource and script change reflection
![Page 74: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/74.jpg)
![Page 75: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/75.jpg)
![Page 76: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/76.jpg)
Large and dynamically changing world
Efficient and easy world building process for speed!
• Voxel based terrain to make cave-style spots easier and faster• Sketch Up is used for houses and castles including interiors• Massive alpha blended weathering decals built-in on meshes• Massive alpha blended screen space decals• Efficient prefab usage with easy construction tools• Fast resource and script change reflection
![Page 77: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/77.jpg)
Large and dynamically changing world
Efficient and easy world building process for speed!
• Voxel based terrain to make cave-style spots easier and faster• Sketch Up is used for houses and castles including interiors• Massive alpha blended weathering decals built-in on meshes• Massive alpha blended screen space decals• Efficient prefab usage with easy construction tools• Fast resource and script change reflection
![Page 78: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/78.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 79: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/79.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 80: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/80.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 81: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/81.jpg)
![Page 82: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/82.jpg)
![Page 83: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/83.jpg)
![Page 84: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/84.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 85: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/85.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 86: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/86.jpg)
Large and dynamically changing world
Multithreaded world streaming was necessary
• World data is separated into many square sectors• Sectors are streamed by queueing always prior to characters• Fast moving solution 1 - Rough first then detailed• Fast moving solution 2 - Bound the player into certain range• Single material LOD for long distance scenery• Real time collision data construction (for size)• Texture streaming (low level mipmap and albedo tex first)• Balancing many threads (important for efficient CPU usage)
![Page 87: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/87.jpg)
Large and dynamically changing world
Multithreaded character streaming
• Similar process with world streaming• Natural treatments until it is ready to be rendered• Single material LOD for not fully prepared characters• Texture streaming • Preload animation data (few frames)• Player characters first
![Page 88: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/88.jpg)
Large and dynamically changing world
Multithreaded character streaming
• Similar process with world streaming• Natural treatments until it is ready to be rendered• Single material LOD for not fully prepared characters• Texture streaming • Preload animation data (few frames)• Player characters first
![Page 89: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/89.jpg)
Large and dynamically changing world
Multithreaded character streaming
• Similar process with world streaming• Natural treatments until it is ready to be rendered• Single material LOD for not fully prepared characters• Texture streaming • Preload animation data (few frames)• Player characters first
![Page 90: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/90.jpg)
Large and dynamically changing world
Dynamic weather
• Time of day with the simplified atmospheric scattering• Instanced particle clouds• Instanced particle rain and snow• Varying rain pools and snowdrift according to precipitation• Lightning and water flowing effect
![Page 91: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/91.jpg)
Large and dynamically changing world
Dynamic weather
• Time of day with the simplified atmospheric scattering• Instanced particle clouds• Instanced particle rain and snow• Varying rain pools and snowdrift according to precipitation• Lightning and water flowing effect
![Page 92: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/92.jpg)
![Page 93: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/93.jpg)
Large and dynamically changing world
Dynamic weather
• Time of day with the simplified atmospheric scattering• Instanced particle clouds• Instanced particle rain and snow• Varying rain pools and snowdrift according to precipitation• Lightning and water flowing effect
![Page 94: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/94.jpg)
Large and dynamically changing world
Dynamic weather
• Time of day with the simplified atmospheric scattering• Instanced particle clouds• Instanced particle rain and snow• Varying rain pools and snowdrift according to precipitation• Lightning and water flowing effect
![Page 95: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/95.jpg)
![Page 96: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/96.jpg)
![Page 97: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/97.jpg)
Large and dynamically changing world
Dynamic scene reconstruction
• Duration based• Region based• Weather elements• Localized elements• Easily turn on/off with switches
![Page 98: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/98.jpg)
Large and dynamically changing world
Path finding solution
• Our own voxel based navigation path finder• Raycast, areal occlusion test• Server side validation check for security reasons• This information was previously made public, check below
http://igc.inven.co.kr/detail.php?code=Y29kZTI3
![Page 99: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/99.jpg)
Large and dynamically changing world
Path finding solution
• Our own voxel based navigation path finder• Raycast, areal occlusion test• Server side validation check for security reasons• This information was previously made public, check below
http://igc.inven.co.kr/detail.php?code=Y29kZTI3
![Page 100: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/100.jpg)
Now we are remastering
• Improved high dynamic range rendering• Improved physically based rendering• Improved SSR, SSAO, post processing with YEBIS• Improved ocean rendering• Voxel cone tracing• Physically based atmospheric scattering with volume clouds• Lots of other quality and performance tuning…• Console platform (XB1)
Let’s talk about the above at GDC 2019
![Page 101: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/101.jpg)
![Page 102: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/102.jpg)
![Page 103: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/103.jpg)
![Page 104: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/104.jpg)
![Page 105: Black Desert Online · 2. Compute goal positions of bones in each cluster - Simpler shape matching - Use roughly guiding animation as shape matching target 3. Bones in the overlapping](https://reader033.fdocuments.in/reader033/viewer/2022043011/5fa4df0277bf290988418c62/html5/thumbnails/105.jpg)
Thank you!
Special thanks
All Pearl Abyss members!