Difference between revisions of "User:Jenna Huntsman"

From Second Life Wiki
Jump to navigation Jump to search
(Add deeplink to new section)
(Make use of new lens settings template.)
Line 73: Line 73:


== Lens Settings ==
== Lens Settings ==
The below contains settings for simulating various real-life lenses within Second Life. These settings will change the camera's Field of View (FoV), as well as [[Depth of field]] (DoF) settings. You may want to play around with some of these settings (for example, the Aperture value) to manipulate the depth-of-field effect.
{{User:Jenna Huntsman/CameraLensPresets}}
 
{{KBtip|The default Second Life camera is roughly equivalent to a full frame digital (36x24mm sensor) camera using 35mm lens.}}
 
For reference, the following table describes the debug settings changed, their units, and what the setting does. Default values are not provided as these settings may vary between viewers.
{| class="mw-collapsible mw-collapsed wikitable"
|+ style="white-space:nowrap; border:1px solid; padding:3px;" | Debug Setting Glossary
|-
! scope="col" | Debug Setting
! scope="col" | Units
! scope="col" | Description
|-
| CameraAngle || [[Radians]] || Camera Field-of-View angle, diagonal. Equivalent to Angle of View - diagonal degrees to equate a real lens. This changes the '''visible''' FoV.
|-
| CameraDoFResScale || Linear || Amount to scale down resolution of DoF effect. Manipulating this value may change performance.
|-
| CameraFieldOfView || Degrees || Field-of-View angle used for the DoF effect. Note that this value is the '''vertical''' FoV, NOT diagonal.
|-
| CameraFNumber || F Stop || F Stop (or Aperture) value to be simulated by DoF effect. '''This is the value you should change to adjust the intensity of the DoF effect.'''
|-
| CameraFocalLength || mm || Focal length of the lens to be simulated by the DoF effect.
|-
| CameraMaxCoF || mm*1000 || Lens Circle of Confusion value to be simulated by the DoF effect.
|-
| CameraFocusTransitionTime || Seconds || Time the camera will take to transition between 2 focal planes.
|}
 
{{Enote|The below settings assume that the screen is in the '''''16:9 aspect ratio''''' - These values vary depending on aspect ratio, so if you have a screen of a different ratio, you may need to recalculate these values.}}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 8 mm (Fisheye)  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 2.403
|-
| CameraFieldOfView || 103.4
|-
| CameraFocalLength || 8
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 16 mm  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 1.824
|-
| CameraFieldOfView || 64.65
|-
| CameraFocalLength || 16
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 24 mm  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 1.421
|-
| CameraFieldOfView || 45.75
|-
| CameraFocalLength || 24
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffc000"| 35 mm (SL Default)  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 1.047
|-
| CameraFieldOfView || 37.85
|-
| CameraFocalLength || 35
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 50 mm  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 0.783
|-
| CameraFieldOfView || 22.9
|-
| CameraFocalLength || 50
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 75 mm  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 0.537
|-
| CameraFieldOfView || 15.38
|-
| CameraFocalLength || 75
|-
| CameraMaxCoF || 29.0
|}
 
{| class="mw-collapsible mw-collapsed wikitable"
! colspan="2" style="background-color:#ffffaa"| 100 mm  
|-
! scope="col" style="background-color:#A7C1F2"| Debug Setting
! scope="col" style="background-color:#A7C1F2"| Value
|-
| CameraAngle || 0.407
|-
| CameraFieldOfView || 11.56
|-
| CameraFocalLength || 100
|-
| CameraMaxCoF || 29.0
|}

Revision as of 04:12, 6 May 2022

thumb|Jenna Huntsman

Intro

I'm a hobbyist scripter.

Projects

LSL

My Marketplace Store.

Code Snippets

sRGB EOTF

Note that when converting a colour from regular LSL space (sRGB) to linear space for use in a light, it's likely quicker and cleaner to use the internal function llsRGB2Linear. This is mostly a function that can be used for fun to manipulate the gamma space of colours.

Summary

Function: vector srgb_eotf( vector color, float gamma );

Converts a gamma-encoded color value to linear space. Useful when dealing with lights (as these expect a non-gamma-encoded color).
Returns a vector

• vector color
• float gamma

Specification

vector srgb_eotf(vector color, float gamma) //To convert from regular LSL colour to light colour, gamma value should be 2.4
{ //Conversion from gamma-encoded sRGB space to linear space. Credit: Jenna Huntsman, Christopher J. Howard
    vector low = color / 12.92;
    vector high = <llPow((color.x + 0.055)/1.055,gamma), llPow((color.y + 0.055)/1.055, gamma), llPow((color.z + 0.055)/1.055, gamma)>;
    return mix(low, high, step(<0.04045,0.04045,0.04045>, color));
}

float max(float x, float y)
{ //Return the higher of 2 given values.
    if( y > x ) return y;
    return x;
}

vector mix(vector x, vector y, vector t)
{
    vector ret;
    ret.x = x.x*(1-t.x) + y.x*t.x;
    ret.y = x.y*(1-t.y) + y.y*t.y;
    ret.z = x.z*(1-t.z) + y.z*t.z;  
    return ret;
}

vector step(vector edge, vector x)
{
    vector ret = <1,1,1>;
    if(x.x < edge.x) ret.x = 0;
    if(x.y < edge.y) ret.x = 0;
    if(x.z < edge.z) ret.x = 0;
    return ret;
}

Examples

vector LampCol = <1,0.74510,0.47451>; //3200 kelvin
llSetLinkPrimitiveParamsFast(LINK_THIS,[PRIM_POINT_LIGHT,1,srgb_eotf(LampCol,2.4),1,20,0,PRIM_GLOW,ALL_SIDES,1,PRIM_COLOR,ALL_SIDES,LampCol,1,PRIM_FULLBRIGHT,ALL_SIDES,1]);
//Set light source colour and prim colour to same colour; despite taking different input values.


Random Notes

I be a placeholder. At least for now.

Photo Checklist Page Update

This is some text. I need to do something here.

Lens Settings

The table below contains settings for simulating various real-life lenses within Second Life. These settings will change the camera's Field of View (FoV), as well as Depth of field (DoF) settings. You may want to play around with some of these settings (for example, the Aperture value) to manipulate the depth-of-field effect.

KBtip2.png Tip: The default Second Life camera is roughly equivalent to a full frame digital (36x24mm sensor) camera using 31mm lens.

For reference, the following table describes the debug settings changed, their units, and what the setting does. Default values are not provided as these settings may vary between viewers.

Debug Setting Glossary
Debug Setting Units Description
CameraAngle Radians Camera Field-of-View angle, horizontal. Equivalent to Angle of View - width degrees to equate a real lens. This changes the visible FoV.
CameraDoFResScale Linear Amount to scale down resolution of DoF effect. Manipulating this value may change performance.
CameraFieldOfView Degrees Field-of-View angle used for the DoF effect. Note that this value is the height FoV, NOT width.
CameraFNumber F Stop F Stop (or Aperture) value to be simulated by DoF effect. This is the value you should change to adjust the intensity of the DoF effect.
CameraFocalLength mm Focal length of the lens to be simulated by the DoF effect.
CameraMaxCoF mm*1000 Lens Circle of Confusion value to be simulated by the DoF effect.
CameraFocusTransitionTime Seconds Time the camera will take to transition between 2 focal planes.
Essay.png
Editor note: The below settings assume that the screen is in the 16:9 aspect ratio - These values vary depending on aspect ratio, so if you have a screen of a different ratio, you may need to recalculate these values.
KBnote.png Note: To manipulate the intensity of the Depth-of-Field effect, change the aperture (F number) value. Common values are: 1.4, 2, 2.8, 4, 8, 12, 16, 20, 24
8 mm (Fisheye)  
Debug Setting Value
CameraAngle 2.306
CameraFieldOfView 103.4
CameraFocalLength 8
CameraMaxCoF 29.0
16 mm  
Debug Setting Value
CameraAngle 1.688
CameraFieldOfView 64.65
CameraFocalLength 16
CameraMaxCoF 29.0
24 mm  
Debug Setting Value
CameraAngle 1.287
CameraFieldOfView 45.75
CameraFocalLength 24
CameraMaxCoF 29.0
31 mm (SL Default)  
Debug Setting Value
CameraAngle 1.047
CameraFieldOfView 35.98
CameraFocalLength 31
CameraMaxCoF 29.0
50 mm  
Debug Setting Value
CameraAngle 0.691
CameraFieldOfView 22.9
CameraFocalLength 50
CameraMaxCoF 29.0
75 mm  
Debug Setting Value
CameraAngle 0.471
CameraFieldOfView 15.38
CameraFocalLength 75
CameraMaxCoF 29.0
100 mm  
Debug Setting Value
CameraAngle 0.350
CameraFieldOfView 11.56
CameraFocalLength 100
CameraMaxCoF 29.0
KBtrivia.png Did you know that you can leave DoF enabled for daily use? Try the settings given above for 31 mm, with an F-Stop (F number) value of 16.0.