From: spog Date: Mon, 31 Jul 2006 20:47:13 +0000 (+0000) Subject: added missing file X-Git-Tag: xonotic-v0.7.0~16^2~12^2~198 X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fnetradiant.git;a=commitdiff_plain;h=4e142f7d8761aa8506ba5efd6f8a270d4b7dcf6c added missing file git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@96 8a3a26a2-13c4-0310-b231-cf6edde360e5 --- diff --git a/setup/data/tools/gl/utils.cg b/setup/data/tools/gl/utils.cg new file mode 100644 index 00000000..63bfcb6c --- /dev/null +++ b/setup/data/tools/gl/utils.cg @@ -0,0 +1,36 @@ +/// ============================================================================ +/* +Copyright (C) 2004 Robert Beckebans +Please see the file "AUTHORS" for a list of contributors + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +*/ +/// ============================================================================ + +// fresnel approximation +float fast_fresnel(float3 I, float3 N, float3 fresnel_values) +{ + float power = fresnel_values.x; + float scale = fresnel_values.y; + float bias = fresnel_values.z; + + return bias + pow(1.0 - dot(I, N), power) * scale; +} + +float3 CG_Expand(float3 v) +{ + return (v - 0.5) * 2; // expand a range-compressed vector +}