diff options
| author | Jørgen P. Tjernø <[email protected]> | 2013-12-02 19:31:46 -0800 |
|---|---|---|
| committer | Jørgen P. Tjernø <[email protected]> | 2013-12-02 19:46:31 -0800 |
| commit | f56bb35301836e56582a575a75864392a0177875 (patch) | |
| tree | de61ddd39de3e7df52759711950b4c288592f0dc /sp/src/raytrace/trace3.cpp | |
| parent | Mark some more files as text. (diff) | |
| download | source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.tar.xz source-sdk-2013-f56bb35301836e56582a575a75864392a0177875.zip | |
Fix line endings. WHAMMY.
Diffstat (limited to 'sp/src/raytrace/trace3.cpp')
| -rw-r--r-- | sp/src/raytrace/trace3.cpp | 254 |
1 files changed, 127 insertions, 127 deletions
diff --git a/sp/src/raytrace/trace3.cpp b/sp/src/raytrace/trace3.cpp index d8000c3d..b582347e 100644 --- a/sp/src/raytrace/trace3.cpp +++ b/sp/src/raytrace/trace3.cpp @@ -1,127 +1,127 @@ -//========= Copyright Valve Corporation, All rights reserved. ============//
-
-#include "raytrace.h"
-#include <bspfile.h>
-#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<face.numedges;v++)
- {
- printf("(%f %f %f) ",XYZ(VertCoord(face,v)));
- }
- printf("\n");
- int ntris=face.numedges-2;
- for(int tri=0;tri<ntris;tri++)
- {
-
- AddTriangle(id,VertCoord(face,0),VertCoord(face,(tri+1)%face.numedges),
- VertCoord(face,(tri+2)%face.numedges),Vector(1,1,1)); //colors[id % NELEMS(colors)]);
- }
-}
-
-void RayTracingEnvironment::InitializeFromLoadedBSP(void)
-{
-// CUtlVector<uint8> PlanesToSkip;
-// SidesToSkip.EnsureCapacity(numplanes);
-// for(int s=0;s<numplanes;s++)
-// SidesToSkip.AddToTail(0);
-// for(int b=0;b<numbrushes;b++)
-// if ((dbrushes[b].contents & MASK_OPAQUE)==0)
-// {
-// // transparent brush - mark all its sides as "do not process"
-// for(int s=0;s<dbrushes[b].numsides;s++)
-// {
-// PlanesToSkip[s+dbrushes[b].firstside]=1;
-// }
-
-// }
-// // now, add all origfaces, omitting those whose sides are the ones we marked previously
-// for(int c=0;c<numorigfaces;c++)
-// {
-// dface_t const &f=dorigfaces[c];
-// if (SidesToSkip[f.AddBSPFace(c,dorigfaces[c]);
-// }
-
-
-
-// // ugly - I want to traverse all the faces. but there is no way to get from a face back to it's
-// // original brush, and I need to get back to the face to the contents field of the brush. So I
-// // will create a temporary mapping from a "side" to its brush. I can get from the face to it
-// // side, which can get me back to its brush.
-
-// CUtlVector<uint8> OrigFaceVisited;
-// OrigFaceVisited.EnsureCapacity(numorigfaces);
-// int n_added=0;
-
-// for(int i=0;i<numorigfaces;i++)
-// OrigFaceVisited.AddToTail(0);
-
-// for(int l=0;l<numleafs;l++)
-// {
-// dleaf_t const &lf=dleafs[l];
-// // if (lf.contents & MASK_OPAQUE)
-// {
-// for(int f=0;f<lf.numleaffaces;f++);
-// {
-// dface_t const &face=dfaces[f+lf.firstleafface];
-// if (OrigFaceVisited[face.origFace]==0)
-// {
-// dface_t const &oface=dorigfaces[face.origFace];
-// OrigFaceVisited[face.origFace]=1;
-// n_added++;
-// AddBSPFace(face.origFace,oface);
-// }
-// }
-// }
-// }
-// printf("added %d of %d\n",n_added,numorigfaces);
-// for(int c=0;c<numorigfaces;c++)
-// {
-// dface_t const &f=dorigfaces[c];
-// AddBSPFace(c,dorigfaces[c]);
-// }
- for(int c=0;c<numfaces;c++)
- {
-// dface_t const &f=dfaces[c];
- AddBSPFace(c,dorigfaces[c]);
- }
-
-// AddTriangle(1234,Vector(51,145,-700),Vector(71,165,-700),Vector(51,165,-700),colors[5]);
-}
-
+//========= Copyright Valve Corporation, All rights reserved. ============// + +#include "raytrace.h" +#include <bspfile.h> +#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<face.numedges;v++) + { + printf("(%f %f %f) ",XYZ(VertCoord(face,v))); + } + printf("\n"); + int ntris=face.numedges-2; + for(int tri=0;tri<ntris;tri++) + { + + AddTriangle(id,VertCoord(face,0),VertCoord(face,(tri+1)%face.numedges), + VertCoord(face,(tri+2)%face.numedges),Vector(1,1,1)); //colors[id % NELEMS(colors)]); + } +} + +void RayTracingEnvironment::InitializeFromLoadedBSP(void) +{ +// CUtlVector<uint8> PlanesToSkip; +// SidesToSkip.EnsureCapacity(numplanes); +// for(int s=0;s<numplanes;s++) +// SidesToSkip.AddToTail(0); +// for(int b=0;b<numbrushes;b++) +// if ((dbrushes[b].contents & MASK_OPAQUE)==0) +// { +// // transparent brush - mark all its sides as "do not process" +// for(int s=0;s<dbrushes[b].numsides;s++) +// { +// PlanesToSkip[s+dbrushes[b].firstside]=1; +// } + +// } +// // now, add all origfaces, omitting those whose sides are the ones we marked previously +// for(int c=0;c<numorigfaces;c++) +// { +// dface_t const &f=dorigfaces[c]; +// if (SidesToSkip[f.AddBSPFace(c,dorigfaces[c]); +// } + + + +// // ugly - I want to traverse all the faces. but there is no way to get from a face back to it's +// // original brush, and I need to get back to the face to the contents field of the brush. So I +// // will create a temporary mapping from a "side" to its brush. I can get from the face to it +// // side, which can get me back to its brush. + +// CUtlVector<uint8> OrigFaceVisited; +// OrigFaceVisited.EnsureCapacity(numorigfaces); +// int n_added=0; + +// for(int i=0;i<numorigfaces;i++) +// OrigFaceVisited.AddToTail(0); + +// for(int l=0;l<numleafs;l++) +// { +// dleaf_t const &lf=dleafs[l]; +// // if (lf.contents & MASK_OPAQUE) +// { +// for(int f=0;f<lf.numleaffaces;f++); +// { +// dface_t const &face=dfaces[f+lf.firstleafface]; +// if (OrigFaceVisited[face.origFace]==0) +// { +// dface_t const &oface=dorigfaces[face.origFace]; +// OrigFaceVisited[face.origFace]=1; +// n_added++; +// AddBSPFace(face.origFace,oface); +// } +// } +// } +// } +// printf("added %d of %d\n",n_added,numorigfaces); +// for(int c=0;c<numorigfaces;c++) +// { +// dface_t const &f=dorigfaces[c]; +// AddBSPFace(c,dorigfaces[c]); +// } + for(int c=0;c<numfaces;c++) + { +// dface_t const &f=dfaces[c]; + AddBSPFace(c,dorigfaces[c]); + } + +// AddTriangle(1234,Vector(51,145,-700),Vector(71,165,-700),Vector(51,165,-700),colors[5]); +} + |