コンテンツにスキップ

HCSL(Heliodor Custom Shader Language)

概要

Heliodorがカスタムシェーダーに対応しました。
HCSL(Heliodor Custom Shader Language)というHeliodor独自のシェーダー言語です。

実装

Shaderコンパイル

  1. プロジェクトビューを右クリックし、「Create → Shader → UnlitShader」でShaderLabを作成し名前を「sample」とつけます

    Create UnlitShader

  2. 生成されたsampleシェーダーを右クリックし、Materialボタンからマテリアルを作ります。同様に名前はsampleとします

    Create Material

  3. 次にUnityシーン上に1つ適当なPlaneをHCSL_Testの子要素として追加し、WavePlaneの横あたりに配置します

    Add Plane

  4. そして先ほどのsampleマテリアルをPlaneにアタッチします。また、メッシュコライダーは邪魔なので外しておきます

  5. 次にWavePlane.hcslをCtrl + Dで複製し名前をsampleにリネームします

    Duplicate HCSL

  6. sample.hcslをダブルクリックして任意のエディタを開きます

    注意

    Shift JISで開きます

  7. hcsl内のシェーダー名をsampleに変更し保存します

    Edit HCSL

  8. 次に、Planeに対してAddComponentよりHEOCustomShaderコンポーネントをアタッチします

    Add Component

  9. そしてsampleマテリアルとsample.hcslをアタッチします

    Attach Files

  10. HEOCustomShaderの3点ボタンを押下しその中のCompileボタンを探して押下します

    Compile

  11. するとHCSLがShaderLabに変換されます。UnityコンソールにSuccess!!と出ていれば成功です

    Success

インゲームでHCSLを使用する

  1. HCSL_Testを選択しVketCloudSDK → Export FieldでHEOをエクスポートします

    Export Field

  2. HEOは「release/data/Field/HCSL_Test」にエクスポートします

    Export Path

  3. 作成したsample.hcslを「release/data/Shaders」にコピーします

    Copy HCSL

  4. release\data\Scene\streamingvideo.json を何かしらのテキストエディタで開きます

    Open JSON

  5. するとshadersというフィールドがあるのでそこに先ほど追加したsample.hcslのパスを追加します "Shaders/sample.hcsl"

    Edit JSON

  6. 最後に準備編でやった時と同じようにローカルホストを立ててインゲームに入室し、作成したシェーダーが反映されていれば完了です

    In Game

Feedback