УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов...

32
УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации. – М.: ДМК Пресс, 2020. – 808 с.: ил. ISBN 978-5-97060-870-8 В этом руководстве подробно описывается работа в системе визуализацииV-Ray for Maya. Затрагиваются такие темы, как настройка ядра системы визуализации, создание материалов, установка освещения и камер. Приведены практические примеры и продемонстрированы современные технологии,используемые в про- цессе визуализации синтетических изображений. Профессиональные пользо- ватели смогут ознакомиться с форматом данных V-Ray и процессом экспорта сцены из Maya в V-Ray Standalone, а также разобраться с ручным развертыванием V-Ray. Издание адресовано в первую очередь специалистам в области разработки материалов, освещения и финальной визуализации. CG-художники и технические специалисты могут использовать книгу как справочное руководство.Пригодится она и начинающим пользователям Autodesk Maya и V-Ray for Maya,которые хотят разобраться в возможностях V-Ray и функциях, специфичных для этой системы визуализации. УДК 624.01, 004.9 ББК 30.4с515 Все права защищены. Любая часть этой книги не может быть воспроизведена в ка- кой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. © Чехлов Д. А., 2020 ISBN 978-5-97060-870-8 © Оформление, издание, ДМК Пресс, 2020

Transcript of УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов...

Page 1: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

УДК 624.01,004.9ББК 30.4с515

Ч56

ЧехловД.А.Ч56 V-RayдляAutodeskMaya.Руководствоповизуализации. –М.:ДМКПресс,

2020. –808 с.:ил.

ISBN978-5-97060-870-8

ВэтомруководствеподробноописываетсяработавсистемевизуализацииV-RayforMaya.Затрагиваютсятакиетемы,какнастройкаядрасистемывизуализации,созданиематериалов,установкаосвещенияикамер.Приведеныпрактическиепримерыипродемонстрированысовременныетехнологии,используемыев про-цессевизуализации синтетическихизображений.Профессиональныепользо-вателисмогутознакомитьсясформатомданныхV-RayипроцессомэкспортасценыизMayaвV-RayStandalone,атакжеразобратьсясручнымразвертываниемV-Ray.

Изданиеадресовановпервуюочередьспециалистамвобластиразработкиматериалов,освещенияифинальнойвизуализации.CG-художникиитехническиеспециалистымогутиспользоватькнигукаксправочноеруководство.ПригодитсяонаиначинающимпользователямAutodeskMayaиV-RayforMaya,которыехотятразобратьсяввозможностяхV-Rayифункциях,специфичныхдляэтойсистемывизуализации.

УДК 624.01,004.9ББК 30.4с515

Всеправазащищены.Любаячастьэтойкнигинеможетбытьвоспроизведенав ка-койбытонибылоформеи какимибытонибылосредствамибезписьменногоразрешениявладельцевавторскихправ.

©ЧехловД.А.,2020ISBN978-5-97060-870-8 © Оформление,издание,ДМКПресс,2020

Page 2: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Содержание

Введение............................................................................................................11Отавтора...............................................................................................................11Благодарности.......................................................................................................12Очемэтакнига.....................................................................................................12Комуадресованаэтакнига..................................................................................13Требованияк оборудованию...............................................................................14Требованияк программномуобеспечению.......................................................15Форумы,посвященныеAutodeskMayaи V-Ray.................................................16Какчитатькнигу...................................................................................................16Отзывыи пожелания............................................................................................18Списокопечаток...................................................................................................18Скачиваниеисходногокода.................................................................................18Нарушениеавторскихправ..................................................................................19Краткоевведениев компьютернуюграфику.....................................................19

Основыкомпьютернойграфикии визуализации.........................................20Системывизуализации....................................................................................26ИсторияV-Rayи егореализациив 3D-приложениях....................................32НовыевозможностиV-RayNextUpdate1.......................................................33

Глава 1. Свет и цвет в компьютерной графике..................................341.1.Зрительнаясистемачеловека.......................................................................341.2.Цветовыепространства.................................................................................37

Трехцветныезначения.....................................................................................38ЗначенияX,Yи Z..............................................................................................40СтандартныйнаблюдательCIE........................................................................40Функциисогласованияцвета...........................................................................41

1.3.ВычислениеXYZизспектральныхданных..................................................42Эмиссионныйслучай.......................................................................................42Случаис отражениямии преломлениями......................................................42

1.4.ХроматическаядиаграммаCIExyи цветовое пространствоCIExyY........421.5.Смешиваниецветов,указанныхв диаграммецветностиCIExy...............451.6.ОпределениецветовогопространстваСIEXYZ...........................................46

ЗаконГрассмана...............................................................................................47ПостроениецветовогопространстваCIEXYZизданныхРайта–Гилда.......48

1.7.ТрансформацияпространстваXYZв RGB....................................................501.8.ОбщийвзгляднацветовоепространствоACES...........................................501.9.Понятиецветовоймоделии пространстваRGB..........................................51

Понятиеаддитивныхцветов...........................................................................521.10.Краткаяисторияразвитияцветовой модели RGB.....................................53

Page 3: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

4 Содержание

1.11.Управлениецветомв операционныхсистемах.........................................55Управлениецветомв MicrosoftWindows........................................................56Управлениецветомв ApplemacOS.................................................................67Управлениецветомв CentOSLinux................................................................72

1.12.Управлениецветомв приложенияхкомпьютернойграфики..................76Глубинацвета....................................................................................................77

1.13.Системауправленияцветомв AutodeskMaya...........................................80Началоработыс MCMS....................................................................................82Конфигурацияи глобальныенастройкиMCMS.............................................86

1.14.Управлениецветомв V-RayforMaya.......................................................100Коррекцияцветаи тонав V-RayforMaya.....................................................102Трансформацияцветав V-RayFrameBuffer.................................................105

1.15.Управлениецветомв DaVinciResolve......................................................107Цветовоепространствои трансформациицвета.........................................108КонфигурацияLUTв DaVinciResolve............................................................111Примерыконфигурациисистемыуправленияцветомв DaVinciResolve.............................................................................................................116Анализизображенияс помощьюинструментовScopes.............................121

1.16.Управлениецветомв NUKE......................................................................1251.17.Управлениецветомв AdobePhotoshopCC..............................................131

Работас ProofColors.......................................................................................1371.18.OpenColorIOи Photoshop...........................................................................1401.19.Применениекалибровочныхцветовыхшкал..........................................147

Глава 2. Инструменты визуализации Maya........................................1512.1.ВыборнабораменюRendering....................................................................1512.2.ГлобальныепараметрыMaya......................................................................1542.3.ДиалоговоеокноRenderSettings................................................................156

МенюдиалоговогоокнаRenderSettings.......................................................156ВкладкаCommon............................................................................................158СвитокImageFileOutput................................................................................158СвитокTranslator............................................................................................165СвитокAnimation...........................................................................................166СвитокBakingEngineSettings........................................................................167СвиткиRenderableCamerasи Resolution......................................................174СвитокRenderView........................................................................................177СвитокSceneAssembly...................................................................................179СвитокMEL/Pythoncallbacks.........................................................................180

2.4.РедакторматериаловHypershade...............................................................1812.5.РедакторConnectionEditor..........................................................................1872.6.РедакторNodeEditor....................................................................................1892.7.ОкноRenderView..........................................................................................1922.8.РедакторColorChooser................................................................................1952.9.РедакторRenderingFlags.............................................................................1962.10.СистемаRenderSetup.................................................................................1972.11.Рабочиепроцессыв визуализации...........................................................201

Page 4: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Содержание 5

Глава 3. Знакомство с V-Ray for Maya..................................................2043.1.РеализацияV-RayforMaya..........................................................................2043.2.Введениев V-RayStandalone.......................................................................2093.3.СпециальныеавтономныеутилитыV-Ray.................................................212

УтилитаV-RayDenoiser..................................................................................214УтилитаVRImagetoEXRconverter................................................................216УтилитаIrradianceMapViewer.......................................................................218УтилитаLensAnalysisTool.............................................................................219Печатьи съемкакалибровочнойсетки.........................................................222Объективыс фиксированными переменнымфокусным расстоянием....224Выполнениеанализафотографийс калибровочнойсеткой.......................226Анализфотоснимковвручную......................................................................228Изменениеданныхпрофиляобъектива.......................................................230УтилитаTestCorrection..................................................................................231Утилитапроизвольныхкоррекций/искаженийизображений....................231ПрофильFullZoomLens.................................................................................233ОграниченияутилитыCorrection/DistortionUtility.....................................234Применениепрофиляк V-RayPhysicalCameraв Maya................................234УтилитаLensEffectsFilterGenerator.............................................................237УтилитаImagetotiledmultiresolutionEXRconverter...................................238Утилитаконвертациигеометриив V-RayProxy..........................................242УтилитаV-RayMeshViewer............................................................................247

3.4.Рабочийпроцессс V-RayforMayaи V-RayFrameBuffer...........................250V-RayFrameBuffer..........................................................................................252Основнаяпанельинструментов....................................................................253Панельбыстрогодоступак параметрам......................................................256Созданиештамповс информацией..............................................................260Применениеоптическихэффектов..............................................................262Применениекоррекциицветаи управлениецветовыми пространствами..............................................................................................267Применениецветовыхпространстви системуправленияцветом............274

Глава 4. Геометрия, выборка и качество изображений...............2804.1.ПоддерживаемыеV-Rayтипыгеометрии..................................................2804.2.РасширенныесвойстваV-Rayдля узла transfrom......................................2874.3.Расширенныесвойстваи тесселяцияполигональнойгеометриив V-Ray.................................................................................................................289

РасширенныеатрибутыSubdivision..............................................................289РасширенныеатрибутыSubdivisionandDisplacementQuality...................291РасширенныеатрибутыDisplacementControl.............................................293РасширенныеатрибутыOpenSubdiv.............................................................300

4.4.Созданиезакругленныхугловна этапе визуализации.............................3044.5.СозданиеидентификатораObjectID..........................................................3064.6.Созданиепользовательскихатрибутов......................................................307

Примериспользованияпользовательскихатрибутов.................................3084.7.ИспользованиеLocalRayServer..................................................................309

Page 5: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

6 Содержание

4.8.Использованиерадиусаспадатумана(Fog Fade OutRadius)....................310ПримериспользованияFogFadeOutRadius................................................311

4.9.Переопределениесвойствобъектас помощь узла VRayObjectProperties..........................................................................................3124.10.Созданиеи загрузкаобъектовV-RayProxyи моделейV-RayScene......318

Форматфайла.vrmesh....................................................................................319ПоддержкаформатаAlembic.........................................................................319Подготовкаи экспортгеометриив форматV-RayMesh.............................320Импортгеометриив форматеV-RayProxyв сцену.....................................323РедактированиеатрибутовузлаVRayMesh..................................................324СвитокBasicParameters.................................................................................325СвитокAlembicLayers....................................................................................327СвитокAnimationParameters.........................................................................327СвитокAlembicProxyParamaters..................................................................329СвитокPointCloud..........................................................................................330СвитокMaterialassignmentoverrides............................................................330СвитокVRayMeshFileInfo..............................................................................331

4.11.Работас форматомV-RaySceneи инструментомV-RaySceneManager................................................................................................................332

ДлячегонеобходимоиспользоватьV-RayScene?........................................332Экспортсценыв форматV-RaySceneи импортс помощью V-RaySceneManager.................................................................................................334Импортматериаловизфайловв форматеV-RayScene..............................335Визуализацияс помощьюV-RayStandalone................................................336Конвертированиев объектыV-RayProxy.....................................................336РедакторV-RaySceneManager.......................................................................337АтрибутыузлаVRayScene..............................................................................338ПрименениеMayaMASHсовместнос V-RayProxyи V-RayScene..............342

4.12.ОбъектVRayPlane.......................................................................................3474.13.ОбъектVRayClipper....................................................................................3484.14.Визуализациякривыхв V-RayforMaya....................................................3514.15.ВизуализацияNURBSв V-RayforMaya.....................................................3534.16.Сглаживаниеи выборкаизображения.....................................................353

Чтотакоесглаживаниеизображения(Anti-aliasing)?..................................354СвитокImageSampler.....................................................................................356КонфигурацияV-RayProgressiveEngine.......................................................363КонфигурацияV-RayBucketSampler.............................................................365НастройкаDMCSampler.................................................................................369ПричиныпоявленияDMCSampler................................................................370ОпределениезначенийдляDMCSampler.....................................................371

4.17.Оптимизацияработыядрасистемывизуализации.................................371НастройкиRaycaster.......................................................................................372ИспользованиевозможностейбибилиотекиIntelEmbree..........................374РасширенныенастройкиработыядраV-Ray...............................................375Функцияотслеживанияиспользованияпамяти..........................................377Переопределениепараметроввизуализации..............................................378

4.18.Визуализацияс помощьюV-RayGPU.......................................................381

Page 6: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

7

Распределениересурсовсистемыдлявычислений.....................................383НастройкаV-RayGPU.....................................................................................386

4.19.Анализсценыс помощьюэлементаV-RaySampleRate.........................393

Глава 5. Шейдеры V-Ray for Maya.........................................................3965.1.Материаловедение.......................................................................................396

Примерыс неорганическимиматериалами................................................397Примерыс органическимиматериалами....................................................399

5.2.ШейдерыматериаловV-Ray........................................................................400Специальныеатрибутыдляшейдеровматериалови текстур....................400ШейдерVRayBlendMtl....................................................................................406ШейдерVRayMtl2Sided...................................................................................410ШейдерVRaySwitchMtl...................................................................................413ШейдерVRayBumpMtl....................................................................................414ШейдерVRayMtl..............................................................................................417ШейдерVRayLightMtl.....................................................................................443ШейдерVRayCarPaintMtl................................................................................447ШейдерVRayFastSSS2.....................................................................................459ШейдерVRaySkinMtl.......................................................................................471ШейдерVRayAlSurface....................................................................................472ШейдерVRayMtlWrapper................................................................................476ШейдерVRayMeshMaterial.............................................................................478ШейдерVRayMtlHair3.....................................................................................481

5.3.ШейдерытекстурныхкартV-Ray................................................................485УзелопределениярастровойтекстурнойкартыFile...................................487Узелпозиционированиядвумернойтекстурыplace2dTexture...................493ШейдерOcclusionorDirtMap|VRayDirt.......................................................497ШейдерEdgesMap|VRayEdgesTex.................................................................500ШейдерFalloffMap|VRayFalloff....................................................................501ШейдерFresnelMap|VRayFresnel.................................................................505ШейдерLayeredTexture|VRayLayeredTexture..............................................506ШейдерMultiSub-ObjectMap|VRayMultiSubTex.........................................510ШейдерRaySwitchMap|VRayRaySwitch.......................................................513ШейдерTriplanarTextureMapping|VRayTriplanar.......................................515Работас текстурнымикартамив форматеPtex...........................................518

Глава 6. Камеры и освещение в V-Ray................................................5416.1.Основыработыс камерой...........................................................................541

Подробнеео правилетретей.........................................................................5456.2.СтандартныекамерыMaya..........................................................................546

СвитокCameraAttributes...............................................................................550СвитокFilmBack.............................................................................................554СвитокEnvironment........................................................................................560СвитокSpecialEffects.....................................................................................562СвитокOrthographicViews.............................................................................563

6.3.КамерыV-Ray...............................................................................................564

Page 7: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

8 Содержание

ДобавлениедополнительныхатрибутовкамерыV-Ray..............................565Созданиепереопределенийкамерыв редактореRenderSettings..............565АтрибутыкамерыV-Ray.Введение...............................................................565АтрибутыкамерыV-Ray.V-RayPhysicalCamera..........................................567Моделированиеэффектаглубинырезкостии размытия движения..........579АтрибутыкамерыV-Ray.CameraSettings.....................................................585АтрибутыкамерыV-Ray.DomeCamera.........................................................587Глобальныеатрибутыэффектаразмытиядвижения...................................588

6.4.Основыработыс освещением....................................................................5906.5.ИсточникисветаV-Ray................................................................................595

ИсточниксветаV-RayRectangleLight...........................................................596ИсточниксветаV-RayDomelight..................................................................607УзелопределенияположениятекстурнойкартыокруженияVRayPlaceEnvTex.............................................................................................613Моделированиеосвещенияотсолнцаи небосвода.....................................614РеализацияV-RaySunи V-RaySkyв Maya....................................................616ШейдерпроцедурнойтекстурнойкартыокруженияV-RaySkyTexture.....624УзелизмененияположениясолнцаVRayGeoSun.........................................624ИсточниксветаV-RayLightSphere................................................................626ИсточниксветаV-RayLightMesh..................................................................628ИсточниксветаV-RayIESLight......................................................................629ПросмотрIESпрофилей.................................................................................630КлючевыеатрибутыисточникасветаV-RayIESLight.................................631

6.6.ИнструментV-RayLightLister.....................................................................6336.7.Глобальноеосвещениев V-Ray...................................................................635

Первичныеи вторичныеотражения.............................................................635Подходык формированиюглобальногоосвещения...................................637ОбщийвзгляднаметодыGI...........................................................................639ПараметрыметодовGIи ихнастройка........................................................643ПараметрыметодаBruteForceGI..................................................................643ПараметрыметодаIrradianceMap.................................................................644ПараметрыметодаLightCache......................................................................655Моделированиеэффектакаустики...............................................................665

Глава 7. Вывод изображения и композитинг....................................6717.1.Подготовкасценык визуализации.............................................................671

Списокэлементовизображения....................................................................674Атрибуты.........................................................................................................674

7.2.ФорматOpenEXRи управлениеданными.................................................676Стандартныеизображенияи изображенияс глубиной пикселей..............679Части,изображения,файлытиповSingle-Partи Multi-Part........................680Заголовкии атрибуты....................................................................................680Пространствопикселя,окноотображенияи окноданных.........................680Каналыизображенийи количествообразцов..............................................682Ограничениянаколичествообразцов..........................................................683Проекция,координатнаясистемакамерыи областьэкрана......................683

Page 8: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Содержание 9

PixelAspectRatio.............................................................................................683ScanLines.........................................................................................................684Tiles..................................................................................................................684Уровнии режимыуровней............................................................................685Значенияуровней,размерыуровнейи RoundingMode..............................686Координатыпрямоугольныхобластей..........................................................686Виды................................................................................................................687РеализацияOpenEXRв V-Rayи NUKE...........................................................687Заголовок........................................................................................................690Ограниченияназначенияатрибутов...........................................................692Scan-Line-изображения..................................................................................692Прямоугольныеобласти.................................................................................692Компрессияданных........................................................................................693Яркость/цветностьизображений..................................................................694ТипданныхHALF............................................................................................695Рекомендации.................................................................................................695Цвет,альфа-канали композитингflat-изображений..................................698ТеорияOpenEXRDeepSamples......................................................................699

7.3.V-RayRenderElementsи процесскомпозитинга......................................708Подгруппыэлементовизображений.............................................................710Списокподдерживаемыхэлементовизображения.....................................710Основныеэлементыи ихатрибуты..............................................................716Инструментыобъединенияэлементовприложенияхдля композитинга...........................................................................................717Базовыеэлементыизображения...................................................................720Базовыеэлементыкомпонентизображения...............................................722ОпорныеэлементыRAWв композитингебазовыхэлементов..................742Созданиегруппосвещенияс помощьюэлементаLight Select...................744ОсновныеатрибутыэлементаLightSelect...................................................745Добавлениеисточниковсветав связьс элементомLight Select.................747Общийпроцесскомпозитинга......................................................................748Элементыдляформированияи управлениямасками................................750Созданиемасокс помощьюэлементаCryptomatte.....................................757УстановкаCryptomatteplug-in’sв NUKEи Fusion........................................761ЭлементизображенияCryptomatteв V-RayforMaya...................................763ЭлементыизображенияZ-Depthи Velocity..................................................767ЭлементLightingAnalisis.Анализосвещенияв сцене................................772ЭлементDenoiser.Удалениешумас изображения......................................775Алгоритмыи методыустраненияшума.......................................................776Предлагаемыенастройкивизуализации......................................................780Очисткаотдельныхэлементовизображения...............................................782Удалениешумав режимеIPR........................................................................782

Приожение А. Установка и развертывание V-Ray..........................783А.1.Загрузкадистрибутиваи подготовкак установке....................................783A.2.УстановкасервералицензийChaosGroup.................................................787A.3.УстановкаV-RayforMayaс помощьюинсталлятора...............................789

Page 9: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

10 Содержание

A.4.УстановкаV-RayforMayaизZIP-архива....................................................792

Приложение Б. Конфигурация V-Ray...................................................799Б.1.ЗагрузкамодулярасширенияV-RayforMaya............................................799Б.2.ЗапускV-RayStandalone..............................................................................799Б.3.ЗапускV-RayStandaloneRenderServer.......................................................800

Приложение В. Экосистема V-Ray.........................................................801

Список литературы......................................................................................803

Page 10: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Введение

От автОра

Идея написать вторую книгу, посвященную одной из самых интересныхи динамичноразвивающихсяобластейв индустриикомпьютернойграфики,у меняпоявиласьдостаточнодавно,ещев 2010году.Ноещераньше,в 2007 го-ду,я задумывалсяо том,чтобывзятьсязанаписаниекниги,посвященнойин-струментами технологиямвизуализации.С опытомпришлоосознаниетого,чтои какнужносделать,а такжепониманиетого,чтонарынкепрактическиотсутствует целый пласт литературы, посвященной пакету Autodesk Maya,а такжеинструментами техникамвизуализации.

СистемойвизуализацииV-Rayя пользуюсьнапротяжениимногихлет,и по-чемубынерассказатьо еевозможностях?Ведьдостаточночастопользователиобращаютсяс множествомвопросово том,какиспользоватьV-Ray,каксвя-зыватьмеждусобойшейдерыи многиедругиевозможностии инструментысистемывизуализации.Этои послужилотолчкомк началуработынадновойкнигой,целикомпосвященнойвизуализациив пакетеAutodeskMayaи систе-мевизуализацииV-RayforMaya.

Яродилсяи живув городеЕкатеринбурге,столицеУрала,практическинаграницеЕвропыи Азии.В сферекомпьютернойграфикиработаюнапротяже-нии19лет.СвойпутьмнедовелосьначатькакпростомуCG-художнику(Com-puterGraphics),выполняяразличныезаказыи практикуясь.Благодаряэтомуудалосьполучитьхорошийопытв различныхобластяхкомпьютернойграфи-кии дизайна.Нообластьвизуализации,системнойинженериии технологиймневсегданравиласьбольше,чтои послужиложеланиемразвиватьсяв дан-номнаправлении.

Осенью2007годабылопубликованмойпервыйурокнастраницахонлайн-журналаRENDER.RU,с этогомомента,можносказать,началасьмоядеятель-ность в  качестве техническогописателяи ИТ-журналиста.Сейчас основноенаправлениемоейдеятельности –теориякомпьютернойграфикии визуали-зации,теорияи практикаобработкиизображений,разработкарабочихпро-цессов.Подмоимавторствомизданои опубликованомножествостатейи об-зоров,посвященныхтеметехнологийвизуализациив CG.

Напротяжениидвухдесятилетийсобраласьогромнаяколлекцияматериа-лов,посвященныхметодами инструментамвизуализациисовременныхCG-изображений.Большинствоизнихвошлов идеюнаписаниякниги,которуювыдержитев своихруках,целикомпосвященнойтехниками инструментамвизуализации.

Такжея ведупрофильныйблогподназванием«dimson’sBlog» –онпосвя-щенобщимвопросамCGи различнымновостямизмиратехнологий.Досту-пенв сетиинтернетпоадресуhttp://dimson3d.blogspot.com/.

Page 11: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

12 Введение

На страницах онлайн-журналаRENDER.RU я  веду свою авторскую колон-ку и  блог для сообщества художников, целиком посвященный технологиями возможностямсовременныхинструментоввизуализации.Доступенв сетиинтернетпоадресуhttps://render.ru/ru/dimson3d.

БлагОдарнОсти

Забезграничнуюподдержкуя хочупоблагодаритьсвоихдрузейи коллег,ктоподдержалидеюнаписаниякнигии помогреализоватьзадуманныепланы.

Заоказаннуюподдержкуи помощьвыражаюбольшуюблагодарностьсвоимдрузьям,а именно:главномуредакторупорталаRENDER.RUРомануЦапику,АлександруКыштымову (Skif) запредоставленныеиммоделидля созданияиллюстрацийв книге.Благодарюсвоегоблизкогодругаи талантливогоредак-тораЛидиюДобрачеву, поддержавшую в  период работынад сложнейшимиразделамикниги.Запомощьв созданиииллюстрацийкнигии подготовлен-ныеобразыблагодарюСветлануЧубатову.

Завозможностьиспользованиясовременныхрешенийдлякомпьютернойграфикии визуализации, заподдержкуи возможность «немногоопережатьвремя»выражаюблагодарностьпредставительствукомпанииAutodeskв Рос-сиии программеAutodeskDeveloperNetwork.Заподдержкуи посильнуюпо-мощьхочетсяпоблагодаритьсвоихдрузейи коллегизAutodeskExpertElite:АндреяПлаксинаи ЕленуТалхину.

Затехническуюподдержкуи обеспечениенеобходимымивычислительны-миресурсамивыражаюогромнуюблагодарностьЕвгениюЗверевуи РомануЛуценкоизкомпанииFORSITE.Такжезаподдержкуи обеспечениенеобходи-мымипрограммнымирешениямиблагодарюпредставителейкомпанииChaosGroup, а именноДжавидаИманова (Javid Imanov)и АлександраКаракашева(AlexanderKarakashev).

О чем эта книга

Книга,которуювыдержитев руках,посвященасистемевизуализацииV-RayоткомпанииChaosGroupи егореализациив видеинтеграцииV-RayforMaya.С однойстороны,этоподробныйгидпоосновныматрибутами параметрамсистемывизуализации,нотакжеэтакнигараскрываетосновныепринципыпредставленияданныхи работуосновныхалгоритмов,используемыхв ядресистемывизуализацииV-RayforMaya.

Книгапредставленасемьюглавамии тремяприложениями.Приведукрат-коеописаниеключевыхтем.

Глава1«Свети цветв компьютернойграфике».Перваяглавапосвяще-на теории и  инструментам управления цветом в  приложениях компьютер-нойграфикии пост-обработки.В даннойглавеподробнорассмотренытакиевопросы,какцветовыемоделии пространства,системыуправленияцветомв ведущихприложенияхкомпьютернойграфики,преобразованиюцветовыхпространствизодногов другоеи выводаизображениянадисплей.

Page 12: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Кому адресована эта книга 13

Глава2«ИнструментывизуализацииMaya».Втораяглавапосвященане-посредственнопакетуAutodeskMayaи реализованнымв егоинтерфейсеин-струментамвизуализациитрехмерныхсцен.Благодаряэтойглавевыузнаетео реализацииV-RayforMayaи первичнойнастройкесистемывизуализации.

Глава3«Началоработыс V-RayforMaya».Третьяглавацеликомпосвя-щенаначалуработыс V-RayforMaya.Здесьвыузнаетеобосновныхэлементахинтерфейса,в которыхреализованфункционалV-Ray,о поставляемыхв ком-плектес V-RayforMayaдополнительныхинструментахи ихназначении.

Глава 4 «Геометрия и  выборка». В  четвертой главе рассматриваютсяпринципыработыс геометрией,методамивыборкии качествомвизуализиру-емогоизображения;какиенастройкииспользоватьдляповышениякачествасглаживанияи трассировкилучей;какиеметодыпредоставляетV-Rayи когдаихцелесообразноприменять.

Глава5«ШейдерыV-Ray».Пятаяглавацеликомпосвященаработес шей-дерамиматериалови текстур,поставляемыхс V-RayforMaya;основныммо-делям затенения и  технологиям текстурирования объектов, реализованныхв V-RayforMaya.

Глава6«Камерыи освещениев V-Ray».В шестойглаведетальноописаныкамерыи источникисвета,свойстваисточниковсветаи методыглобальногоосвещения,реализованныев V-RayforMaya.

Глава7«Выводизображенийи композитинг».В седьмойглавеописа-ныпринципывыводаизображенийи записьопределенныхданных.Подроб-норассмотренформатOpenEXRи приведеныосновныеалгоритмысведенияэлементовизображениянаэтапекомпозитингас применениемNUKE,а такжеданонесколькопримероввоFUSIONи AdobeAfterEffects.

ПриложениеА«Установкаи развертываниеV-RayforMaya».Этотраз-дел целиком посвящен установке и  развертыванию системы визуализацииV-RayforMaya;онбудетполезенприпереходенановуюверсиюпрограммыи  ядра визуализации, а  также для развертывания на фермах визуализациис операционнымисистемамиLinuxи Windows.

ПриложениеБ«КонфигурацияV-RayforMaya».Вовторомприложениирассмотреныосновныепеременныесреды,используемыедляконфигурациисистемывизуализацииV-RayforMayaи V-RayStandalone.

ПриложениеВ«ЭкосистемаV-Ray».КраткоеописаниеэкосистемыV-Ray,интеграциив различные3D-пакетыи конвейерпередачиданныхмеждураз-личнымиприложениями.

Всеглавыданнойкнигипредставляютотдельныеобластифункционально-стисистемывизуализацииV-RayforMaya –отнастройкибазовыхпараметровсистемы визуализации до моделирования глобального освещения в  сценеи выводамногоканальныхизображений.Опираясьнапредставленныйв кни-ге материал, вы можете выстраивать свои собственные рабочие процессы,наиболеевыгодныедлявашегостиляработыи проектов.

кОму адресОвана эта книга

Даннаякнигапреждевсегоадресованаспециалистам,работающимв областиразработкиматериалов,освещенияи финальнойвизуализации.Этоиздание

Page 13: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

14 Введение

может быть применено как подробное справочное руководство для CG-ху-дожникови техническихспециалистов.НачинающиепользователиAutodeskMayaи V-RayforMayaсмогутлучшеразобратьсяв возможностяхV-Rayи спе-цифичныхдляданнойсистемывизуализациифункциях.

треБОвания к ОБОрудОванию

Для работы с  V-Ray for Maya рекомендуется использовать компьютеры соследующими минимальными требованиями. В  качестве основы взяты тре-бованиядлявсегопакетав целом.ПакетAutodeskMaya2018поддерживаетследующие 64-битные операционные системы и  минимальные требованияк оборудованию.

Операционнаясистема:� Windows®7Professionaledition;� Windows®8.1Professionaledition;� Windows®10Professionaledition;� Apple®macOS®X10.11.x,10.12.x,10.13.x,10.14x1;� RedHat®EnterpriseLinux®6.5&7.2WS2;� CentOS6.5&7.2Linux.

Для доступа к  онлайн-документациии  сервисамнеобходимы следующиевеб-браузеры:

� Microsoft®InternetExplorer®;� Apple®Safari®;� Mozilla®Firefox®;� GoogleChrome™.

Центральныйпроцессор(CPU):64-битмногоядерныйпроцессоротIntelилиAMDс поддержкойнабораинструкцийSSE4.2.

Рекомендуетсяпроцессор с  четырьмяи  более вычислительнымиядрами.ПроцессорыоткомпанииIntel(спомощьютехнологииHyper-Threading(HT))и процессорыкомпанииAMD(набазеархитектурыZen)могутобрабатыватьдвапотоканакаждомизфизическихядер.Дляэтогоследуетобращатьвнима-ниенамодельпроцессораи егомаркировку;обычноколичествоядер/потоковопределяетсязначениями2/4,4/8,6/12,8/16,10/20,32/64и т.д.

Оперативнаяпамять(RAM):минимум8 Гб(рекомендуется16 Гби боль-ше).Дляработыс большимии комплекснымисценамирекомендуетсяисполь-зовать32или64  Гб+оперативнойпамяти.Это такжепозволиткомфортнееработатьс несколькимиодновременнозапущеннымипрограммамиилиэк-земплярамиMaya.

Жесткийдиск(HDD):дляустановкипакетаAutodeskMaya2018поумолча-ниютребуется3 Гбсвободногопространстванажесткомдиске.

1 ЕсливывыполнилиобновлениедоmacOS10.15,ознакомьтесьс информациейо пе-реходенаверсиюmacOSCatalina,доступнуюнастраницеRunningpreviousversionsofMayaonmacOSCatalina:https://knowledge.autodesk.com/support/maya/troubleshoot-ing/caas/simplecontent/content/running-previous-versions-maya-macos-catalina.html.

2 Требуетсялицензияmulti-user,лицензияsingle-userнеподдерживается.

Page 14: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Требования к программному обеспечению 15

Графическийускоритель(GPU):рекомендуетсяиспользоватьGPUотком-панийNVIDIAилиAMDс 4 Гбграфическойпамятии выше.

ПакетAutodeskMaya2018поддерживаетMulti-GPUконфигурациирабочихстанций;такимобразом,выможетеиспользоватьнесколькоGPU,установлен-ныхв  вашейсистеме.Этопозволяетприменятьбольшиетекстурныекартыи выполнятьинтерактивнуювизуализациюв панеляхвидовыхоконпроекцийс высокойскоростью.

Дляобеспеченияфункцийи поддержкиускорениявычисленийс применени-емGPUв Mayaи V-RayGPUубедитесь,чтовашграфическийускорительподдер-живаетAPINVIDIACUDA(дляGPUотNVIDIA)и OpenCL(дляGPUNVIDIAи AMD).

Манипулятор:трехкнопочнаямышь.Помимомыши,в пакетеAutodeskMayaможносмелоиспользоватьграфи-

ческийпланшет,такойкакIntuosоткомпанииWACOM,а такжеспециальныйманипуляторSpacePilotоткомпании3DConnection.

ЗапускMayaв виртуализированномокружениинаосновеNVIDIAGRIDи VMware.ВыможетезапуститьMayaв виртуальнойсреде с применениемвозможностей технологии NVDIA GRID и VMware. Это позволяет запускатьприложениенаудаленнойсистемеи выполнятьработус применениемуда-ленныхрабочихстолов.Подробнеео запускеMayaв виртуализированнойсре-девыможетеузнатьиздокументаNvidia Guide for Virtualization with GRID & VMWare, доступного по ссылке http://images.nvidia.com/content/grid/pdf/maya/NVIDIA-GRID%20Application-Guide-Autodesk-Maya.pdf.

Этоминимальныетребованияк оборудованию,накоторомможетбытьза-пущенпакетAutodeskMayaс V-RayforMaya.Посути,чемпроизводительнеебудетCPUи другиекомпонентысистемы,тембыстреевысможетевыполнятьработунадпроектами.Неменееважнымсчитаетсятотфакт,чтокомпанияAutodeskвыполняетсертификациюрабочихстанцийи графическихускорите-лей.Сертификацияпозволяетбыстреевыбратьподходящуюмодельрабочейстанцииилиграфическогоускорителя,а такженайтидрайверы,сертифици-рованныеподтекущуюверсиюприложения.

треБОвания к прОграммнОму ОБеспечению

ВданнойкнигерассматриваетсяAutodeskMaya2018Update6.Этопрограмм-ноеобеспечениеможнозагрузитьс официальногосайтакомпанииAutodeskс правомбесплатногоиспользованияв течение30дней(trialversion):https://www.autodesk.com/products/maya/overview.

Помимоэтого,длястудентови преподавателейдоступнавозможностьпри-менения полноценной версии AutodeskMaya, доступной по академическойлицензии.ПрограммуможнозагрузитьсоспециальногоресурсаAutodeskEdu-cationCommunity:https://www.autodesk.com/education/home.

Академическаялицензиядействуетнапротяжениитрехлетс моментауста-новкии активациипрограммы.Стоитучесть,чтоданныелицензиинепод-разумеваюткоммерческоеиспользованиепрограммы.ДляпримененияAuto-deskMayaв коммерческихпроектахрекомендуетсяприобрестиданноепро-граммноеобеспечениеу партнерови дистрибьюторовкомпании.

Page 15: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

16 Введение

Рекомендуетсяпозаботиться об обновленияхпрограммного обеспечения.Обновлениядоступныпоследующемуадресу:https://manage.autodesk.com/.

В процессе написания книги все сцены были созданы на основе возможностей Autodesk Maya 2018 Update 6. Я рекомендую использовать текущую, доступную для загрузки версию Maya.

ВэтойкнигерассматриваютсяV-Ray3.6forMayaи V-RayNext,Update1.Этопрограммноеобеспечениеможнозагрузитьс официальногосайтакомпанииChaosGroupс правомбесплатногоиспользованияв течение30дней(trialver-sion):https://www.chaosgroup.com/vray/maya.

Длястудентови преподавателейдоступнавозможностьпримененияполно-ценнойверсииV-RayforMaya,доступнойпоакадемическойлицензиизами-нимальнуюплату.ЦентрресурсовдляобразованияChaosGroupдоступенпоссылкеhttps://www.chaosgroup.com/resources.

ФОрумы, пОсвященные Autodesk MAyA и V-RAy

Еслиу васпоявилисьвопросыпоработес пакетомAutodeskMayaи системойвизуализацииV-Ray forMaya,выможетезадатьихнаспециализированныхфорумах,посвященныхкомпьютернойграфикеи продуктамкомпанииAuto-desk.Специалисты,работающиес даннымирешениями,всегдапостараютсяответитьнавашивопросыи датьполезныйсовет.

Форум Autodesk Community Russia, посвященный Maya и  3ds Max:https://forums.autodesk.com/t5/3ds-max-maya-russkiy/bd-p/379.

Форум Chaos Group, посвященный системе визуализации V-Ray forMaya:https://forums.chaosgroup.com/forum/v-ray-for-maya-forums.

Форумонлайн-журналаRENDER.RU,посвященныйMaya:https://render.ru/xen/forums/maya.3/.

Форумонлайн-журналаRENDER.RU,посвященныйсистемевизуали-зацииV-Ray:https://render.ru/xen/forums/vray.22/.

как читать книгу

Данное издание в  своей основе является руководством по визуализациив V-RayforMaya.Так,примерыблоковдекларацииэлементовсценыи специ-фикацийшейдеровв форматеV-RaySceneпредставленыв виделистинга:

GeomStaticMesh pPlaneShape1@mesh3 { vertices=ListVector( Vector(-2.5, -5.551115e-016, 2.5), Vector(2.5, -5.551115e-016, 2.5), Vector(-2.5, 5.551115e-016, -2.5), Vector(2.5, 5.551115e-016, -2.5) ); faces=ListInt(0,1,3,0,3,2); normals=ListVector(

Page 16: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Как читать книгу 17

Vector(0, 1, 2.220446e-016), Vector(0, 1, 2.220446e-016), Vector(0, 1, 2.220446e-016), Vector(0, 1, 2.220446e-016) ); faceNormals=ListInt(0,1,2,0,2,3); map_channels=List( List( 0, ListVector( Vector(0, 0, 0), Vector(1, 0, 0), Vector(0, 1, 0), Vector(1, 1, 0), Vector(0, 0, 0) ), ListInt(0,1,3,0,3,2) ) ); map_channels_names=ListString( "map1" ); edge_visibility=ListInt(51); primary_visibility=1; dynamic_geometry=0; first_poly_vertices=ListInt( );}

Еслииспользуются сценариинаязыкахMEL,Pythonиливыражения, онитакжепредставленыв виделистинга,нопередэтимотдельноотмечено,чтоприведенныйлистингпредставляетсценарийиливыражениенаязыкеMELилиPython.

Еслиатрибутуказываетсявпервые,онбудетотмеченжирнымшрифтом.В рядессылокнаконкретныеатрибутыатрибутвыделенкурсивом.Есливпер-выеуказываетсядиалоговоеокноредактора,в которомвыполняетсянастрой-кашейдера,источникасвета, связеймеждуузламии другиенастройки,егоимябудетвыделенокурсивом.

Путидоступак диалоговымокнами другимфункциямпрограммы,реали-зуемымс помощьюменю,представленыследующимизаписями,выполнен-нымикурсивом:

Menu ⇒ Sub-Menu ⇒ Window ⇒ Rollout ⇒ Sub-RolloutMenu ⇒ Sub-Menu ⇒ Window ⇒ □Путик директориямилифайлами расширенияфайловпредставленыза-

письюв стилеUNIX-подобныхсистемс применениеммоноширинногошрифта:

/home/<UserName>/maya/XXXX/prefs

Этосделаноспециально,таккакпакетAutodeskMayaи системавизуализа-цииV-Rayиспользуютпринципыопределенияпутейв файловойсистеме,ре-ализованныев UNIX-подобныхсистемах,а такжеконфигурацияприложенияможетбытьзаписанатолькос использованиемкосойчерты.Данныйпринцип

Page 17: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

18 Введение

записипутейв директорияхреализованв операционныхсистемахApplema-cOSи семействаGNU/Linux.

Большинствоскриншотовв книгевыполненов версииAutodeskMayaдляLinux(окружениеGNOME3).НекоторыеиллюстрацииспециальновыполненынадругихОС,нопринципиальныхразличийв интерфейсеилиназванияхин-струментовнет,программаMayaи системавизуализацииV-RayforMayaраз-работаныкакуниверсальноемультиплатформенноерешение.А особенностикаждойизплатформв текстеоговореныотдельно.

Так выделяется информация на заметку.

Так обозначаются советы.

Так обозначаются предупреждения и предостережения.

Отзывы и пОжелания

Мывсегдарадыотзывамнашихчитателей.Расскажитенам,чтовыдумаетеобэтойкниге –чтопонравилосьили,можетбыть,непонравилось.Отзывыважныдлянас,чтобывыпускатькниги,которыебудутдлявасмаксимальнополезны.

Выможетенаписатьотзывпрямонанашемсайтеwww.dmkpress.com,зайдянастраницукниги,и оставитькомментарийв разделе«Отзывыи рецензии».Такжеможнопослатьписьмоглавномуредакторупоадресу[email protected],приэтомнапишитеназваниекнигив темеписьма.

Еслиестьтема,в которойвыквалифицированы,и вызаинтересованыв на-писании новой книги, заполнитеформу на нашем сайте http://dmkpress.com/ authors/publish_book/илинапишитев издательство:[email protected].

списОк ОпечатОк

Хотямыприняливсевозможныемерыдлятого,чтобыудостоверитьсяв ка-чественашихтекстов,ошибкивсеравнослучаются.Есливынайдетеошибкув однойизнашихкниг –возможно,ошибкув текстеилив коде, –мыбудемоченьблагодарны,есливысообщитенамо ней.Сделавэто,выизбавитедру-гихчитателейотрасстройстви поможетенамулучшитьпоследующиеверсииданнойкниги.

Если вынайдете какие-либо ошибки в  коде, пожалуйста, сообщите о  нихглавномуредакторупоадресу[email protected],и мыисправимэтов сле-дующихтиражах.

скачивание исхОднОгО кОда

Скачатьфайлыс дополнительнойинформациейдлякнигиздательства «ДМКПресс»можнонасайтеwww.dmkpress.comнастраницес описаниемсоответст-вующейкниги.

Page 18: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 19

нарушение автОрских прав

Пиратство в  интернете по-прежнему остается насущной проблемой. Изда-тельство«ДМКПресс»оченьсерьезноотноситсяк вопросамзащитыавторскихправи лицензирования.Есливыстолкнетесьв интернетес незаконновыпол-неннойкопиейлюбойнашейкниги,пожалуйста,сообщитенамадрескопиииливеб-сайта,чтобымымоглиприменитьсанкции.

Пожалуйста,свяжитесьс намипоадресу[email protected]соссылкойнаподозрительныематериалы.

Мывысокоценимлюбуюпомощьпозащитенашихавторов,помогающуюнампредоставлятьвамкачественныематериалы.

краткОе введение в кОмпьютерную граФику

Всовременноммирекомпьютернаяграфикаи визуализациязанимаютедвали не главную позицию в  представлении различной информации, начинаярекламой новых продуктов и  заканчивая интерактивными развлечениями.Визуализацияв компьютернойграфикеявляетсяоднимизэтаповв форми-рованиистатичногоизображенияилисеквенциикадрованимации,позволя-ющихреализоватьтворческуюидею.Запоследниетридесятилетияуровенькомпьютернойграфикивыроснастолько,чтосейчассложноотличитьсоздан-ноес помощьюкомпьютераи программыизображениеотфотографии.В своюже очередь это стало достижимо благодаря таким продуктам, как AutodeskMayaи ChaosGroupV-Ray.

Рядпроизведенийцифровогоискусствамогутсоперничатьс работамииз-вестных мировых художников, работающих в  классических техниках. Приэтоммногиемолодыеталанты,выросшиев эпохурасцветавысокихтехноло-гий,предпочитаютпользоватьсякомпьютерамии мобильнымиустройствамидлявоплощениясвоихобразовв жизнь.

Широкую популярность получило распространение трехмерной графики.Сейчаснельзяпредставитьсебепрезентациюновогожилогокомплекса,инте-рьеровжилыхи офисныхпомещений,а такжепродуктовбытовойэлектрони-кии многогодругогобезкачественнойфотореалистичнойвизуализации.Неменееважнойявляетсяобластьанимации.Начинаяс 70-хгодовXXвека,ин-дустрияанимациии цифровыхэффектовнабралабольшиеобороты.Процессне был простым – сначала происходило плавное смешивание классическойрисованной анимации с  компьютерной. А  впоследствии, получив широкоепризнание среди зрителейи  экспертов, компьютерная анимация завоеваларынок.Лидерамив индустриикомпьютернойанимациипо-прежнемуоста-ютсятакиестудии,какPIXARAnimationStudios,WaltDisneyFutureAnimationStudios,SonyPicturesImageworksAnimationи DreamWorksAnimation.Естьрядменееизвестных, но выпускающихне уступающие лидерам анимационныепродуктыкакзарубежом,таки натерриторииРоссиии странСНГ.

Вданномразделевведениявыпознакомитесьс краткойобщейисториейкомпьютернойграфикии терминологией,используемойв процессесозданияцифровогоизображения.Еслидажеинструментымогуткардинальноменять-

Page 19: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

20 Введение

ся,тосамипринципысозданияцифровыхмоделейи визуализацииостаютсяпрактическибезизмененийуженапротяжениичетвертивека.

Основы компьютерной графики и визуализацииВсвоейосновесовременнаякомпьютернаяграфика –чистаяматематикаи ал-горитмы,поверхкоторыхпостроенывсеосновныеинструменты(программы)и методыпредставленияинформации.Многиеизосновныхметодовпострое-нияи визуализациитрехмерныхповерхностейбылиразработаныв серединеXXстолетия,когдакомпьютерыбылидоступнытолько«избранным»и зани-малицелыеэтажи.Однимизудачныхпримеровприменениякомпьютернойграфикии фрактальныхалгоритмовможноназватьфильм1982года«Звезд-ныйпуть 2: ГневХана». В  этомфильме создатели визуальных эффектовизстудииIndustrialLight&Magicвпервыеприменилифрактальныеалгоритмыдлясозданиягорныхландшафтов.

Так какмы чаще работаем с полигональноймоделью, многие из алго-ритмови принциповпостроенияформоснованынаклассическойгеометриии алгебре.Рассмотримнебольшойпример.Нарис. В.1приведенытрииллю-страции.Перваяиллюстрация(слева)демонстрируетпростейшуюточку.Точ-кабесконечна,оназанимаетопределенноеместов пространстве,норазмереебесконечномал.Этопосвоейсутикоординаты,к которымможноподвестиодинизконцовребра.Нарисункепредставленыкоординатыточки0.5и 0.5поосямXи Y.Обратитевниманиенато,что,посути,мыможемподвестибес-конечноемножестворебер,которыемогутбытьсвязаныс другимиточками.

Рис. В.1 Три основных примитива, являющиеся основой для базового представления геометрии в компьютерной графике

Рисунокв центрекакраздемонстрируетэто –дветочкис заданнымико-ординатами,а междунимипрочерченалиния.Линияможетсвязатьтолькодветочки.Еслимынаоднойпрямойдобавимнесколькоточек,мыполучимотрезки,каждыйизкоторыхиндивидуалени соединяетподветочки.Нов тожевремякаждаяточкатакжеможетвключатьв себямножестволиний.И тре-тийпример –триточки,присозданиисвязеймеждунимии замыканияот-резков сформируется треугольник (справа). Треугольник является одной изосновополагающихфигурв компьютернойграфике.Дажееслимыработаем

Page 20: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 21

с модельюнаосновеNURBS-поверхностей,внутрисистемывизуализации(ап-паратнойилипрограммной)даннаямодельбудетпреобразованав массивизмногоугольников(треугольников).

Рис. В.2 Основные элементы треугольного примитива

РисунокВ.2демонстрируетосновныебазовыеэлементы,изкоторыхсосто-ит многоугольник (треугольный примитив). Каждая из вершин объединенас другойс помощьюребра;всепространство,формируемоесвязямивершини ребер,будетпредставлятьсобойгрань,котораяформируетсянаосновена-правлениянормали.Нормальмногоугольникавсегданаходитсяв центретре-угольникаи позволяетвамуправлятьнаправлениемграни –внутрьилина-ружу.Есливыстанетеиспользоватьчетырехугольники,соответственно,онибудутсостоятьиздвухтреугольников,простограньмеждунимибудетскрыта,нокаждыйчетырехугольникбудетсодержатьдватреугольникаи двенормали.Этоважнодляпониманиятого,каквпоследствииможетсработатьалгоритмтесселяцииилидругиеинструментымоделирования.

Применение треугольников актуально и  сегодня. Данный примитив пре-восходноможетбытьпредставленлюбойсистемойвизуализациии обрабо-тан молниеносно за считанные микросекунды аппаратным движком, чеминтенсивнопользуютсясовременныеразработчикиигр.Конечно,в процессесозданиямоделимогутбытьиспользованылюбыеметодикимоделированияи представленияинформации,нов результатепрограммаи движокаппарат-нойвизуализациибудетихпреобразовыватьв наборизсамыхпростыхтреу-гольников.

Впроцессемоделированиятакихсложныхмоделей,какцифровойперсо-наж, необходимо учитывать последующие операции нанесения текстурныхкарти деформациюгеометриив процессеанимации.Этоважно,таккакприанимации модели могут возникнуть нежелательные искажения геометрии.Присозданииорганическихмоделейпрофессионалыв моделированиинасто-ятельнорекомендуютиспользоватьчетырехугольники,и еслибудетпримене-носглаживание,а такжевыполненаоперацияskinning,этопозволитизбежатьпроблемв процессеанимации.

Page 21: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

22 Введение

Такиеприложения,какAutodeskMaya,предоставляютпользователюпро-стыеинструментыдлявыполнениятесселяциигеометрии,когдабазоваямо-дельсглаживается,а засчетповышениядетализацииустраняютсянеровныекраяи резкиеуглы.РисунокВ.3нагляднодемонстрируетвлияниесглажива-ниянагеометриюмоделиголовы.НаиллюстрацииAприведенпримербазо-воймодели,созданнойхудожникомкакоснова.В нейнемногополигонов,ноонаадаптированаподпоследующеесглаживаниеи созданиеснаряжениядляанимации.В моделипрактическиотсутствуютявныетреугольникии сложныемногоугольники.Этопозволяеталгоритмусглаживанияправильновыполнятьподразделение поверхности. В  результате после однократного сглаживаниямоделибылаполученаболеедетализированнаяи гладкаяповерхностьмодели(иллюстрацияB).Соответственно,прииспользованиидеформациигеометриина основе карт смещения (displacementmapping) возрастаетнеобходимостьв повышенииплотностигеометриии детализации.

Рис. В.3 Модель головы цифрового персонажа, созданная с учетом правил топологии

Ещеоднаосновополагающаятехнологиямоделирования –NURBS-поверх-ности (Non-uniform rational Bezier spline). В  60-х годахXX столетия внутрикомпанийRenaultи Citroenбылиразработаныметодыпостроениясложныхповерхностей на основе кривых и  контрольных точек. Так как компанииконкурируютмежду собой, то только специалистRenaultПьерБезье (PierreÉtienneBézier)опубликовалсвоиисследования,чтои послужиловключениюегоименив названиетехнологии,а такжеопередилоконкурентов.Нов тожевремяПольдеКастельжо(PauldeFagetdeCasteljau),работавшийв компанииCitroen,разработалалгоритмпостроенияи делениякривойБезье,такназыва-емыйалгоритмдеКастельжо.

Инструменты,реализуемыенаосновекривыхБезьеи NURBS-поверхностей,достаточнопросты,нов тожевремяпозволяютсоздаватьплавныеформы,

Page 22: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 23

присущиев первуюочередьавтомобилям,кораблям,самолетами космиче-скимаппаратам.

Рис. В.4 Пример простой NURBS-поверхности, созданной в Autodesk Maya

Управлениекривойилиповерхностьюобеспечиваетсязасчетспециальныхконтрольныхточек, а  с помощьюинструментовразделения,формированияотверстий,объединенияи др.выможетесоздаватьлюбуюформу.Многиеси-стемывизуализациинатекущиймоментвремениполучилисвоюреализациюNURBS-поверхностей,и привизуализациитрехмерныхсцентрансляторвы-полняетэкспортмоделииз3D-пакетав поддерживаемыйядромвизуализа-цииформатпредставленияNURBS.

Каждыйизпредставленныхметодовмоделированияи представлениягео-метрии(полигоныи NURBS)обладаетсвоимидостоинствамии недостатками.В  конце 70-х годовXX столетияначалисьисследованияи  разработканово-го метода моделирования и  технологии, объединяющей достоинства обоихметодик;такнасветпоявиласьтехнологияподразделенныхповерхностей(SubdivisionSurfaces).Даннаятехнологияреализуетметодикупредставлениясглаженныхповерхностейчерезспецификациигрубогоразделениялинейнойполигональнойгеометриинаотдельныечасти.Сглаженнаяповерхностьмо-жетбытьвычисленаизотдельныхучастковгеометриикакограниченныйилирекурсивныйпроцессподразделениякаждойграниполигонанаболеемелкиеграни,чтолучшеаппроксимируетсяв сглаженнуюповерхность.

Если применять сглаживание на основе подразделенных поверхностейк  простейшему примитиву, такому как куб, за счет увеличения плотностигранейи сглаживанияданныйобъектбудетпреобразованв сферу.Нарис. В.5представлен такой пример, когда обычный куб (cube), состоящий изшестиграней,с помощьюсглаживаниянаосновеповерхностейподразделениябылпреобразованв сферу.НаиллюстрацииAпоказанпример,когдаколичествоуровнейподразделенияравно2,а наиллюстрацииBприведенпример,когдаколичествоуровнейподразделениябылоувеличенодо4.

Page 23: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

24 Введение

Рис. В.5 Пример тесселяции модели на основе Subdivision Surfaces. Примитив из шести граней преобразован в сферу

Еще одним важным достоинством поверхностей подразделения являетсяприменениевесовребер(CreaseSets).Благодарявведениювесапользовательможетконтролироватьрезкостьугловгеометриии придаватьлюбуюформусоздаваемойгеометриис острымиилипрямымиуглами.

РисунокВ.6демонстрируетпримердействиявесовребергранейнамодель,полученнуюв примерерис. В.5.Здесьс помощьюуправлениявеличинойCreaseдостигалсяпротивоположныйэффект,изсферыбылполученкубсосглажен-нымиуглами,ноприэтомтопологиямоделии количествогранейнеменялись.ОбратитевниманиенаиллюстрацииBи C –в нихприведеныпримерыс однимзначениемвесовребер,ноприэтомвеспримененк различнымнаборамребер.В первомслучаевертикальныеребранеобладаютвесом,а вовтором –наобо-рот,этимребрамприсвоенвес,чтопозволилосформироватьформукуба.

Рис. В.6 Пример влияния веса ребер граней на форму объекта. A – Crease = 0.85, B – Crease = 3.0, C – Crease = 3.0 (все ребра)

Применениевесовребергранейактуальнов моделированииорганическихформ,допустим,цифровыхперсонажейилитакихобъектовреальногомира,какпластмассовыеигрушкиилиметаллическиеобъекты,формакоторыхсоз-данас помощьюпресс-форм.

Чаще всего в  процессе моделирования полигональных объектов приме-няютсятакиеинструменты,какExtrude,Bevel,Slice,Weldи т.п.Онипо-

Page 24: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 25

зволяютхудожникуформироватьосновнуюформуобъектаи добавлятьилиудалять ненужные грани. В  каждомпакете 3D-моделирования и  анимацииприсутствуютпрактическивсеосновныеинструментыполигональногомо-делирования.

Большинство инструментов моделирования создано для удобного и  бес-препятственного создания сложных полигональных поверхностей. Основ-ныезадачи,которыеимивыполняются, –добавление/удалениеновыхгранейи повышениеплотностисеткигеометрии(рис. В.7).Каждыйизинструментовобладаетсвоимипараметрами,которыепозволяютнастраиватьегои полу-чатьжелаемыйрезультат.Внезависимостиотприложенияинструментымо-делирования,реализованныев них,выполняютодинаковыезадачи.Различиямогутзаключатьсятольков названияхилипоследовательностиихпримене-нияи функциональности.

Рис. В.7 Пример создания новых граней с помощью инструментов Extrude (B) и Bevel (C)

Параллельноразвитиютехнологиймоделированияи представленияформгеометрическихобъектовшларазработкаинструментованимациии визуали-зации.В товремякаканимацияпризванаоживить«бездушные»трехмерныеобъектывиртуальногомира,визуализацияпризванаоживитьихс помощьюсвета и  цвета. В тоже время благодаря визуализации художникиполучиливиртуальныекопииреальныхобъектов,такихкакисточникисветаи камеры.А с помощьюкомпьютернойанимацииудалосьдостигнутьранеетруднодо-стижимыхдвиженийкамерыи освещения,ведьанимироватьвыможетепрак-тическивсе.

Завремяразвитиятехнологийотображенияинформациии визуализациибылопройденонесколькоключевыхэтапов.Безусловно,качествосинтезиро-ванныхс помощьюкомпьютерови программобразовзависелоотразвитиявычислительнойтехникии системвыводаинформации.Изначальнопервыеобразы представлялись как простейшая сетка без сложного для тех времензатенения, притом же в  мире фантастики, где фигурировали компьютеры,информациячащевсеготаки представлялась –в видеполигональнойсетки(рис. В.8A).Многиепервопроходцыв областикомпьютерной графикисвоипервыеработыформировалинаосновепростойвизуализацииреберполиго-нальныхобъектов.

Page 25: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

26 Введение

Рис. В.8 От сетки до фотореализма

Шловремя,и с развитиемкомпьютернойтехники,появлениемновыхтех-нологий для отображения информации, а  также с  появлением графическихинтерфейсов пользователей инструменты для визуализации изображенийстали получать возможности, позволяющие реализовать достаточно убеди-тельноезатенениетрехмерныхмоделейи имитироватьбазовыетипыисточ-никовсветаи теней.Этосталовозможнымблагодаряразвитиюалгоритмовтрассировкилучей,возможностямформированиязеркальныхбликови мно-гогодругого.Так,первыекоммерческиерешениядлякомпьютернойграфи-ки,разрабатывавшиесяв конце1980-х –начале1990-х,позволяливоссоздатьбольшинствоэффектовосвещенияи затененияизреальногомира(рис. В.8B).

Параллельно с  разработкой основных моделей затенения ученые и  раз-работчики экспериментировали с  реализацией более сложных моделей ос-вещенияи глобальнымосвещением.Этосталоосновойсозданияотдельныхприложений, выполнявших узкоспециализированные задачи визуализации,напримермоделированиеглобальногоосвещениянаосновеалгоритмовRa-diosityи методафотонныхкарт.

Свозрастаниемвычислительныхмощностейцентральныхпроцессоров,не-зависимыеядравизуализации,такиекакV-Ray,RenderManProServerи др.,стали получать собственную реализацию моделей глобального освещения.Благодаря возросшей производительности стало возможным обрабатыватьгораздобольшеданныхи формироватьубедительноеосвещениев сцене.Приэтоммоделизатененияи алгоритмытрассировкилучейнапротяжении1990-хгодовпретерпелимножествоизмененийи постоянносовершенствовались.Благодаряэтомусталовозможнымполучитьрезультаты,аналогичныепред-ставленнымнарис. В.8C.

Натекущиймоментвременитехнологиимоделированияи визуализацииразвитынастолькосильно,чтоостаетсятолькопонятьоснову,и дляхудож-никанесоставиттрудаиспользоватьсамыеразнообразныеинструментыдляполученияжелаемогорезультата.

Системы визуализацииКакбылоотмеченовыше,однимизважныхкритериеввыпускакачественногографическогопродуктаявляетсякачествовизуализацииобраза,будьтоста-

Page 26: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 27

тичноеизображениеилисеквенциякадрованимации.Дляполученияизобра-женийи кадровсеквенцийприменяютсясистемывизуализации.

Существует огромноемножестворешенийдля визуализации трехмерныхсцен, неопытному пользователю очень легко «заблудиться» в  выборе, но,в принципе,внутриониоченьсхожи.

«Почему“системавизуализации”?» –спроситевы.Здесьстоитвновьвер-нутьсяк историиразвитиятехнологийкомпьютернойграфикии визуализа-ции. Чисто технически система визуализации – это своего роданаборпро-грамм и  определенных спецификаций, используемых ею для пониманиятиповданныхи объектовв сцене.Каждоеизотдельныхприложенийсистемывизуализации может выполнять определенные задачи, например визуали-зацию глобального освещенияи  сохранение его в  отдельных типах данных(файлах),преобразованиеграфическихизображенийи ихотображение.Хотясейчасмногиесистемывизуализацииэтоделаютс помощьюоднойпрограм-мыи файловописаниясцен,онипо-прежнемувыполняютотдельныеэтапыв процессевычисленийи затемнаихосновеформируютконечныйрезультат.

Существует как минимум два типа систем визуализации. Первый тип  –встроенныев 3D-приложенияядравизуализации.Оницеликомоптими-зированыпод возможностипрограмм,напримерAutodeskMayaиспользуетнесколькоядервизуализации,которыемаксимальнополноподдерживаютвсевозможностипрограммы(табл. В.1).Таккакпрограммыпосвоемууникальны,а форматыданныхдлякаждойизнихоснованынаих«философии»и реали-зацииинструментов, очень хорошего результатаможнодобиться только засчетпараллельнойразработкиродныхинструментови средстввизуализации.

Таблица В.1. Родные для 3D-приложений Autodesk ядра визуализацииПриложение Формат файла Ядро визуализацииAutodesk 3ds Max .max Default Scanline Renderer

Autodesk A360 Cloud RenderingART RendererQuicksilver RendererVUE Renderer

Autodesk Maya .ma, .mb Maya SoftwareMaya Hardware 2.0Maya VectorMaya Turtle

SideFX Houdini .hip Mantra

MAXON Cinema 4D .c4d Pro Render

В представленной выше таблице собраны сведения только по ключевымпродуктамкомпанииAutodeskи еепартнеров.И какможнозаметить,пакетMayaпредоставляетчетыреядравизуализации.Всеинструментыпоставляют-сявместес программойи могутбытьиспользованысразупослеееустановки.

Page 27: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

28 Введение

Одним из важнейших достоинств открытыхформатовфайлов – возмож-ностьихправки.Такойпакет,какAutodeskMaya,предоставляетвозможностьсохранятьсценув бинарномформате(binary)и в простомтекстовомформа-те(ASCII).Такойподходпредоставляетвозможностьоперироватьс ниминауровне представления данных сцены без дополнительных, иногда сложныхпреобразованийв процессеразработкисобственныхприложенийилирасши-ренийдляMaya.

Рис. В.9 Пример простейшей сцены в Autodesk Maya и результат визуализации с помощью аппаратного

и программного ядер визуализации

//Maya ASCII 2015 scene//Name: maya_opendata_format.ma//Last modified: Thu, May 21, 2015 09:49:14 PM//Codeset: 1251requires maya "2015";fileInfo "application" "maya";createNode mesh -n "pCylinderShape1" -p "pCylinder1"; setAttr ...createNode transform -n "camera1"; setAttr ".t" -type "double3" [num] [num] [num] ; setAttr ".r" -type "double3" [num] [num] [num] ;createNode camera -n "cameraShape1" -p "camera1"; setAttr ...createNode transform -n "spotLight1"; setAttr ".t" -type "double3" [num] [num] [num] ; setAttr ".r" -type "double3" [num] [num] [num] ;createNode spotLight -n "spotLightShape1" -p "spotLight1"; setAttr -k off ".v";createNode lightLinker -s -n "lightLinker1"; setAttr -s 3 ".lnk"; setAttr -s 3 ".slnk";...relationship "link" ":lightLinker1" ":initialShadingGroup.message" ":defaultLightSet.message";relationship "link" ":lightLinker1" "phongE1SG.message" ":defaultLightSet.message";...

Page 28: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 29

relationship "shadowLink" ":lightLinker1" "phongE1SG.message" ":defaultLightSet.message";...connectAttr "phongE1.oc" "phongE1SG.ss";connectAttr "pCylinderShape1.iog" "phongE1SG.dsm" -na;connectAttr "phongE1SG.msg" "materialInfo1.sg";connectAttr "phongE1.msg" "materialInfo1.m";...dataStructure -fmt "raw" –as"name=externalContentTable:string=node:string=key:string=upath:uint32=upathcrc:string=rpath:string=roles";applyMetadata -fmt "raw" –v "channel\nname externalContentTable\nstream\nname v1.0\nindexType numeric\nstructure externalContentTable\n0\n\"|spotLight1|spotLightShape1\" \"dmapName\" \"depthmap\" 2097411553 \"\" \"sourceImages\"\nendStream\nendChannel\nendAssociations\n" -scn;

ВышепредставленлистингчастифайласценыAutodeskMaya(формат*.ma),примервизуализациикоторогоприведеннарис. В.9.Каки вомногихспеци-ализированныхприложениях,форматфайловсценMayaсодержитнесколькоключевыхблоков,в которыхимеютсяосновныенастройкиатрибутовэлемен-товсцены(геометрия,источникисвета,камеры,шейдерыи т.д.).Каждыйсоз-даваемыйузелпредставленблокомcreateNode[nodetype]parameters,в каждомблокебудетзаписанаинформацияо типеузлаи значенияатрибутовпараме-тров. Затем все текущие связимежду различными элементамибудутпред-ставлены строками relationshipname [name1, name2, namen], а  связанныемеждусобойатрибутыразличныхузловв сценепредставленызаписьюcon-nectAttr[node.attrname]parameters.

Когдабудетзапущенпроцессвизуализации,ядровизуализации,выбранноевамив глобальныхпараметрахвизуализацииилис помощьюкомандыв окнеприложениятерминала,будет«читать»данныйфайли выполнятьвизуализа-циюс учетомвсехданных,записанныхв файлесцены.

Еслипроизойдеткакая-тоошибка,напримернетрасширения,связанногос определеннымтипомузла,илинеправильновыполненазапись,выможетеоткрытьфайлв формате*.maв любомтекстовомредакторе(например,SublimeText)и внестивсенеобходимыеправки.Современныеприложенияпозволяютотслеживатьвсеошибкии формируютдетальныеотчеты.

Подходк представлениюданныхв текстовомформатедаетразработчикамсторонних приложений и  расширений для Maya реализовывать поддержкубольшинствавозможностейпакетаи интегрироватьсяв ключевыеинструмен-тыпрограммы,напримерв узлыгеометрииилиузлышейдеровматериалов.Этимкакрази пользуютсямногиевнешниесистемывизуализации,реализу-ющиесвязьс ядромвизуализацииприпомощиспециальныхмодулейконнек-торов.

Второйтипсистемвизуализации –внешниеи интегрируемыеядрави-зуализации.Этонезависимыерешения,создаваемыестороннимиразработ-чиками.Большинствоинструментоввизуализации,реализованныев прило-жениях по умолчанию и  поставляемые с  ними из коробки, функциональноограничены,а иногдаотстаютотболеесовременныхпродуктовотвнешнихразработчиковнанесколькопоколенийразвитиятехнологий.

Page 29: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

30 Введение

Таблица В.2. Системы и инструменты для визуализации от сторонних разработчиковТип системы и принцип

Система визуализации Родной формат

Интеграция c Maya

Standalone ядро

Biased renderers PIXAR RenderMan Pro Server .rib Да Да

Cebas FinalRender SE – Нет НетCebas FinalRender for Maya – Да Нет

ChaosGroup V-Ray Next .vrscene Да Да

ChaosGroup V-Ray Next GPU .vrscene Да ДаDNA Research 3Delight .rib Да Да

Unbiased renderers

NVIDIA® iray® .mi Да Да (в mr Standalone)

ChaosGroup V-Ray Next .vrscene Да Да

ChaosGroup V-Ray Next GPU .vrscene Да Да

Cebas Moskito Renderer – Нет Нет

NextLimit Maxwell Renderer .mxs Да ДаOTOY Octane Renderer .ocs Да Да

SolidAngle Arnold Renderer .ass Да Да

Сегоднянарынкеинструментоввизуализациисуществуетнесколькореше-нийс гибкойархитектуройи поддержкойинтеграциис большинствомведу-щихпакетовкомпьютернойграфикии анимации.В табл. В.2собраныведущиерешения,используемыемногимиспециалистаминапрактикеи заслужившиеширокоепризнание.Самымиизвестнымирешениямиявляютсятакиесисте-мывизуализации,какRenderManProServerотанимационнойстудииPIXAR,V-RayоткомпанииChaosGroupи ArnoldRendererотальянсакомпанийSoli-dAngle/Autodesk.Дляинтеграциив рабочийконвейерэтитрипродуктапре-доставляютсвоимпользователямAPI,а такжеиспользуютсвоисобственныеформатыпредставленияданныхсценыи ееключевыхэлементов.В тожевре-мя этирешениямогут бытьрасширены с помощьюинструментов, которыеможноразработатьс применениемязыковCи C++и специальныхязыковраз-работкишейдеров,такихкакOpenShadingLanguage(OSL)илиMaterialDefini-tionLanguage(MDL).

СистемавизуализацииV-RayоткомпанииChaosGroupявляетсясерьезнымкомплекснымрешением.Данныйпродуктизобычногомодулярасширениядля3dsМaxсталоднимизсерьезныхконкурентовклассическихсистемви-зуализации.Онподдерживает современныетехнологиии однимизпервыхполучает поддержку перспективных решений, данныйпродуктможет бытьиспользовандалеко запределами архитектурнойилипредметной визуали-зации.МногиестудиивыбираютV-Rayв качествеосновногоинструментадлявизуализациисложныхмоделейзатененияи анимации.Благодаряподдерж-кетакогостандарта,какOpenShadingLanguage(OSL),сталовозможнымпри-менять V-Ray в  крупных производствах, требующих персонализированныхинструментови библиотекшейдеров,реализующихнестандартныеподходык затенениюи освещениюсцен.ТакжесистемавизуализацииV-Rayв послед-

Page 30: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 31

нихверсияхполучилазначительныйприростпроизводительностив вычис-лениях,чтопозволяетгораздобыстреевыполнятьвизуализациюкадровани-мации.

Впоследнеевремяполучилиширокоераспространениесистемывизуали-зациинаосновеалгоритмовpathtracingи волновойтеориисвета.Системы,относящиесяк даннойкатегории,получилисвоюопределеннуюкатегорию –unbiased renderers или физически корректные системы визуализации. Ихосновноеотличиеотклассических(biasedrenderers)системвизуализации –прогрессивнаявизуализацияизображений.В данномпроцессеядровизуали-зации вычисляет сразу весь кадр, а  не разделяет егонапропорциональныеблоки.Этопозволяетзначительноупроститьпроцесснастройкии добитьсядостаточнойреалистичностив изображении.

С началом эры вычислений на GPU стало возможным применять много-поточные графические процессоры в  вычислениях общего назначения. Этосформировало новый рынок средств визуализации и  инструментов для со-временныххудожников.С помощьютакихтехнологий,какNVIDIACUDAилиOpenCL,разработчикимогутиспользоватьграфическийускорительдляуско-рения вычислений в  создаваемыхимиприложениях.Например, в  поставкес V-RayNextидетядроV-RayNextGPU.Этоядрофизическикорректнойвизу-ализации,поддерживающеемоделированиереалистичногозатененияи осве-щения.ЯдроV-RayNextGPUподдерживаетновыестандартыи спецификациидляразработкишейдеров,а именноOSLи NVIDIAMDL;с ихпомощьювымо-жетесоздаватьшейдеры,непривязанныек конкретномуядрувизуализации,данныйстандартподдерживаетсянетолькоV-Ray,нои NVIDIAiray,SolidAn-gleArnoldRenderer,PIXARRenderManProServerи др.

UnbiasedверсияV-RayNext,можетбытьиспользованадляфинальнойви-зуализации (production rendering) и  для интерактивной визуализации с  де-монстрациейвсехизмененийв создаваемойсцене.ЭтосущественнооблегчаетработусовременногоCG-художникаи позволяетнараннихэтапахотслежи-вать все изменения, выполняемые художником, и  к  какому результату ониприводят.

Средисистемвизуализациис физическикорректноймодельюосвещенияи затененияестьрешения,хорошозарекомендовавшиесебяв производствеанимационныхфильмови эффектов.К такимрешениямможноотнестисисте-му визуализацииArnoldRenderer от альянса компаний SolidAngle/Autodesk.Данныйпродуктпозволяетиспользоватьвсевозможностиоткрытыхформа-товданныхи перспективныхрешений,такихкакOCIOилиOSL.

Какой инструмент визуализации выбрать?Этодостаточносложныйвопрос,многие CG-художники выбирают наиболее распространенные системы ви-зуализации.Однаков рядеслучаевтребуетсябратьвсесамоелучшееизне-сколькихсредстввизуализации,а далеесводитьвсеполученныематериалынаэтапепостобработки(compositing).Данныйподходполучилширокоерас-пространениев индустриианимациии специальныхэффектов,а в последнеевремяприменяетсяи в такихобластях,какархитектурнаяи дизайн-визуали-зация.

Рекомендуетсяприсматриватьсяк следующимкритериям,которыепредъ-являютсяк современныминструментамвизуализации:

Page 31: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

32 Введение

� высокойпроизводительностивизуализации;� гибкойрасширяемости(разработкашейдерови расширений);� поддержке современных технологических стандартови инструментов(Alembic,OSL,OCIO,DeepImages,USDи т. п.);

� высокойскоростивизуализацииэффектовглубинырезкостии размы-тиядвижения;

� высокомууровнюмасштабируемостипривизуализациинафермахви-зуализации;

� интеграции в  ведущие пакеты компьютерной графики (Autodesk 3dsMax,AutodeskMaya,SideFXHoudini,MAXONCinema4Dи др.);

� открытомуформатуданных,открытомуAPIи инструментамдляраз-работчиков;

� поддержкеплатформGNU/Linux,ApplemacOSи MicrosoftWindows.Большинствуизпредставленныхвышекритериевсоответствуетрассматри-

ваемаяв даннойкнигесистемавизуализацииV-RayforMayaи егоавтономнаяверсияV-RayStandalone.

История V-Ray и его реализации в 3D-приложенияхСистема визуализации V-Ray начала свое развитие с  разработки простоготрассировщикалучей,которыйбылпризванрешатьдостаточнопростуюза-дачу.В дальнейшемразработчикиобнаружили,чтоядровыполняетвычисле-ниябыстрои с высокимкачеством,и началиразрабатыватьполноценноеядровизуализациии наборсоответствующихинструментов.

ИзначальноV-Rayбылвыполненв качествемодулярасширениядля3dsМax.И доверсии1.5V-Rayбылрешениемисключительнодля3dsМax,нов линейкеV-Rayверсии1.5появиласьперваяверсияV-RayforMaya.Именнов первойредакцииV-RayforMayaпоявиласьбазоваяфункциональностьядравизуали-зацииV-Ray.ОднакоонзначительноуступалV-Rayfor3dsМax,и необходимобылоразрабатыватьинструментысамостоятельно,обычноэтоделалосьчерезAPIи созданиесценариев.

Но,начинаяс версииV-Ray2.0,разработчикиделаюткардинальноеизме-нениев архитектуреядравизуализации,егофункциональностии переводятV-Rayв разрядсистемныхрешений,которыемогутбытьинтегрированыв лю-боеприложениекомпьютернойграфикии развернутоналюбойизплатформ(Linux,macOS,Windows).

В2013годуChaosGroupвыпускаетV-Ray3.0,третьюверсиюядраи реализа-циюформатаданных.Третьяверсияпретерпеваетрядважнейшихизменений.Обновляетсяинтерфейспользователям,теперьонстановитсяболееоргани-зованными понятнымбольшинствуначинающихпользователей.Увеличенапроизводительность трассировки луча в  режиме Progressive Rendering. Дляинтеграциис редакциямиV-Rayдлядругихприложений,а такжедляобменаданнымибылареализованаподдержкаVRMATS.Третьяверсияполучилапод-держкуформатаAlembic,чтопозволиловыполнятьпередачуданныхмеждуразличнымиприложениямидлякомпьютернойграфикии LookDevelopment.СистемаV-RayHairтакжеполучиларядулучшенийи оптимизаций.Именнов V-Ray3.0появиласьподдержкауправленияцветомв растровыхи визуали-

Page 32: УДК 624.01, 004.9 ББК 30.4с515 Ч56УДК 624.01, 004.9 ББК 30.4с515 Ч56 Чехлов Д. А. Ч56 V-Ray для Autodesk Maya. Руководство по визуализации.

Краткое введение в компьютерную графику 33

зируемыхизображениях.Так,сталовозможнымприменятьпрофилиLUT,ICCи конфигурацииOCIOнапрямуюв V-Ray.БлагодарясерьезнымобновлениямядраV-Ray3.0получилподдержкуOpenEXR2.Xи форматаизображенийdeepimages.ПользователиV-RayGPUполучиливозможностьвизуализацииRenderElements.

Через пять лет разработок и  серии обновлений третьей версии V-Rayв 2018 годуChaosGroupанонсируетвыходV-RayNext(техническиэтоV-Rayверсии 4.0). Это значительное обновление всего функционала системы ви-зуализации и  возможностей ядра V-Ray. Основная задача, которую решалиразработчикив четвертойверсии,—производительностьи достижениевысо-койскоростивизуализации.В новойверсиипроизведенареализацияи опти-мизацияAdaptiveDomeLight.Увеличенапроизводительностьвизуализациив режимеIPR.ПивыборережимаViewportIPRсталовозможнымприменятьNVIDIAAIDenoiserв качествеметодаудаленияшумапоумолчанию.Длякор-рекциии правокматериаловдобавленрежимDebugShading/IsolateSelected.Теперьс помощьюV-RayGPUи V-RayProgressiveSamplerвыможетевыпол-нить визуализацию Playblast напрямую из видового окна проекции. ЯдроV-RayGPUполучило двукратное увеличение скорости визуализации. ТакжеядроV-RayGPUполучиловозможностьвизуализацииатмосферныхи объем-ныхэффектов.В V-RayNextдляV-RayGPUдобавленаподдержкаBucketmode.ДобавленновыйшейдерPysicalHairMaterial.БлагодарядобавлениюновогоатрибутаMetalnessв V-RayNextреализованаподдержкаPBR-шейдеров.Длявизуализации нереалистичной модели затенения был кардинально перера-ботани обновленшейдерV-RayToon.ДобавленшейдерV-RayLayeredTex-ture.Дляуправленияданнымии болееточнойорганизацииданныхв проектев V-RayNextдобавленаподдержкаLayeredAlembicнаосновеформатаAlem-bicверсии1.7.И оченьважнымнововведениемв V-RayNextявляетсядоступк  удаленному облачному сервису V-Ray Cloud, ныне известному как ChaosCloud.

Новые возможности V-Ray Next Update 1Основныеглавыкниги,которуювыдержитев руках,основанынавозможно-стяхядраV-Ray4.1и V-RayNextforMaya2018.Этомустоитуделитьособоевнимание,таккаквсеосновныевозможностиданнойверсиимогутбытьис-пользованыкакчерезинтерфейсAutodeskMaya,таки напрямуюс помощьюкоманднойстрокив автономнойверсииV-RayNextStandalone(4.12.01).Есликакие-тофункциине реализованыв интерфейсепрограммы,ихможнодо-бавитьс помощьюMELилиPython,согласнодокументациик V-RayforMaya.

ВосновеUpdate1лежитядроV-Ray4.12.01.Однойизключевыхфункцийяв-ляетсявведениеMemoryTracking –системымониторингапотребленияпамяти.ОбъектыV-RayProxyполучилиподдержкуэлементаCryptomatte.Разработчи-киповысилискоростьначалавизуализациисценыи отображенияпервыхпик-селейв режимеV-RayProgressive.В данномобновлениидобавленаподдержкаMaya2019.ШейдерALSurfaceполучилподдержкуядромV-RayGPU.