Difference between revisions of "Depth of Field test"

From Second Life Wiki
Jump to navigation Jump to search
 
(13 intermediate revisions by 2 users not shown)
Line 19: Line 19:
# Check Atmospheric shaders
# Check Atmospheric shaders
# Check Lighting and Shadows
# Check Lighting and Shadows
# Check Depth of Field
# Enable the Advanced menu (ctrl-alt-d)
# Enable the Advanced menu (ctrl-alt-d)
# Open Advanced menu > Show Debug Settings
# Open Advanced menu > Show Debug Settings
# Type in CameraFocalLength , set the value to 500 and hit enter. This will will accentuate the Depth of Field effect and make correctness testing easier.
# Type in CameraFocalLength , set the value to 500 and hit enter. This will will accentuate the Depth of Field effect and make correctness testing easier.


===Focal distance is always 16m when not alt-zooming or using flycam===
===Avatar is always in focus when not alt-zooming or using flycam===
# Open Advanced menu > Show Debug Settings
# Type in CameraFocalLength , set the value to 50 (default) and hit enter.
# Type in CameraFocalLength , set the value to 500 and hit enter. This will will accentuate the Depth of Field effect and make correctness testing easier.
# Close Debug Settings
# Hit the escape key so nothing has focus.
# Hit the escape key so nothing has focus.
# Put your cursor over the sky.
# Put your cursor over the sky.
# '''Verify''' your avatar is a little blurry.
# '''Verify''' your avatar is in focus.
# '''Verify''' objects about 16m from the camera are sharp.
# '''Verify''' objects in the distant background are out of focus.
# '''Verify''' objects nearer and farther than 16m are blurry.


===Alt-zooming on something locks the DOF focus===
===Alt-zooming on something locks the DOF focus===
Line 73: Line 69:
=== Flycam Mode ===
=== Flycam Mode ===
* Flycam Mode requires a joystick or gamepad device. See https://wiki.secondlife.com/wiki/Flycam for setup instructions.
* Flycam Mode requires a joystick or gamepad device. See https://wiki.secondlife.com/wiki/Flycam for setup instructions.
* Enable flycam mode so your camera roams free and no longer tracks your avatar.


=== Object under cursor gets focus in flycam mode ===
==== Object under cursor gets focus in flycam mode ====
# Move your cursor over an object in world
# Move your cursor over an object in world
# '''Verify''' object becomes in focus.
# '''Verify''' object becomes in focus.


=== Specific point on object under cursors gets focus in flycam mode ===
==== Specific point on object under cursors gets focus in flycam mode ====
# Move camera very near an object.
# Move camera very near an object.
# Move cursor around on surface of object.
# Move cursor around on surface of object.
# '''Verify''' focus tracks mouse cursor "depth."
# '''Verify''' focus tracks mouse cursor "depth."


===Sky and void do not get DOF focus in flycam mode===
====Water within a region does get DOF focus in flycam mode====
# Move your cursor from your avatar to the sky.
# '''Verify''' your avatar remains focused.
# Teleport your avatar next to the void (where there is no region and ocean is rendered)
# Move your cursor from your avatar to the ocean.
# '''Verify''' your avatar remains focused.
 
===Water within a region does get DOF focus in flycam mode===
# Teleport to some water that is within the boundary of a region.
# Teleport to some water that is within the boundary of a region.
# Move your cursor from your avatar to the water.
# Move your cursor from your avatar to the water.
# '''Verify''' the water receives focus.
# '''Verify''' the water receives focus.


===if you hover your cursor over your nametag, your avatar should get focus in flycam mode===
====if you hover your cursor over your nametag, your avatar should get focus in flycam mode====
# Move your cursor from a distant object to your nametag
# Move your cursor from a distant object to your nametag
# '''Verify''' your avatar becomes focused.
# '''Verify''' your avatar becomes focused.


==== end of flycam mode test ====
Turn off flycam mode so your camera once again tracks your avatar.


===CameraFieldOfView===
===CameraFieldOfView===
* Open Advanced menu > Show Debug Settings, and type CameraFocalLength
* Click the "Reset to Default" button and '''verify''' this resets to 50.
* Open Advanced menu > Show Debug Settings, and type CameraFieldOfView
* Open Advanced menu > Show Debug Settings, and type CameraFieldOfView
* '''Verify''' that when you increase this, your focal planes get closer together. ie. the depth of area that is in focus becomes narrower.
* Set CameraFieldOfView to 120.
* If it's set properly, then mousing around on things should properly focus
* '''Verify''' the focal planes get closer together. ie. the depth of area that is in focus becomes narrower and far objects appear more out of focus.
* '''Verify''' this resets to a default of 60.
* Click the "Reset to Default" button and '''verify''' this resets to 60.


===CameraFNumber===
===CameraFNumber===
Line 126: Line 120:
* Open Advanced menu > Show Debug Settings, and type CameraFocusTransitionTime
* Open Advanced menu > Show Debug Settings, and type CameraFocusTransitionTime
* Change value to 3
* Change value to 3
* Enter mouselook mode by pressing the m key.
* Move your cursor over a far away object
* Move your cursor over a far away object
* '''Verify''' it takes 3 seconds for the object to become focused.
* '''Verify''' it takes 3 seconds for the object to become focused.
* '''Verify''' this resets to a default of 0.5s
* '''Verify''' this resets to a default of 0.5s
===CameraMaxCoF===
* Open Advanced menu > Show Debug Settings, and type CameraMaxCoF
* Change value to 32
* '''Verify''' Blur "circles" reach a maximum size of 32 pixels.
* '''Verify''' this resets to a default of 10.0


===Objects with Transparency value of 100% allow right-clicks to pass through Unless it has a touch event.===
===Objects with Transparency value of 100% allow right-clicks to pass through Unless it has a touch event.===
Line 134: Line 135:
# Create 2 boxes.
# Create 2 boxes.
# Set the Transparency of one box to 99% and the other to 100%
# Set the Transparency of one box to 99% and the other to 100%
# Close the edit tools window.
# Attempt to right-click through the objects.
# Attempt to right-click through the objects.
# '''Verify''' you can click through the object that is 100% transparent, but cannot click through the object that is 99% transparent.
# '''Verify''' you can click through the object that is 100% transparent, but cannot click through the object that is 99% transparent.
# Add a default script to the 100% Transparent object.
# Add a default script to the 100% Transparent object.
# Attempt to right-click through the object.
# Attempt to right-click through the 100% Transparent object.
# '''Verify''' you can no longer click through the object.
# '''Verify''' you can no longer click through the 100% Transparent object.


* does this break any transparent content that needs right clicking or left clicking?
* does this break any transparent content that needs right clicking or left clicking?

Latest revision as of 09:45, 9 November 2011


Purpose

Test the functionality of the Depth of Field [DOF] render effect.

Sources

Depth_of_field

Scope

Video cards with OpenGL 3.0 or higher.

Test Plan

Setup

  1. Choose Me menu > Preferences.
  2. In the Preferences window, click Graphics tab.
  3. Click Advanced button to show additional options.
  4. If Lighting and Shadows is not a visible option, you'll need to get a viewer that includes the feature. See https://wiki.secondlife.com/wiki/Depth_of_field#How_can_I_see_the_depth_of_field_effect.3F
  5. Check Hardware skinning.
  6. Check Atmospheric shaders
  7. Check Lighting and Shadows
  8. Check Depth of Field
  9. Enable the Advanced menu (ctrl-alt-d)
  10. Open Advanced menu > Show Debug Settings
  11. Type in CameraFocalLength , set the value to 500 and hit enter. This will will accentuate the Depth of Field effect and make correctness testing easier.

Avatar is always in focus when not alt-zooming or using flycam

  1. Hit the escape key so nothing has focus.
  2. Put your cursor over the sky.
  3. Verify your avatar is in focus.
  4. Verify objects in the distant background are out of focus.

Alt-zooming on something locks the DOF focus

  1. Hold the Alt key and click an object
  2. Verify the object is now focused.
  3. Move your cursor over various objects.
  4. Verify the object the object you alt-zoomed on remains focused.

DOF becomes stronger as you zoom closer to an object

  1. Alt-zoom on an object while watching objects in the background.
  2. Verify object in the background become fuzzier as you zoom closer to the foreground object.


DOF does nothing under water

  1. Fly under water and verify the DOF effect is disabled.

Media on a Prim looks sharp when focused

  1. Alt-zoom on a media prim
  2. Verify the spot you alt-zoomed on looks sharp.
  3. Click the focus button on the media bar
  4. Verify the camera moves to point directly at the media the entire media face looks sharp.

In mouselook, object behind the crosshair is focused

  1. Enter mouselook mode by pressing the m key.
  2. Move your view around.
  3. Verify that whatever is behind the block cursor in the center of the screen is in focus.
  4. Exit mouselook mode by pressing the escape key.

HUD attachments should be ignored

  1. Attache a block to your HUD or wear any HUD attachments you own.
  2. Move your cursor over various objects.
  3. Verify your HUD object is always in focus.

DOF should be off when in build/edit mode

  1. Create a box
  2. Verify nothing is blurry because DOF has been disabled.
  3. Close the edit tools.
  4. Verify DOF has been enabled again.

Flycam Mode

  • Flycam Mode requires a joystick or gamepad device. See https://wiki.secondlife.com/wiki/Flycam for setup instructions.
  • Enable flycam mode so your camera roams free and no longer tracks your avatar.

Object under cursor gets focus in flycam mode

  1. Move your cursor over an object in world
  2. Verify object becomes in focus.

Specific point on object under cursors gets focus in flycam mode

  1. Move camera very near an object.
  2. Move cursor around on surface of object.
  3. Verify focus tracks mouse cursor "depth."

Water within a region does get DOF focus in flycam mode

  1. Teleport to some water that is within the boundary of a region.
  2. Move your cursor from your avatar to the water.
  3. Verify the water receives focus.

if you hover your cursor over your nametag, your avatar should get focus in flycam mode

  1. Move your cursor from a distant object to your nametag
  2. Verify your avatar becomes focused.

end of flycam mode test

Turn off flycam mode so your camera once again tracks your avatar.

CameraFieldOfView

  • Open Advanced menu > Show Debug Settings, and type CameraFocalLength
  • Click the "Reset to Default" button and verify this resets to 50.
  • Open Advanced menu > Show Debug Settings, and type CameraFieldOfView
  • Set CameraFieldOfView to 120.
  • Verify the focal planes get closer together. ie. the depth of area that is in focus becomes narrower and far objects appear more out of focus.
  • Click the "Reset to Default" button and verify this resets to 60.

CameraFNumber

  • Open Advanced menu > Show Debug Settings, and type CameraFNumber
  • Set it to 32, you'll have to really zoom in on an object before the background gets fuzzy.
  • Set it to 4, background should be very fuzzy.
  • Verify this resets to a default of 9.

CameraFocalLength

  • Open Advanced menu > Show Debug Settings, and type CameraFocalLength
  • the longer this is, the more narrow the depth of field is. This is used in combination with field of view to calculate the aspect ratio.
  • 50mm is what you'd expect to see with 35mm camera
  • 200mm is like a telescope
  • 5 - 15mm would be like cell phone camera.
  • test:
  • 1 is basically no DOF
  • 1000 is exaggerated DOF, like tilt-zoom
  • Verify this resets to a default of 50.

CameraFocusTransitionTime

  • Open Advanced menu > Show Debug Settings, and type CameraFocusTransitionTime
  • Change value to 3
  • Enter mouselook mode by pressing the m key.
  • Move your cursor over a far away object
  • Verify it takes 3 seconds for the object to become focused.
  • Verify this resets to a default of 0.5s

CameraMaxCoF

  • Open Advanced menu > Show Debug Settings, and type CameraMaxCoF
  • Change value to 32
  • Verify Blur "circles" reach a maximum size of 32 pixels.
  • Verify this resets to a default of 10.0

Objects with Transparency value of 100% allow right-clicks to pass through Unless it has a touch event.

  • Note: This is a functionality change in the viewer that supports DOF. Previously, right-clicks would not pass through 100% Transparent objects.
  1. Create 2 boxes.
  2. Set the Transparency of one box to 99% and the other to 100%
  3. Close the edit tools window.
  4. Attempt to right-click through the objects.
  5. Verify you can click through the object that is 100% transparent, but cannot click through the object that is 99% transparent.
  6. Add a default script to the 100% Transparent object.
  7. Attempt to right-click through the 100% Transparent object.
  8. Verify you can no longer click through the 100% Transparent object.
  • does this break any transparent content that needs right clicking or left clicking?
  • does it match up with the right click-thru of semitransparent textures. no.

Objects with Transparency of 66% or lower will not affect the DOF effect behind them.

  1. Set Advanced menu > Show Debug Settings > CameraFocalLength to 500
  2. Create a 2x2x2m cube
  3. Set the cube's transparency to 66%.
  4. Close the edit tool and alt-zoom on the cube.
  5. Verify you see a DOF effect on the objects or ground behind the cube.
  6. Set the cube's transparency to 67%.
  7. Close the edit tool and alt-zoom on the cube.
  8. Verify everything appears fuzzy behind the cube.



Tests to add sometime: Can different real-world cameras be simulated by plugging in the right FNumber and FocalLength numbers?