Your SlideShare is downloading. ×
[UniteKorea2013] Art tips and tricks
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

[UniteKorea2013] Art tips and tricks

1,782
views

Published on

유나이트 코리아 2013 발표자료: 유니티에서 디지털 컨텐츠들의 활용 방안 (데이빗 르웰린)

유나이트 코리아 2013 발표자료: 유니티에서 디지털 컨텐츠들의 활용 방안 (데이빗 르웰린)

Published in: Technology, Art & Photos

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,782
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
46
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Art Pipeline Tips and TricksDavid LlewelynWednesday, 10 April 13
  • 2. 10 Apr 2013 Page 2David LlewelynAbout the Speaker• Been producing CGI for 15years.• 8 Years in game developmentand architectural visualisation.Wednesday, 10 April 13
  • 3. 10 Apr 2013 Page 3Wednesday, 10 April 13
  • 4. 10 Apr 2013 Page 4Wednesday, 10 April 13
  • 5. 10 Apr 2013 Page 5Wednesday, 10 April 13
  • 6. 10 Apr 2013 Page 6Wednesday, 10 April 13
  • 7. 10 Apr 2013 Page 7David LlewelynAbout the Speaker• Born in Wales !!• Been producing CGI for 15years.• 8 Years in game developmentand architectural visualisation.Wednesday, 10 April 13
  • 8. 10 Apr 2013 Page 7David LlewelynAbout the Speaker• Born in Wales !!• Been producing CGI for 15years.• 8 Years in game developmentand architectural visualisation.Wednesday, 10 April 13
  • 9. 10 Apr 2013 Page 8OverviewWednesday, 10 April 13
  • 10. 10 Apr 2013 Page 9• Prototyping in Unity.• Texture creation.• Preparing 3D assets.• Importing in Unity.• Optimization.OverviewWednesday, 10 April 13
  • 11. 10 Apr 2013 Page 10Prototyping in UnityWednesday, 10 April 13
  • 12. 10 Apr 2013 Page 11Wednesday, 10 April 13
  • 13. 10 Apr 2013 Page 12Wednesday, 10 April 13
  • 14. 10 Apr 2013 Page 13Wednesday, 10 April 13
  • 15. 10 Apr 2013 Page 14Wednesday, 10 April 13
  • 16. 10 Apr 2013 Page 15• Large number of high quality assetsfor distribution.• Other work commitments.• Some workflow optimizationsrequired.RobotLab and StealthWednesday, 10 April 13
  • 17. 10 Apr 2013 Page 16• Prototype thoroughly in order to preventabortive work.• Identify areas of your process that can beautomated and implement this early.• Small savings throughout the art pipelineadd-up to large overall gains.Prototyping in UnityWednesday, 10 April 13
  • 18. 10 Apr 2013 Page 17• Use Unity primitives, or create yourown custom shapes to layout levelsand test your mechanics.Prototyping in UnityWednesday, 10 April 13
  • 19. 10 Apr 2013 Page 18• Use Unity primitives, or create yourown custom shapes to layout levelsand test your mechanics.• Make use of the Asset Store!Prototyping in UnityWednesday, 10 April 13
  • 20. 10 Apr 2013 Page 19Wednesday, 10 April 13
  • 21. 10 Apr 2013 Page 20• Use Unity primitives, or create yourown custom shapes to layout levelsand test your mechanics.• Make use of the Asset Store!• Creating quality artwork is timeconsuming. Prototyping helps toidentify an asset list that is 100%required.Prototyping in UnityWednesday, 10 April 13
  • 22. 10 Apr 2013 Page 21• Go to wiki.unity3d.com and searchfor “OBJ Exporter”.Prototyping in UnityWednesday, 10 April 13
  • 23. 10 Apr 2013 Page 22Wednesday, 10 April 13
  • 24. 10 Apr 2013 Page 23• Go to wiki.unity3d.com and searchfor “OBJ Exporter”.• Editor Script that allows you toexport .obj files from Unity.Prototyping in UnityWednesday, 10 April 13
  • 25. 10 Apr 2013 Page 24• Exported OBJ is a good base to modelover.Prototyping in UnityWednesday, 10 April 13
  • 26. 10 Apr 2013 Page 25• Exported OBJ is a good base to modelover.• Precise snapping during poly-modeling.• Identification of repeatable, modularpieces.• Easier to determine asset list anddistribute to team members.Prototyping in UnityWednesday, 10 April 13
  • 27. 10 Apr 2013 Page 26Prototyping in UnityWednesday, 10 April 13
  • 28. 10 Apr 2013 Page 27• With Stealth we started-off creatinga number of wall panels 2m x 2m.• Used standard assets controllers andcameras to test the level design.• Both art and code departments couldcollaborate and agree on design.• Reduced refactoring.Prototyping in UnityWednesday, 10 April 13
  • 29. 10 Apr 2013 Page 28Wednesday, 10 April 13
  • 30. 10 Apr 2013 Page 29Wednesday, 10 April 13
  • 31. 10 Apr 2013 Page 30Wednesday, 10 April 13
  • 32. 10 Apr 2013 Page 31• Using this approach we managed tocreate a fully approved prototypevery early-on.• Art fits a feasible layout from theoutset.• Reduces the need to re-fit preciseartwork at the modeling stage.Prototyping in UnityWednesday, 10 April 13
  • 33. 10 Apr 2013 Page 32Prototyping in UnityThese saving meant time that couldbe better spent on art direction.Wednesday, 10 April 13
  • 34. 10 Apr 2013 Page 33Prototyping in UnityThese saving meant time that couldbe better spent on art direction.Wednesday, 10 April 13
  • 35. 10 Apr 2013 Page 34SummaryThe main benefits of this simpleprototyping approach:1. Early agreement between design,code and art.2. Less chance of time wasting byhaving to re-position/re-stitchmodels.3. Earlier distribution of workloadamongst artists = fewerdependancies.Wednesday, 10 April 13
  • 36. 10 Apr 2013 Page 35Preparing 3D AssetsWednesday, 10 April 13
  • 37. 10 Apr 2013 Page 36• Group assets by commonality.• Keep hierarchies as flat as possible.• Find a suitable taxonomy in order toorganize hierarchies alphabetically.• Consider a renaming script.Preparing 3D AssetsWednesday, 10 April 13
  • 38. 10 Apr 2013 Page 37• Reduce draw-calls by combiningsmaller objects.• Massive objects represent a fill cost.• Equalize triangles for better normaldistribution.Preparing 3D AssetsWednesday, 10 April 13
  • 39. 10 Apr 2013 Page 38• Auto exporter scripts availablethrough resources such as CreativeCrash.• Keep naming conventions consistentin your scene.• OS project folders will be faster tonavigate.Preparing 3D AssetsWednesday, 10 April 13
  • 40. 10 Apr 2013 Page 39SummaryWhen building your 3D assets:1. Avoid time wasted “drilling”through recursive hierarchies.2. Less repetitive exporting andnaming in your OS.3. Improve visual quality with goodmodeling practice.Wednesday, 10 April 13
  • 41. 10 Apr 2013 Page 40Texture CreationWednesday, 10 April 13
  • 42. 10 Apr 2013 Page 41• Texturing is a process that is full ofrepetitive tasks.• These are obvious cases forautomation.• Standardize PSDs for easiercollaboration in team environments.• Next-gen means even more assets!Texture CreationWednesday, 10 April 13
  • 43. 10 Apr 2013 Page 42The “Master Builder"Wednesday, 10 April 13
  • 44. 10 Apr 2013 Page 43www.davidllewelyn.com/v2/master-builderThe “Master Builder"Wednesday, 10 April 13
  • 45. 10 Apr 2013 Page 44Wednesday, 10 April 13
  • 46. 10 Apr 2013 Page 45• Part of a suite of Photoshop actionsto help automate repetitive tasks.• It takes a range source maps fromtools such as xNormal.• Produces a standardized, flexiblePSD template.Let’s see how it works...Texture CreationWednesday, 10 April 13
  • 47. 10 Apr 2013 Page 46• Robot and Stealth include 433 uniquetextures.• On average setting-up a PSD by handtakes around 5 minutes longer.• So, that’s (433 x 5) = 2165 minutes.Or, 4.5 working days!Texture CreationWednesday, 10 April 13
  • 48. 10 Apr 2013 Page 47Image Pre-ProcessingWednesday, 10 April 13
  • 49. 10 Apr 2013 Page 48• Work in PSDs within your 3Dpackage’s project folder.• Use File>Scripts>Image Processor toautomatically apply actions to yourimages.Image Pre-ProcessingWednesday, 10 April 13
  • 50. 10 Apr 2013 Page 49Wednesday, 10 April 13
  • 51. 10 Apr 2013 Page 50• Work in PSDs within your 3Dpackage’s project folder.• Use File>Scripts>Image Processor toautomatically apply actions to yourimages.This offers some distinct advantages:Image Pre-ProcessingWednesday, 10 April 13
  • 52. 10 Apr 2013 Page 511. Flatten PSDs to reduce project size.2. Reduce compression artifacts withfilter combinations.3. Normalize histogram levels.4. Apply artistic effects or sharpening.Image Pre-ProcessingWednesday, 10 April 13
  • 53. 10 Apr 2013 Page 52• The PVTRC format is commonlyused for mobile.• Can result in visible stepping or“banding” across gradients.• Apply a hi-frequency noise toyour textures to simulatedithering.• Trick the PVTRC compressor.Image Pre-ProcessingWednesday, 10 April 13
  • 54. 10 Apr 2013 Page 53Processing images before importallows you to:• Reduce VCS sync times.• Apply stylized filter treatments.• Improve compression results formobile textures.SummaryWednesday, 10 April 13
  • 55. 10 Apr 2013 Page 54Importing into UnityWednesday, 10 April 13
  • 56. 10 Apr 2013 Page 55• Unity was designed to work similarlyto Autodesk Maya in terms ofinterface.• However, there are some differenceswhen it comes to 3D.Importing into UnityWednesday, 10 April 13
  • 57. 10 Apr 2013 Page 56• Scale is important for things likelight-mapping and physics.• Unity default unit = 1m (100cm).• Maya default unit = 1cm.• Default scale factor therefore = 0.01(100x0.01)=1Importing into UnityWednesday, 10 April 13
  • 58. 10 Apr 2013 Page 57• 3DS Max default unit = 1m.• Unity default unit = 1m.• Scale factor should be set to 1.• Do a cube test!Importing into UnityWednesday, 10 April 13
  • 59. 10 Apr 2013 Page 58• Unity uses the “left hand rule” forcartesian coordinates.• Same as DirectX.• +X faces in the opposite direction toright handed packages.• World-space rotation about Z will bein the opposite direction.• This can cause complications wheneyeballing values.Importing into UnityWednesday, 10 April 13
  • 60. 10 Apr 2013 Page 59Wednesday, 10 April 13
  • 61. 10 Apr 2013 Page 60• 3DS Max uses swivel coordinates, soZ is up, rather than Y.Importing into UnityWednesday, 10 April 13
  • 62. 10 Apr 2013 Page 61• .FBX .DAE .3DS .MB .DXF and .OBJsupported.• Unity also supports the embeddedFBX standard.Importing into UnityWednesday, 10 April 13
  • 63. 10 Apr 2013 Page 62• Texture assets can be included withyour 3D model file.• Great for rapid prototyping, but canclutter projects with metadata.• Consider importing standard FBXImporting into UnityWednesday, 10 April 13
  • 64. 10 Apr 2013 Page 63• Duplicate or unwanted materials,textures and models can quicklybuild-up.• This can slow the team down.• I propose a quick way to tidy-up acluttered project:Cleaning-UpWednesday, 10 April 13
  • 65. 10 Apr 2013 Page 641. Backup!!2. Select all your scene files fromwithin the project panel.3. Right-click, and select “ExportPackage”.4. Save this somewhere outside of theUnity project folder.5. Select the project folders containingany duplicate files you wish toremove.Cleaning-UpWednesday, 10 April 13
  • 66. 10 Apr 2013 Page 656. Right click and “Delete”.7. Right click anywhere in the projectpane, select “import package”.8. Select the package you just exportedand reimport.9. Voila! You should end-up with aproject containing only the assetsreferenced by your scenes.(Don’t use this on your scriptsfolder!!)Cleaning-UpWednesday, 10 April 13
  • 67. 10 Apr 2013 Page 66When importing into Unity:• Be aware that Unity uses the LeftHand Rule for cartesian coordinates.• Use the embedded FBX format forrapid prototypes.• Periodically remove unwanted files orduplicates.SummaryWednesday, 10 April 13
  • 68. 10 Apr 2013 Page 67OptimizationWednesday, 10 April 13
  • 69. 10 Apr 2013 Page 68• Use Unity’s view modes totroubleshoot and optimize poor drawperformance.OptimizationWednesday, 10 April 13
  • 70. 10 Apr 2013 Page 69Wednesday, 10 April 13
  • 71. 10 Apr 2013 Page 70• Specular component encoded in thealpha channel of the diffuse texture.• Alpha view can be used to checkspecular maps are displayingcorrectly.• When using PSDs, transparency onthe base layer can cause specular tonot come through.• Useful way to troubleshoot.OptimizationWednesday, 10 April 13
  • 72. 10 Apr 2013 Page 71Wednesday, 10 April 13
  • 73. 10 Apr 2013 Page 72• Draw cost without visible on-screenresult (except alpha).• Overdraw represented in an additivecolour scheme.• Lighter areas represent higher levelsof overdraw.• Remove these polygons from yourmodel if possible.OptimizationWednesday, 10 April 13
  • 74. 10 Apr 2013 Page 73Wednesday, 10 April 13
  • 75. 10 Apr 2013 Page 74• MipMaps are textures storingprecomputed texture subsampling.• Effectively smaller versions of thetexture.• Swapped at runtime to ensure texel-density is appropriate to the finalon-screen resolution.• Mipmap view shows which MipMaplevel is currently being used.OptimizationWednesday, 10 April 13
  • 76. 10 Apr 2013 Page 75• Highest (blue) mipmap level inforeground, yellow in the middle, redin the distance.• Red in the foreground meanstextures close to the camera willappear blurry.• Blue in the background meanstextures likely to be too high inresolution.• Waste of memory.OptimizationWednesday, 10 April 13
  • 77. 10 Apr 2013 Page 76Wednesday, 10 April 13
  • 78. 10 Apr 2013 Page 77• Set the Max Size for your textures inthe inspector.• Scene should be correctly balanced inthe mipmap view.• Correct distribution (blue> yellow>red) ensures that memory is notbeing wasted.OptimizationWednesday, 10 April 13
  • 79. 10 Apr 2013 Page 78Wednesday, 10 April 13
  • 80. 10 Apr 2013 Page 79• Objects at same scale are staticallybatched.• Rendered in the same draw-call.• Boosts GPU performance.OptimizationWednesday, 10 April 13
  • 81. 10 Apr 2013 Page 80Questions?Wednesday, 10 April 13