Just couldn't help but notice the warning on the message's subject. Think it
will keep some people from opening the E-Mail? :)
----- Original Message -----
From: "Tim Holt" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Tuesday, April 16, 2002 4:58 PM
Subject: Re: [hlcoders] HLVIS (Warning, technical details and code)


> --
> [ Picked text/plain from multipart/alternative ]
> Maybe if you incorporate mapster protocols in there too it will help? :^D
>
> http://countermap.counter-strike.net/Mapster
>
>
> Chris Blane wrote:
>
> >Had a feeling I might start seeing this topic crop up on the list
Zipster.
> >:) Still no luck with that last bug eh?
> >
> >:Tal-N
> >----- Original Message -----
> >From: Skyler York <[EMAIL PROTECTED]>
> >To: <[EMAIL PROTECTED]>
> >Sent: Tuesday, April 16, 2002 7:56 AM
> >Subject: [hlcoders] HLVIS (Warning, technical details and code)
> >
> >
> >>[ Converted text/html to text/plain ]
> >>I've been working on a few new features for HLVIS, and I have been
making
> >>
> >good
> >
> >>progess.  One of the features is a new maximum VIS option.  In addition
to
> >>being able to compile the map the first time around with this new
feature,
> >>
> >you
> >
> >>can chose to run a MaxDistVis on an already compiled map.
> >>
> >>This is my problem.  If you run a MaxDistVis during the initial compile,
> >>
> >the
> >
> >>the code flags the correct leafs to be invisible:
> >>
> >>------------------------------------------------
> >>// i = leafnum of first leaf, j = leafnum of second leaf
> >>offset_l = i >> 3;
> >>bit_l = (1 << (i & 7));
> >>offset_tl = j >> 3;
> >>bit_tl = (1 << (j & 7));
> >>
> >>for(k = 0; k < l->numportals; k++)
> >>{
> >>     for(m = 0; m < tl->numportals; m++)
> >>     {
> >>          l->portals[k]->mightsee[offset_tl] &= ~bit_tl;
> >>          tl->portals[m]->mightsee[offset_l] &= ~bit_l;
> >>     }
> >> }
> >>
> >>----------------------------------------------
> >>It basically eliminates leafs before they are even fully VISed.
> >>
> >>However, if you run a MaxDistVis on an already compiled map, for the
most
> >>part, the leafs rendered in game are correct, except for a few oddball
> >>
> >leafs
> >
> >>that aren't "unset" in the code for some unknown reason.  The detection
is
> >>
> >the
> >
> >>same, but it doesn't unset them.  What I have to do first is decompress
> >>
> >all
> >
> >>the vis information:
> >>-------------------------------------------------
> >>void   DecompressAll(void)
> >>{
> >>     int i;
> >>     byte *dest;
> >>     for(i = 0; i < g_portalleafs; i++)
> >>     {
> >>          dest = g_uncompressed + i * g_bitbytes;
> >>          DecompressVis((const unsigned char*)(g_dvisdata +
> >>
> >(byte)g_dleafs[i +
> >
> >>1].visofs), dest, g_bitbytes);
> >>     }
> >>}
> >>------------------------------------------------
> >>
> >>I use this code to "unset" leafs:
> >>-----------------------------------------------
> >>// i = leafnum of first leaf, j = leafnum of second leaf
> >>byte* base_vis_l = g_uncompressed + i * g_bitbytes;
> >>byte* base_vis_tl = g_uncompressed + j * g_bitbytes;
> >>offset_l = i >> 3;
> >>bit_l = (1 << (i & 7));
> >>offset_tl = j >> 3;
> >>bit_tl = (1 << (j & 7));
> >>base_vis_l[offset_tl] &= ~bit_tl;
> >>base_vis_tl[offset_l] &= ~bit_l;
> >>
> >>------------------------------------------------
> >>
> >>...and this code to recompress the vis info:
> >>------------------------------------------------
> >>void   CompressAll(void)
> >>{
> >>     int i, x = 0;
> >>     byte *dest;
> >>     byte *src;
> >>     byte compressed[MAX_MAP_LEAFS / 8];
> >>     vismap_p = vismap;
> >>
> >>     for(i = 0; i < g_portalleafs; i++)
> >>    {
> >>        memset(&compressed, 0, sizeof(compressed));
> >>        src = g_uncompressed + i * g_bitbytes;
> >>
> >>       // Compress all leafs into global compression buffer
> >>       x = CompressVis(src, g_bitbytes, compressed, sizeof(compressed));
> >>       dest = vismap_p;
> >>       vismap_p += x;
> >>       if (vismap_p > vismap_end)
> >>      {
> >>           Error("Vismap expansion overflow");
> >>       }
> >>
> >>       g_dleafs[i + 1].visofs = dest - vismap;            // leaf 0 is a
> >>common solid
> >>       memcpy(dest, compressed, x);
> >>     }
> >>}
> >>--------------------------------------------------
> >>
> >>It works at around a 90% - 95% success rate, but those oddball leafs
annoy
> >>
> >me.
> >
> >>Before I forget, here are some pics of what I mean.
> >>
> >>This is the map compiled normally:
> >>http://144.132.16.252/zipster/[2]mdv0.jpg
> >>
> >>This is the map compiled the first time around with a max distance of
128:
> >>http://144.132.16.252/zipster/[4]mdv1.jpg
> >>
> >>And here is a picture of the original map being MaxDistVis'd after a
> >>
> >regular
> >
> >>compile (w/ 128 limit):
> >>http://144.132.16.252/zipster/[6]mdv2.jpg
> >>
> >>As you can see, that blasted leaf in the distance is screwing me over!
I
> >>don't know how many of you know much about HLVIS procedures, but I hope
> >>
> >I've
> >
> >>given you enough information.  I would go into more detail, but there's
> >>
> >just
> >
> >>too much if you don't have an idea of what's happening.
> >>
>
>>--------------------------------------------------------------------------
> >>
> >----
> >
> >>MSN Photos is the easiest way to share and print your photos: Click
> >>
> >Here[7]
> >
> >>===References:===
> >>  1. http://144.132.16.252/zipster/mdv0.jpg
> >>  2. http://144.132.16.252/zipster/
> >>  3. http://144.132.16.252/zipster/mdv1.jpg
> >>  4. http://144.132.16.252/zipster/
> >>  5. http://144.132.16.252/zipster/mdv2.jpg
> >>  6. http://144.132.16.252/zipster/
> >>  7. http://g.msn.com/1HM505401/15
> >>
> >>_______________________________________________
> >>To unsubscribe, edit your list preferences, or view the list archives,
> >>
> >please visit:
> >
> >>http://list.valvesoftware.com/mailman/listinfo/hlcoders
> >>
> >>
> >
> >_______________________________________________
> >To unsubscribe, edit your list preferences, or view the list archives,
please visit:
> >http://list.valvesoftware.com/mailman/listinfo/hlcoders
> >
>
> --
> I think...I think it's in my basement. Let me go upstairs and check. -M.C.
Escher
>
>
> --
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>
>

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to