getSpatializer.lua 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. return {
  2. tag = 'listener',
  3. summary = 'Get the name of the active spatializer',
  4. description = [[
  5. Returns the name of the active spatializer (`simple`, `oculus`, or `phonon`).
  6. The `t.audio.spatializer` setting in `lovr.conf` can be used to express a preference for a
  7. particular spatializer. If it's `nil`, all spatializers will be tried in the following order:
  8. `phonon`, `oculus`, `simple`.
  9. ]],
  10. arguments = {},
  11. returns = {
  12. spatializer = {
  13. type = 'string',
  14. description = 'The name of the active spatializer.'
  15. }
  16. },
  17. variants = {
  18. {
  19. arguments = {},
  20. returns = { 'spatializer' }
  21. }
  22. },
  23. notes = [[
  24. Using a feature or effect that is not supported by the current spatializer will not error, it
  25. just won't do anything.
  26. <table>
  27. <thead>
  28. <tr>
  29. <td>Feature</td>
  30. <td>simple</td>
  31. <td>phonon</td>
  32. <td>oculus</td>
  33. </tr>
  34. </thead>
  35. <tbody>
  36. <tr>
  37. <td>Effect: Spatialization</td>
  38. <td>x</td>
  39. <td>x</td>
  40. <td>x</td>
  41. </tr>
  42. <tr>
  43. <td>Effect: Attenuation</td>
  44. <td>x</td>
  45. <td>x</td>
  46. <td>x</td>
  47. </tr>
  48. <tr>
  49. <td>Effect: Absorption</td>
  50. <td></td>
  51. <td>x</td>
  52. <td></td>
  53. </tr>
  54. <tr>
  55. <td>Effect: Occlusion</td>
  56. <td></td>
  57. <td>x</td>
  58. <td></td>
  59. </tr>
  60. <tr>
  61. <td>Effect: Transmission</td>
  62. <td></td>
  63. <td>x</td>
  64. <td></td>
  65. </tr>
  66. <tr>
  67. <td>Effect: Reverb</td>
  68. <td></td>
  69. <td>x</td>
  70. <td></td>
  71. </tr>
  72. <tr>
  73. <td>lovr.audio.setGeometry</td>
  74. <td></td>
  75. <td>x</td>
  76. <td></td>
  77. </tr>
  78. <tr>
  79. <td>Source:setDirectivity</td>
  80. <td>x</td>
  81. <td>x</td>
  82. <td></td>
  83. </tr>
  84. <tr>
  85. <td>Source:setRadius</td>
  86. <td></td>
  87. <td>x</td>
  88. <td></td>
  89. </tr>
  90. </tbody>
  91. </table>
  92. ]],
  93. related = {
  94. 'lovr.conf'
  95. }
  96. }