Skip to content

Commit

Permalink
Mention documentation comment support in Shading language
Browse files Browse the repository at this point in the history
This also updates the shaders style guide accordingly.
  • Loading branch information
Calinou committed Apr 29, 2024
1 parent adf3c32 commit 5455c93
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 1 deletion.
2 changes: 1 addition & 1 deletion tutorials/scripting/gdscript/gdscript_styleguide.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
.. _doc_gdscript_styleguide:
c.. _doc_gdscript_styleguide:

GDScript style guide
====================
Expand Down
37 changes: 37 additions & 0 deletions tutorials/shaders/shader_reference/shading_language.rst
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,43 @@ Most GLSL ES 3.0 datatypes are supported:
| **samplerCubeArray** | Sampler type for binding Cubemap arrays, which are read as float. |
+----------------------+---------------------------------------------------------------------------------+

Comments
~~~~~~~~

The shading language supports the same comment syntax as used in C# and C++:

.. code-block:: glsl
// Single-line comment.
int a = 2; // Another single-line comment.
/*
Multi-line comment.
The comment ends when the ending delimiter is found
(here, it's on the line below).
*/
int b = 3;
Additionally, you can use documentation comments that are displayed in the
inspector when hovering a shader parameter. Documentation comments are currently
only supported when placed immediately above a ``uniform`` declaration. These
documentation comments only support the **multiline** comment syntax and must use
**two** leading asterisks (``/**``) instead of just one (``/*``):

.. code-block:: glsl
/**
* This is a documentation comment.
* These lines will appear in the inspector when hovering the shader parameter
* named "Something".
* You can use [b]BBCode[/b] [i]formatting[/i] in the comment.
*/
uniform int something = 1;
The asterisks on the follow-up lines are not required, but are recommended as
per the :ref:`doc_shaders_style_guide`. These asterisks are automatically
stripped by the inspector, so they won't appear in the tooltip.

Casting
~~~~~~~

Expand Down
19 changes: 19 additions & 0 deletions tutorials/shaders/shaders_style_guide.rst
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,25 @@ Don't use multiline comment syntax if your comment can fit on a single line:
press :kbd:`Ctrl + K`. This feature adds or removes ``//`` at the start of
the selected lines.

Documentation comments
~~~~~~~~~~~~~~~~~~~~~~

Use the following format for documentation comments above uniforms:

.. code-block:: glsl
/**
* This is a documentation comment.
* These lines will appear in the inspector when hovering the shader parameter
* named "Something".
* You can use [b]BBCode[/b] [i]formatting[/i] in the comment.
*/
uniform int something = 1;
These comments will appear when hovering a property in the inspector. If you
don't wish the comment to be visible in the inspector, use the standard comment
syntax instead (``// ...`` or ``/* ... */``).

Whitespace
~~~~~~~~~~

Expand Down

0 comments on commit 5455c93

Please sign in to comment.