> ## Documentation Index
> Fetch the complete documentation index at: https://dripart-docs-lora-training-1772768349.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GLSLShader - ComfyUI 組み込みノードのドキュメント

> ComfyUI における GLSLShader ノードの完全なドキュメントです。入力、出力、パラメーター、および使用方法について学びましょう。

> このドキュメントは AI によって生成されました。誤りを発見された場合、または改善のご提案がある場合は、ぜひご貢献ください！ [GitHub で編集する](https://github.com/Comfy-Org/embedded-docs/blob/main/comfyui_embedded_docs/docs/GLSLShader/en.md)

GLSL Shader ノードは、カスタムの GLSL ES フラグメントシェーダー コードを入力画像に適用します。このノードにより、複数の画像を処理し、一様パラメーター（浮動小数点数および整数）を受け付けるシェーダープログラムを作成して、複雑な視覚効果を実現できます。出力サイズは、最初の入力画像のサイズに基づいて自動決定されるか、手動で設定できます。

## 入力

| パラメーター            | データ型   | 必須  | 範囲                             | 説明                                                                                     |
| ----------------- | ------ | --- | ------------------------------ | -------------------------------------------------------------------------------------- |
| `fragment_shader` | STRING | はい  | 該当なし                           | GLSL フラグメントシェーダーのソースコード（GLSL ES 3.00 / WebGL 2.0 互換）。デフォルト値：最初の入力画像をそのまま出力する基本的なシェーダー。 |
| `size_mode`       | COMBO  | はい  | `"from_input"`<br />`"custom"` | 出力サイズのモード：`"from_input"` では最初の入力画像の寸法を使用し、`"custom"` では手動で寸法を設定できます。                   |
| `width`           | INT    | いいえ | 1 ～ 16384                      | `size_mode` を `"custom"` に設定した場合の出力画像の幅。デフォルト値：512。                                    |
| `height`          | INT    | いいえ | 1 ～ 16384                      | `size_mode` を `"custom"` に設定した場合の出力画像の高さ。デフォルト値：512。                                   |
| `images`          | IMAGE  | はい  | 1 ～ 8 枚の画像                     | シェーダーによって処理される入力画像。シェーダーコード内では、`u_image0` ～ `u_image7`（`sampler2D` 型）として利用可能です。        |
| `floats`          | FLOAT  | いいえ | 0 ～ 8 個の浮動小数点数                 | シェーダー用の一様浮動小数点数値。シェーダーコード内では、`u_float0` ～ `u_float7` として利用可能です。デフォルト値：0.0。             |
| `ints`            | INT    | いいえ | 0 ～ 8 個の整数                     | シェーダー用の一様整数値。シェーダーコード内では、`u_int0` ～ `u_int7` として利用可能です。デフォルト値：0。                       |

**補足事項：**

* `width` および `height` パラメーターは、`size_mode` を `"custom"` に設定した場合のみ必須であり、その際に表示されます。
* 少なくとも 1 枚の入力画像が必要です。
* シェーダーコードには常に、出力サイズを格納した `u_resolution`（`vec2` 型）という一様変数が利用可能です。
* 入力画像は最大 8 枚、浮動小数点数の一様変数は最大 8 個、整数の一様変数も最大 8 個まで指定できます。

## 出力

| 出力名      | データ型  | 説明                                                                                     |
| -------- | ----- | -------------------------------------------------------------------------------------- |
| `IMAGE0` | IMAGE | シェーダーから出力される最初の画像。シェーダーコード内では `layout(location = 0) out vec4 fragColor0` により提供されます。    |
| `IMAGE1` | IMAGE | シェーダーから出力される 2 番目の画像。シェーダーコード内では `layout(location = 1) out vec4 fragColor1` により提供されます。 |
| `IMAGE2` | IMAGE | シェーダーから出力される 3 番目の画像。シェーダーコード内では `layout(location = 2) out vec4 fragColor2` により提供されます。 |
| `IMAGE3` | IMAGE | シェーダーから出力される 4 番目の画像。シェーダーコード内では `layout(location = 3) out vec4 fragColor3` により提供されます。 |
