Как добавить / умножить текстуры в USDz?
Я пытался придумать способ смешивания текстур в USDz, но ничего не могу найти.
Скажем, у меня есть модель с тремя УФ-каналами. У меня есть текстура A на канале 1, текстура B на канале 2 и текстура маски на канале 3. Я хочу смешать текс A с тексом B с помощью маски текс и использовать эту композицию в качестве цветовой текстуры. Его простая математика вроде (texAmask)+(texB(1-mask)). Нет ли способа сделать это, отредактировав определение материала USDa? Я подключил текстуры к соответствующим UV-каналам, они отображаются с назначенными UV-развертками при просмотре на iOS, но не могу найти никакой документации по добавлению / умножению текстур.
1 ответ
Скрипты Python для долларов США
Насколько я знаю, на данный момент нет многоканальных операций композитинга для долларов США. Впрочем, я могу ошибаться.
композитинг CoreImage
Фреймворк CoreImage может помочь вам применить соответствующие операции композитинга к вашим текстурам. Существует четыре фильтра, которые аналогичны операциям узла слияния The Foundry NUKE : Over, Out, Multiply и Plus.
- CISourceOverCompositing
- CISourceOutCompositing
- CIMultiplyCompositing
- CIAdditionCompositing
Конвейер очень прост: примените математику к своим текстурам с помощью инструментов композитинга CoreImage, сохраните результат на диск, а затем примените совершенно новую текстуру к модели USDZ в RealityKit.