Răsfoiți Sursa

Document t.headset.mask;

bjorn 2 săptămâni în urmă
părinte
comite
a88a5f8f53
2 a modificat fișierele cu 17 adăugiri și 1 ștergeri
  1. 6 1
      api/init.lua
  2. 11 0
      api/lovr/callbacks/conf.lua

+ 6 - 1
api/init.lua

@@ -10,7 +10,7 @@ return {
       examples = {
         {
           description = "A noop conf.lua that sets all configuration settings to their defaults:",
-          code = "function lovr.conf(t)\n\n  -- Set the project version and identity\n  t.version = '0.18.0'\n  t.identity = 'default'\n\n  -- Set save directory precedence\n  t.saveprecedence = true\n\n  -- Enable or disable different modules\n  t.modules.audio = true\n  t.modules.data = true\n  t.modules.event = true\n  t.modules.graphics = true\n  t.modules.headset = true\n  t.modules.math = true\n  t.modules.physics = true\n  t.modules.system = true\n  t.modules.thread = true\n  t.modules.timer = true\n\n  -- Audio\n  t.audio.spatializer = nil\n  t.audio.samplerate = 48000\n  t.audio.start = true\n\n  -- Graphics\n  t.graphics.debug = false\n  t.graphics.vsync = true\n  t.graphics.stencil = false\n  t.graphics.antialias = true\n  t.graphics.shadercache = true\n\n  -- Headset settings\n  t.headset.drivers = { 'openxr', 'simulator' }\n  t.headset.start = true\n  t.headset.supersample = false\n  t.headset.seated = false\n  t.headset.antialias = true\n  t.headset.stencil = false\n  t.headset.submitdepth = true\n  t.headset.overlay = false\n\n  -- Math settings\n  t.math.globals = true\n\n  -- Thread settings\n  t.thread.workers = -1\n\n  -- Configure the desktop window\n  t.window.width = 1080\n  t.window.height = 600\n  t.window.fullscreen = false\n  t.window.resizable = false\n  t.window.title = 'LÖVR'\n  t.window.icon = nil\nend"
+          code = "function lovr.conf(t)\n\n  -- Set the project version and identity\n  t.version = '0.18.0'\n  t.identity = 'default'\n\n  -- Set save directory precedence\n  t.saveprecedence = true\n\n  -- Enable or disable different modules\n  t.modules.audio = true\n  t.modules.data = true\n  t.modules.event = true\n  t.modules.graphics = true\n  t.modules.headset = true\n  t.modules.math = true\n  t.modules.physics = true\n  t.modules.system = true\n  t.modules.thread = true\n  t.modules.timer = true\n\n  -- Audio\n  t.audio.spatializer = nil\n  t.audio.samplerate = 48000\n  t.audio.start = true\n\n  -- Graphics\n  t.graphics.debug = false\n  t.graphics.vsync = true\n  t.graphics.stencil = false\n  t.graphics.antialias = true\n  t.graphics.shadercache = true\n\n  -- Headset settings\n  t.headset.drivers = { 'openxr', 'simulator' }\n  t.headset.start = true\n  t.headset.supersample = false\n  t.headset.seated = false\n  t.headset.mask = true\n  t.headset.antialias = true\n  t.headset.stencil = false\n  t.headset.submitdepth = true\n  t.headset.overlay = false\n\n  -- Math settings\n  t.math.globals = true\n\n  -- Thread settings\n  t.thread.workers = -1\n\n  -- Configure the desktop window\n  t.window.width = 1080\n  t.window.height = 600\n  t.window.fullscreen = false\n  t.window.resizable = false\n  t.window.title = 'LÖVR'\n  t.window.icon = nil\nend"
         }
       },
       notes = "Disabling unused modules can improve startup time.\n\n`t.window` can be set to nil to avoid creating the window.  The window can later be opened manually using `lovr.system.openWindow`.\n\nEnabling the `t.graphics.debug` flag will add additional error checks and will send messages from the GPU driver to the `lovr.log` callback.  This will decrease performance but can help provide information on performance problems or other bugs.  It will also cause `lovr.graphics.newShader` to embed debugging information in shaders which allows inspecting variables and stepping through shaders line-by-line in tools like RenderDoc.\n\n`t.graphics.debug` can also be enabled using the `--graphics-debug` command line option.",
@@ -181,6 +181,11 @@ return {
                       type = "boolean",
                       description = "Whether <a data-key=\"lovr.headset.isSeated\">seated mode</a> should be used instead of standing, changing the headset coordinate space to place y=0 at eye level."
                     },
+                    {
+                      name = "mask",
+                      type = "boolean",
+                      description = "Enable or disable the headset mask.  This is an optimization that skips rendering pixels on the edges of the headset texture that can't be seen while in the headset due to lens distortion.  When enabled, at the beginning of the frame, the edges of the headset texture will be filled in with black (and depth = 1)."
+                    },
                     {
                       name = "antialias",
                       type = "boolean",

+ 11 - 0
api/lovr/callbacks/conf.lua

@@ -188,6 +188,16 @@ return {
                 of standing, changing the headset coordinate space to place y=0 at eye level.
               ]]
             },
+            {
+              name = 'mask',
+              type = 'boolean',
+              description = [[
+                Enable or disable the headset mask.  This is an optimization that skips rendering
+                pixels on the edges of the headset texture that can't be seen while in the headset
+                due to lens distortion.  When enabled, at the beginning of the frame, the edges of
+                the headset texture will be filled in with black (and depth = 1).
+              ]]
+            },
             {
               name = 'antialias',
               type = 'boolean',
@@ -345,6 +355,7 @@ return {
           t.headset.start = true
           t.headset.supersample = false
           t.headset.seated = false
+          t.headset.mask = true
           t.headset.antialias = true
           t.headset.stencil = false
           t.headset.submitdepth = true