PixelSand - Wall
- 800 JPY
# PixelSand - Wall セルオートマトンベースの二次元砂シミュレーションを用いたVRCワールド向けアセットです。 PC/Quest両対応です。 サンプルワールド(https://vrchat.com/home/launch?worldId=wrld_84c39387-d96a-451e-b4ca-c3a11121753a)があります。 姉妹品としてPixelSand - Hourglass (https://usamimi-zakka.booth.pm/items/5452777)も販売しています。 ## 更新履歴 2024-02-03 v1.0.0 ## 利用規約 VRChatワールドに組み込んでのアップロードやUnityで作成したソフトウェアへ組み込まれた形での再配布は商用・非商用に関わらず許可します。 複数人での開発に用いる場合は人数分の購入をお願いいたします。 本アセット自体の再配布は禁止します。ただしUnitypackage内UsamimiZakka/PixelSand/PixelSandCommon内のファイル(PixelSandCommon.cginc, Sim.shader)についてはWTFPLライセンスとし、再配布や改変等自由に行ってかまいません。 ## 免責事項 本アセットの使用によって生じたいかなる問題の責任も製作者:myxyは負わないものとします。 バグ報告・機能追加希望等はBOOTHメッセージへお願いいたします。 ## アセット使い方 VRChatCreatorCompanionで作成したワールド向けプロジェクトにインポート後、Assets/UsamimiZakka/PixelSand/Wall内のPrefabをシーンに配置して適宜調整してください。 ## アセット詳細説明 ### 構造 PrefabのGameObjectはWallスクリプトとmyxy/PixelSand/Wallシェーダが設定されたマテリアルが適用されたCubeです。 マテリアルで各種設定を行い砂の動作を制御します。 ### Hourglassコンポーネントパラメータ説明 * ShowMesh - 描画用メッシュです。UnityのCube用となります。 * Gravity - 重力加速度です。Gravityベクトルの長さを基準としてオブジェクトに働く加速度の大きさでフレームレートが可変します。 * Material Wrapper - 計算に必要なマテリアルを取得するための参照です。変更しないでください。 ### Hourglassシェーダマテリアルプロパティ説明 重力以外の設定項目はマテリアルで設定します。1分・3分・5分用のプリセットがそれぞれUsamimizakka/PixelSand/Hourglassフォルダ内1minMaterial/3minMaterial/5minMaterialにありますので適宜調整の上プレハブ中オブジェクトのCubeに適用してください。 #### SandSettings 砂シミュレーションに関する設定です。 * Simulation Resolution X - シミュレーションテクスチャの横方向解像度です * Simulation Resolution Y - シミュレーションテクスチャの縦方向解像度です * Default Fps - 静止状態のリフレッシュレートです。リフレッシュレートは オブジェクトにかかる全体の加速度大きさ/Gravityの大きさ でスケールします。 * Max Fps - リフレッシュレートの最大値です * Wall - 砂の障害物のテクスチャです。Rチャンネルが障害物として反映されます。マテリアルに設定される他のテクスチャはWallテクスチャと同じ解像度であることを前提としており、Wallテクスチャが存在しない場合Simulation X/Yで定義される解像度がデフォルトとなります。 * Wall Threshold - Wallテクスチャを障害物とする閾値です * Init Sand Mask(R)/Create(G)/Delete(B) - 砂の初期状態と生成と消去を制御するテクスチャです。Wallテクスチャと同じ解像度を想定します。詳しくは次の"Init Prob", "Create Prob", "Delete Prob"欄で説明します。 * Init Prob - Init Sand Mask(R)/Create(G)/Delete(B)テクスチャのRチャンネルの0~1にスケールされた画素値にこの値を乗算した値の確率で初期状態で砂が存在します。砂の位置を決定的に制御したい場合はInit Prob値を1としてテクスチャの初期砂存在位置を#ff0000で塗ってください。 * Create Prob - Init Sand Mask(R)/Create(G)/Delete(B)テクスチャのGチャンネルの0~1にスケールされた画素値にこの値を乗算した値の確率でピクセルを砂に置き換えます。置き換える砂の色はSandColorテクスチャで決定される色になります。 * Delete Prob - Init Sand Mask(R)/Create(G)/Delete(B)テクスチャのBチャンネルの0~1にスケールされた画素値にこの値を乗算した値の確率でピクセルを空白に置き換えます。 * Amount - 正の値の場合は割合に応じて上部分の砂が、負の値の場合は割合に応じて下部分の砂が初期状態で消去されます。 * Sand Scale - 砂のスケールを調整します。 * Is Bound Wall - キューブの境界を障害物にするか決定します #### SandColor 砂の色を調整します * Sand Color (Multiply) - 以下のHue, Hue Period, Hue Variance, Saturation, Valueで決定される色にテクスチャの色が乗算されます。Wallテクスチャと同じ解像度を想定しています。 * Hue - 色相です。 * Hue Period (0 to mono color) - 色相変化の周期です。0にすると単色になります。 * Hue Variance - 色相のばらつきです。 * Saturation - 彩度です * Value - 明度です。 * Opacity - 不透明度です。 * Random Opacity Min Scale - 不透明度をランダムにする場合の最小値のスケールです。 * RandomOpacityExp - 不透明度ランダムネスの調整です。 * Sand Light Transparency - 裏側の光の透過を考慮した明るさの調整です。 #### Lame ラメの調整です。 * Lame Density - ラメの密度です。 * Lame Reflection - ラメの反射率です #### Emission エミッションの調整です。 * Emission Mask - エミッションのマスクです。 * Emission - エミッション量です。 * Random Emission Min Scale - エミッションをランダムにする場合の最小値のスケールです。 * RandomEmissionExp - エミッションランダムネスの調整です。 #### Glass 透明キューブの調整です。 * Is Rim - 砂障害物の境界の描画を決定します。 * Internal Rim Thickness - 内部の砂時計の淵の厚さです。 * Cube Reflection - 表面の反射率です * Is Bound Mirror - キューブ内面の鏡面効果を決定します。 * Wrap Mode - キューブ境界を超える砂の描画を設定します。