Files
godot-docs/classes/class_visualshadernodederivativefunc.rst
2022-07-27 13:59:06 +02:00

119 lines
4.6 KiB
ReStructuredText

:github_url: hide
.. DO NOT EDIT THIS FILE!!!
.. Generated automatically from Godot engine sources.
.. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
.. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/VisualShaderNodeDerivativeFunc.xml.
.. _class_VisualShaderNodeDerivativeFunc:
VisualShaderNodeDerivativeFunc
==============================
**Inherits:** :ref:`VisualShaderNode<class_VisualShaderNode>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Calculates a derivative within the visual shader graph.
Description
-----------
This node is only available in ``Fragment`` and ``Light`` visual shaders.
Properties
----------
+---------------------------------------------------------------+-------------------------------------------------------------------------+-------+
| :ref:`Function<enum_VisualShaderNodeDerivativeFunc_Function>` | :ref:`function<class_VisualShaderNodeDerivativeFunc_property_function>` | ``0`` |
+---------------------------------------------------------------+-------------------------------------------------------------------------+-------+
| :ref:`OpType<enum_VisualShaderNodeDerivativeFunc_OpType>` | :ref:`op_type<class_VisualShaderNodeDerivativeFunc_property_op_type>` | ``0`` |
+---------------------------------------------------------------+-------------------------------------------------------------------------+-------+
Enumerations
------------
.. _enum_VisualShaderNodeDerivativeFunc_OpType:
.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_SCALAR:
.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR_2D:
.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR_3D:
.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR_4D:
.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_MAX:
enum **OpType**:
- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar.
- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type.
- **OP_TYPE_VECTOR_3D** = **2** --- A 3D vector type.
- **OP_TYPE_VECTOR_4D** = **3** --- A 4D vector type.
- **OP_TYPE_MAX** = **4** --- Represents the size of the :ref:`OpType<enum_VisualShaderNodeDerivativeFunc_OpType>` enum.
----
.. _enum_VisualShaderNodeDerivativeFunc_Function:
.. _class_VisualShaderNodeDerivativeFunc_constant_FUNC_SUM:
.. _class_VisualShaderNodeDerivativeFunc_constant_FUNC_X:
.. _class_VisualShaderNodeDerivativeFunc_constant_FUNC_Y:
.. _class_VisualShaderNodeDerivativeFunc_constant_FUNC_MAX:
enum **Function**:
- **FUNC_SUM** = **0** --- Sum of absolute derivative in ``x`` and ``y``.
- **FUNC_X** = **1** --- Derivative in ``x`` using local differencing.
- **FUNC_Y** = **2** --- Derivative in ``y`` using local differencing.
- **FUNC_MAX** = **3** --- Represents the size of the :ref:`Function<enum_VisualShaderNodeDerivativeFunc_Function>` enum.
Property Descriptions
---------------------
.. _class_VisualShaderNodeDerivativeFunc_property_function:
- :ref:`Function<enum_VisualShaderNodeDerivativeFunc_Function>` **function**
+-----------+---------------------+
| *Default* | ``0`` |
+-----------+---------------------+
| *Setter* | set_function(value) |
+-----------+---------------------+
| *Getter* | get_function() |
+-----------+---------------------+
A derivative function type. See :ref:`Function<enum_VisualShaderNodeDerivativeFunc_Function>` for options.
----
.. _class_VisualShaderNodeDerivativeFunc_property_op_type:
- :ref:`OpType<enum_VisualShaderNodeDerivativeFunc_OpType>` **op_type**
+-----------+--------------------+
| *Default* | ``0`` |
+-----------+--------------------+
| *Setter* | set_op_type(value) |
+-----------+--------------------+
| *Getter* | get_op_type() |
+-----------+--------------------+
A type of operands and returned value. See :ref:`OpType<enum_VisualShaderNodeDerivativeFunc_OpType>` for options.
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`