Jump to content

Template:Shader Documentation: Difference between revisions

From HedgeDocs
Justin113D (talk | contribs)
Updated related shaders
Justin113D (talk | contribs)
Renamed vertex color parameter to vertex colors
 
(6 intermediate revisions by the same user not shown)
Line 2: Line 2:
[[{{{game}}} Shaders|Return to shaders list]]
[[{{{game}}} Shaders|Return to shaders list]]
== Overview ==
== Overview ==
{{SXSG Shader Behavior
{{#invoke:ShaderDoc|create_sbo|game={{{game}}}|parameters={{{sbo|}}}}}
| model = 2
}}
{{{overview}}}
{{{overview}}}
{{#if:{{{related shaders|}}}|
{{#if:{{{related shaders|}}}|
Line 14: Line 12:
== Behavior ==
== Behavior ==
{{{behavior|}}}
{{{behavior|}}}
{{#if:{{{multi tangent|}}}|
=== Multi-tangent ===
{{{multi tangent}}}
|}}
=== Vertex Colors ===
{{{vertex colors|Shader does not use vertex colors}}}


=== Vertex Colors ===
<div style="clear: both"/>
{{{vertex color|Shader does not use vertex colors}}}


== Material Inputs ==
== Material Inputs ==


=== Textures ===
=== Textures ===
 
{{#if:{{{textures|}}}|
{| class="wikitable" width="100%"
{{{!}} class="wikitable" width="100%"
|+
{{!}}+
!width=1%|{{#tip-text: Name|Name of the material texture slot}}
!width=1%{{!}}{{#tip-text: Name|Name of the material texture slot}}
!width=1%|{{#tip-text: Index|Index of the texture slot name, starting from 0; This is important when a shader has the same slot name multiple times, in which case their order determines how each slot is used}}
!width=1%{{!}}{{#tip-text: Index|Index of the texture slot name, starting from 0; This is important when a shader has the same slot name multiple times, in which case their order determines how each slot is used}}
!width=1%|{{#tip-text: UV Index|Which UV map the slot uses, which is either an index from 0 to 3 or "any", in which case the UV map can be selected in the material.  
!width=1%{{!}}{{#tip-text: UV Index|Which UV map the slot uses, which is either an index from 0 to 3 or "any", in which case the UV map can be selected in the material.  
If a model does not have a UV Map for the specified index, then the game will fall back to UV Index 0}}
If a model does not have a UV Map for the specified index, then the game will fall back to UV Index 0}}
!width=1%|{{#tip-text: Kind|General usage format of the texture slot. More precise documentation is found on the right}}
!width=1%{{!}}{{#tip-text: Kind|General usage format of the texture slot. More precise documentation is found on the right}}
!width=24%| {{#tip-text: Red|How the red component of the texture gets used}}
!width=24%{{!}} {{#tip-text: Red|How the red component of the texture gets used}}
!width=24%| {{#tip-text: Green|How the green component of the texture gets used}}
!width=24%{{!}} {{#tip-text: Green|How the green component of the texture gets used}}
!width=24%| {{#tip-text: Blue|How the blue component of the texture gets used}}
!width=24%{{!}} {{#tip-text: Blue|How the blue component of the texture gets used}}
!width=24%| {{#tip-text: Alpha|How the alpha component of the texture gets used}}
!width=24%{{!}} {{#tip-text: Alpha|How the alpha component of the texture gets used}}
|-
{{#invoke:ShaderDoc|shader_table|{{{textures}}}}}
|}
{{!}}}|This shader does not use any textures.}}


=== Parameters ===
=== Parameters ===
 
{{#if:{{{parameters|}}}|
{| class="wikitable" width="100%"
{{{!}} class="wikitable" width="100%"
|+
{{!}}+
!width=1%|{{#tip-text: Name|Name of the parameter}}
!width=1%{{!}}{{#tip-text: Name|Name of the parameter}}
!width=25%|{{#tip-text: X|The first component of the parameter}}
!width=25%{{!}}{{#tip-text: X|The first component of the parameter}}
!width=25%|{{#tip-text: Y|The second component of the parameter}}
!width=25%{{!}}{{#tip-text: Y|The second component of the parameter}}
!width=25%|{{#tip-text: Z|The third component of the parameter}}
!width=25%{{!}}{{#tip-text: Z|The third component of the parameter}}
!width=25%|{{#tip-text: W|The fourth component of the parameter}}
!width=25%{{!}}{{#tip-text: W|The fourth component of the parameter}}
|-
{{#invoke:ShaderDoc|shader_table|{{{parameters}}}}}
|}
{{!}}}|This shader does not use any parameters.}}


== Technical ==
== Technical ==
 
{{{technical|}}}
{| class="mw-collapsible mw-collapsed wikitable" width="300px"
{{#if:{{{features|}}}|
|-
{{{!}} class="mw-collapsible mw-collapsed wikitable" width="300px"
{{!}}-
!Shader Features
!Shader Features
|}
{{#invoke:ShaderDoc|technical_features|{{{features}}}}}
 
{{!}}}|}}<nowiki/></includeonly>
</includeonly>
<noinclude>
<noinclude>
<templatedata>
<templatedata>
{
{
"params": {
    "params": {
         "game": {
         "game": {
"label": "Game",
            "label": "Game",
"description": "Which game this shader belongs to",
            "description": "Which game this shader belongs to",
"type": "string",
            "type": "string",
"required": true
            "required": true
},
        },
"shader name": {
        "shader name": {
"label": "Shader name",
            "label": "Shader name",
"description": "The name of the shader",
            "description": "The name of the shader",
"type": "string",
            "type": "string",
"required": true
            "required": true
},
        },
"overview": {
        "sbo": {
"label": "Overview",
            "label": "Shader behavior overview",
"description": "Overview content",
            "description": "Parameters for the shader behavior overview",
"type": "content",
            "type": "string",
"required": true
            "required": false
},
        },
"related shaders": {
        "overview": {
"label": "Related shaders",
            "label": "Overview",
"description": "List of related shaders",
            "description": "Overview content",
"type": "string",
            "type": "content",
"required": false
            "required": true
},
        },
        "related shaders": {
            "label": "Related shaders",
            "description": "List of related shaders",
            "type": "string",
            "required": false
        },
         "behavior": {
         "behavior": {
"label": "Behavior",
            "label": "Behavior",
"description": "Behavior content",
            "description": "Behavior content",
"type": "content",
            "type": "content",
"required": false
            "required": false
},
        },
         "vertex color": {
        "multi tangent": {
"label": "Vertex color",
            "label": "Multi tangent",
"description": "Vertex color behavior",
            "description": "Multi tangent behavior",
"type": "content",
            "type": "content",
"required": false
            "required": false
},
        },
         "vertex colors": {
            "label": "Vertex color",
            "description": "Vertex color behavior",
            "type": "content",
            "required": false
        },
         "textures": {
         "textures": {
"label": "Textures",
            "label": "Textures",
"description": "Texture table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons",
            "description": "Texture table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons",
"type": "content",
            "type": "content",
"required": false
            "required": false
},
        },
         "parameters": {
         "parameters": {
"label": "Parameters",
            "label": "Parameters",
"description": "Parameter table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons",
            "description": "Parameter table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons",
"type": "content",
            "type": "content",
"required": false
            "required": false
},
        },
         "technical": {
         "technical": {
"label": "Technical",
            "label": "Technical",
"description": "Technical information",
            "description": "Technical information",
"type": "content",
            "type": "content",
"required": false
            "required": false
},
        },
         "features": {
         "features": {
"label": "Shader features (technical)",
            "label": "Shader features (technical)",
"description": "List of technical features that the shader has been compiled with",
            "description": "List of technical features that the shader has been compiled with",
"type": "content",
            "type": "content",
"required": false
            "required": false
}
        }
}
    }
}
}
</templatedata>
</templatedata>
WIP


== Example ==
== Example ==
Line 132: Line 145:


| shader name = Common_dpn
| shader name = Common_dpn
| sbo = model=2,
no_opaque_layer,
no_punch_through_layer,
noise_dithering


| overview = A standard PBR shader with no special behavior.
| overview = A standard PBR shader with no special behavior.
Line 144: Line 162:
| behavior = Lorem ipsum.
| behavior = Lorem ipsum.


| vertex color =
| multi tangent =
Lorem ipsum.
 
| vertex colors =
* Color is multiplied into the <code>diffuse</code> texture color
* Color is multiplied into the <code>diffuse</code> texture color
* Alpha is multiplied into the <code>diffuse</code> texture alpha
* Alpha is multiplied into the <code>diffuse</code> texture alpha
Line 159: Line 180:
,[[Hedgehog Engine 2 - Physically Based Rendering (PBR)#Metallic|Metallic]] factor
,[[Hedgehog Engine 2 - Physically Based Rendering (PBR)#Metallic|Metallic]] factor
,;
,;


| technical = lorem ipsum.
| technical = lorem ipsum.
Line 169: Line 191:
is_use_gi_prt,
is_use_gi_prt,
is_use_gi_sg,
is_use_gi_sg,
is_use_gi
is_use_gi  
}}
}}
== Other ==
Outside template
</noinclude>
</noinclude>

Latest revision as of 17:41, 18 August 2025


No description.

Template parameters[Edit template data]

ParameterDescriptionTypeStatus
Gamegame

Which game this shader belongs to

Stringrequired
Shader nameshader name

The name of the shader

Stringrequired
Shader behavior overviewsbo

Parameters for the shader behavior overview

Stringoptional
Overviewoverview

Overview content

Contentrequired
Related shadersrelated shaders

List of related shaders

Stringoptional
Behaviorbehavior

Behavior content

Contentoptional
Multi tangentmulti tangent

Multi tangent behavior

Contentoptional
Vertex colorvertex colors

Vertex color behavior

Contentoptional
Texturestextures

Texture table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons

Contentoptional
Parametersparameters

Parameter table contents; Fields seperated by commas, column spans specified by underscores and rows seperated by semicolons

Contentoptional
Technicaltechnical

Technical information

Contentoptional
Shader features (technical)features

List of technical features that the shader has been compiled with

Contentoptional

Example

Return to shaders list

Overview

Shader Behavior Overview

A standard PBR shader with no special behavior.

Related shaders

Behavior

Lorem ipsum.

Multi-tangent

Lorem ipsum.

Vertex Colors

  • Color is multiplied into the diffuse texture color
  • Alpha is multiplied into the diffuse texture alpha

Material Inputs

Textures

Name

Index

UV Index

Kind

Red

Green

Blue

Alpha

diffuse 0 0 Albedo Albedo color Transparency
test 1 2 N/A N/A N/A N/A N/A

Parameters

Name

X

Y

Z

W

diffuse Albedo color N/A
PBRFactor Specular factor Smoothness factor Metallic factor N/A

Technical

lorem ipsum.

Shader Features
is_compute_instancing
is_use_tex_srt_anim
enable_deferred_rendering
enable_alpha_threshold
is_use_gi_prt
is_use_gi_sg
is_use_gi

Other

Outside template

Cookies help us deliver our services. By using our services, you agree to our use of cookies.