LƧO.⠀⠀◯ᴥᗱᗴá—ᗩ옷ᔓᔕ◯✤ⓄⓄᴥ◯ᗱᗴ⚭ᑎá‘ᑕ◯ꕤ◯ᔓᔕᑎИNê–´á™â—¯Â·â—¯â“„✤◯á™á—©á‘ᑕꖴᴥ✤ᗱᗴá™äººá”“ᔕ◯·◯á™â“„á´¥â€â—¯á—ᗱᗴᴥᗱᗴᗯⓄá™â—¯â€â“„◯ᗱᗴᕤᕦИNᗩᴥ◯ᗱᗴᑎá™á—©Î›â—¯âŠšâ—¯Â·â—¯á”“á”•á‘ŽÐ˜Nê–´á™â—¯à´±â—¯á•¤á•¦â“„á™â—¯âŠšâ—¯á”“á”•á‘ŽÐ˜Nê–´á™â—¯Â·â—¯â €â €âµ™â €â €â—¯Â·â—¯á™ê–´Ð˜Nᑎᔓᔕ◯⊚◯á™â“„ᕤᕦ◯റ◯á™ê–´Ð˜Nᑎᔓᔕ◯·◯⊚◯Λᗩá™á‘Žá—±á—´â—¯á´¥á—©Ð˜Nᕤᕦᗱᗴ◯Ⓞâ€â—¯á™â“„ᗯᗱᗴᴥᗱᗴá—â—¯â€á´¥â“„á™â—¯Â·â—¯á”“ᔕ人á™á—±á—´âœ¤á´¥ê–´á‘á‘•á—©á™â—¯âœ¤â“„◯·◯á™ê–´Ð˜Nᑎᔓᔕ◯ꕤ◯á‘ᑕᑎ⚭ᗱᗴ◯ᴥⓄⓄ✤◯ᔓᔕ옷ᗩá—ᗱᗴᴥ◯⠀⠀.OSL 2.0KB

12345678910111213141516171819202122
  1. shader O_REDAHS_OITAR_GNICAF_TOOR_EBUC_X_SUNIM_1_OT_LACIRTEMYS_1_MORF_DEREWOL_FO_EGNAR_EULAV_1_SUNIM_IP_GOL_SUNIM_1_O_1_MINUS_LOG_PI_MINUS_1_VALUE_RANGE_OF_LOWERED_FROM_1_SYMETRICAL_TO_1_MINUS_X_CUBE_ROOT_FACING_RATIO_SHADER_O
  2. (
  3. float O_REDAHS_TNEIDARG_RAENIL_O_LINEAR_GRADIENT_SHADER_O = ( 1. - sqrt( 1.- pow( dot(N,I) , 2. ) ) ),
  4. float O_TNEMTSUJDA_SENTHGIRB_TOOR_EBUC_LACIRTEMYS_O_SYMETRICAL_CUBE_ROOT_BRIGHTNES_ADJUSTMENT_O = 0.,
  5. float O_SENTHGIRB_TOOR_EBUC_LACIRTEMYS_O_SYMETRICAL_CUBE_ROOT_BRIGHTNES_O=log( (4.*atan(1.))-(1.*(1.-O_TNEMTSUJDA_SENTHGIRB_TOOR_EBUC_LACIRTEMYS_O_SYMETRICAL_CUBE_ROOT_BRIGHTNES_ADJUSTMENT_O+0.)) ),
  6. output float O_REDAHS_O_SHADER_O = 0.0
  7. )
  8. {
  9. O_REDAHS_O_SHADER_O =
  10. (
  11. pow( (1.- pow(-(O_REDAHS_TNEIDARG_RAENIL_O_LINEAR_GRADIENT_SHADER_O-1.), 3. ) ) , pow(3.,-1.) )
  12. *
  13. (1.-O_SENTHGIRB_TOOR_EBUC_LACIRTEMYS_O_SYMETRICAL_CUBE_ROOT_BRIGHTNES_O)
  14. +1.
  15. -
  16. (1.-O_SENTHGIRB_TOOR_EBUC_LACIRTEMYS_O_SYMETRICAL_CUBE_ROOT_BRIGHTNES_O)
  17. )
  18. ;
  19. }