From a0c29e7dd67abb15c74c85f07741784877edfdcd Mon Sep 17 00:00:00 2001 From: Joe Ludwig Date: Mon, 2 Sep 2013 11:39:10 -0700 Subject: General: * Fixed a variety of server browser issues with mods based on this SDK * Fixed many warnings on various platforms * Added source code for fgdlib and raytrace * Updated many source files with the latest shared source from TF2. OSX: * Added support for Xcode 4.6 * Switched OSX builds to use Xcode instead of makefiles * Moved libs from src/lib/osx32 to src/lib/public/osx32 or src/lib/common/osx32 to match windows better. Linux: * Moved libs from src/lib/linux32 to src/lib/public/linux32 or src/lib/common/linux32 to match windows better. --- mp/src/raytrace/trace3.cpp | 127 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 mp/src/raytrace/trace3.cpp (limited to 'mp/src/raytrace/trace3.cpp') diff --git a/mp/src/raytrace/trace3.cpp b/mp/src/raytrace/trace3.cpp new file mode 100644 index 00000000..d8000c3d --- /dev/null +++ b/mp/src/raytrace/trace3.cpp @@ -0,0 +1,127 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// + +#include "raytrace.h" +#include +#include "bsplib.h" + +static Vector VertCoord(dface_t const &f, int vnum) +{ + int eIndex = dsurfedges[f.firstedge+vnum]; + int point; + if( eIndex < 0 ) + { + point = dedges[-eIndex].v[1]; + } + else + { + point = dedges[eIndex].v[0]; + } + dvertex_t *v=dvertexes+point; + return Vector(v->point[0],v->point[1],v->point[2]); + +} + +Vector colors[]={ + Vector(0.5,0.5,1), + Vector(0.5,1,0.5), + Vector(0.5,1,1), + Vector(1,0.5,0.5), + Vector(1,0.5,1), + Vector(1,1,1)}; + +void RayTracingEnvironment::AddBSPFace(int id,dface_t const &face) +{ + if (face.dispinfo!=-1) // displacements must be dealt with elsewhere + return; + texinfo_t *tx =(face.texinfo>=0)?&(texinfo[face.texinfo]):0; +// if (tx && (tx->flags & (SURF_SKY|SURF_NODRAW))) +// return; + if (tx) + { + printf("id %d flags=%x\n",id,tx->flags); + } + printf("side: "); + for(int v=0;v PlanesToSkip; +// SidesToSkip.EnsureCapacity(numplanes); +// for(int s=0;s OrigFaceVisited; +// OrigFaceVisited.EnsureCapacity(numorigfaces); +// int n_added=0; + +// for(int i=0;i