diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2023-01-24 09:54:32 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2023-01-24 09:54:32 +0100 |
commit | a17e0a02506a206bb2e710cc46822d0149f2e4bc (patch) | |
tree | d3527bb542816bfb791cf44d7d33f68323cf708f | |
parent | 06c930caf1938c72c03388e16de1024dfca8ba00 (diff) | |
parent | b29193945d9b0cd6d96c8ade0a64359e46c32cf4 (diff) |
Merge pull request #71932 from raulsntos/dotnet/lin2db-to-math
C#: Move `LinearToDb` and `DbToLinear` to Mathf
-rw-r--r-- | modules/mono/glue/GodotSharp/GodotSharp/Core/GD.cs | 31 | ||||
-rw-r--r-- | modules/mono/glue/GodotSharp/GodotSharp/Core/Mathf.cs | 31 |
2 files changed, 31 insertions, 31 deletions
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/GD.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/GD.cs index e4b79e7ec4..f3f124d5ad 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/GD.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/GD.cs @@ -49,17 +49,6 @@ namespace Godot return Variant.CreateTakingOwnershipOfDisposableValue(ret); } - /// <summary> - /// Converts from decibels to linear energy (audio). - /// </summary> - /// <seealso cref="LinearToDb(real_t)"/> - /// <param name="db">Decibels to convert.</param> - /// <returns>Audio volume as linear energy.</returns> - public static real_t DbToLinear(real_t db) - { - return (real_t)Math.Exp(db * 0.11512925464970228420089957273422); - } - private static string[] GetPrintParams(object[] parameters) { if (parameters == null) @@ -112,26 +101,6 @@ namespace Godot } /// <summary> - /// Converts from linear energy to decibels (audio). - /// This can be used to implement volume sliders that behave as expected (since volume isn't linear). - /// </summary> - /// <seealso cref="DbToLinear(real_t)"/> - /// <example> - /// <code> - /// // "slider" refers to a node that inherits Range such as HSlider or VSlider. - /// // Its range must be configured to go from 0 to 1. - /// // Change the bus name if you'd like to change the volume of a specific bus only. - /// AudioServer.SetBusVolumeDb(AudioServer.GetBusIndex("Master"), GD.LinearToDb(slider.value)); - /// </code> - /// </example> - /// <param name="linear">The linear energy to convert.</param> - /// <returns>Audio as decibels.</returns> - public static real_t LinearToDb(real_t linear) - { - return (real_t)(Math.Log(linear) * 8.6858896380650365530225783783321); - } - - /// <summary> /// Loads a resource from the filesystem located at <paramref name="path"/>. /// The resource is loaded on the method call (unless it's referenced already /// elsewhere, e.g. in another script or in the scene), which might cause slight delay, diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Mathf.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Mathf.cs index b2cb0f5e6b..137a42a6de 100644 --- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Mathf.cs +++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Mathf.cs @@ -324,6 +324,17 @@ namespace Godot } /// <summary> + /// Converts from decibels to linear energy (audio). + /// </summary> + /// <seealso cref="LinearToDb(real_t)"/> + /// <param name="db">Decibels to convert.</param> + /// <returns>Audio volume as linear energy.</returns> + public static real_t DbToLinear(real_t db) + { + return (real_t)Math.Exp(db * 0.11512925464970228420089957273422); + } + + /// <summary> /// Converts an angle expressed in degrees to radians. /// </summary> /// <param name="deg">An angle expressed in degrees.</param> @@ -515,6 +526,26 @@ namespace Godot } /// <summary> + /// Converts from linear energy to decibels (audio). + /// This can be used to implement volume sliders that behave as expected (since volume isn't linear). + /// </summary> + /// <seealso cref="DbToLinear(real_t)"/> + /// <example> + /// <code> + /// // "slider" refers to a node that inherits Range such as HSlider or VSlider. + /// // Its range must be configured to go from 0 to 1. + /// // Change the bus name if you'd like to change the volume of a specific bus only. + /// AudioServer.SetBusVolumeDb(AudioServer.GetBusIndex("Master"), GD.LinearToDb(slider.value)); + /// </code> + /// </example> + /// <param name="linear">The linear energy to convert.</param> + /// <returns>Audio as decibels.</returns> + public static real_t LinearToDb(real_t linear) + { + return (real_t)(Math.Log(linear) * 8.6858896380650365530225783783321); + } + + /// <summary> /// Natural logarithm. The amount of time needed to reach a certain level of continuous growth. /// /// Note: This is not the same as the "log" function on most calculators, which uses a base 10 logarithm. |