Как добавить / умножить текстуры в 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.

Другие вопросы по тегам