ltcgi使用

由于本文配图是传送至 xlog 的 ipfs 地址，所以本站的文章图片无法加载；若想更好的阅读体验请前往原站：https://xlog.xiaohan-kaka.me/ltcgi-use

前言

LTCGI 是一种优化的即插即用实时区域光解决方案，使用线性变换余弦算法，适用于独立的 Unity 和 VRChat。免费使用并注明出处。它可以利用 Unity 内置光照贴图或 Bakery 在静态对象上获得逼真的阴影。

使用 ltcgi 可以給 vrchat 地圖内的物體乃至視頻播放器實現優雅的反射效果，同時也能獲得較好的性能

本文只是大概講述用法，具體請看官方文檔：https://ltcgi.dev/

安裝

確保你的項目使用的是受支持的著色器

著色器列表
ORL Shader Family by @orels1
Silent's Filamented
Mochie's Unity Shaders
Hekky Shaders
z3y's Shaders
Basic "Unlit" Test Shader (included)
Surface Shader (included)

使用 vcc 添加
https://vpm.pimaker.at/

若非用於 vrchat 項目，可以在 package manger 内用 git 導入

Copy
https://github.com/PiMaker/ltcgi.git

在導入項目后，找到LTCGI_Controller並把他丟進 sence 中，位置隨意；這是用於控制 ltcgi 的烘焙以及調節一些設置所用的 prefab

使用

ltcgi 用於控制發光的組件是一個名爲LTCGI_Screen的組件

他必須放在至少有 3 或者 4 個頂點的Mesh Filter物體上
舉例子: quad

控制器内容解釋

名稱 | 含義
arealight shapre | 定義發光的形狀
color | 光顔色（下面的按鈕用於嘗試直接從附著的物體上）
Diffuse mode | 漫反射方式
specular | 選擇是否反射
Dynamic | 将此屏物體标记为动态。具有轻微的性能开销，但允许在运行时移动屏幕并更改其颜色
double sided | 物體兩面都發光而不是一面
filp uv | 把 uv 翻轉過來
affect avatars | 是否影響角色本身（前提是角色使用的著色器兼容）
color mode | 色彩模式
Affected Renderers | 选择场景中的哪些渲染器应接收来自此 ltcgi screen 的光线
Lightmap Channel | 选择烘焙阴影贴图时此屏幕将占用的光照贴图通道

漫反射方式

類型 | 意義
no diffuse | 禁用
LTC Diffuse | 使用 LTC 算法的漫反射
Lightmap Diffuse | 直接使用在阴影贴图烘焙中计算的数据

色彩模式

類型 | 意義
stanic | 靜態的
Texture | 從紋理中選擇顔色，可用於視頻紋理或者其他的靜態紋理
Single UV | 和 texture 差不多，但是会以从纹理中获取的单一颜色点亮屏幕，并在下面指定的确切 UV 坐标处点亮屏幕
audiolink | 鏈接 audiolink 並偵測指定區域的信號，比如 bass

應用實時視頻紋理

下面舉例的是 vidviz 播放器，如果你使用的是 protv 播放器可以直接使用 controller 的按鈕一鍵配置；部分播放器本身也帶有自動化配置 ltcgi 的選項

其他播放器參考：https://ltcgi.dev/Getting%20Started/Setup/Realtime_Video

把 ltcgi 的使用的屏幕紋理丟進播放器的輸出目標内

前往ltcgi controller把剛剛添加進播放器的 texture 丟盡 video texture 選項内

之後選擇播放器的screen 組件添加一個 component - 就是上文的LTCGI_Screen， 配置好選項，完成

後記

大概講完了 ltcgi 的基本内容，我本身也對這玩意屬於是一知半解，待以後使用這個工具更加熟練后可能會更新這文章吧，而且他也能和 audiolink 進行聯動整出一些炫酷的效果，當然這就是另外的事情了

建議看一下官方文檔：https://ltcgi.dev/

此文由 Mix Space 同步更新至 xLog
原始链接为 https://blog.xiaohan-kaka.me/posts/unity/ltcgi-use