i am having the same troubles - the world collisions worked and entity collisions didnt until i fixed the GetHull functions. im gonna go try this hack, see how well it works :)
how succesful did this "hack" work for you Jim? omega, are jims findings ringing any bells?? jc ----- Original Message ----- From: "Jim Hunter" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, January 21, 2003 5:01 AM Subject: [hlcoders] Rescale clipping problems "solution" > This is a followup to my previous posts on the clipping problems > introduced by rescaling. I apologize for not replying to that > thread, but I've deleted the original message. I wanted to post > this to share the "solution" (more of a hack) that I found in case > anyone else is interested. > > It appears that the problems occur because of changing the mins > in GetHullBounds and HUD_GetHullBounds. When the mins are changed, > it causes an offset in any hull traces equal to the difference > of the new mins minus the original (-16, -16, -36) mins. My guess > is that the engine adds the original mins as a constant to the > start and end positions of the trace at some point (I would > appreciate it if someone from Valve could confirm this). My > "solution" was to change hlcsg so that the brush expansion for > making the clipping trees (if that's the correct term) compensates > for this. I changed the following code in Zoner's Half Life Tools' > hlcsg project, in hullfile.cpp, in the function LoadHullfile: > > Original code: > g_hull_size[i][0][0] = -x; > g_hull_size[i][0][1] = -y; > g_hull_size[i][0][2] = -z; > > g_hull_size[i][1][0] = x; > g_hull_size[i][1][1] = y; > g_hull_size[i][1][2] = z; > > Changed to: > // Hack to compensate for HL engine having problems with > // hull mins other than (-16, -16, -36) > // Yes, I know the math could be simplified, but it seemed > // clearer to me what the change was doing by leaving > // it like this. > g_hull_size[i][0][0] = -x - x - g_hull_size[i][0][0]; > g_hull_size[i][0][1] = -y - y - g_hull_size[i][0][1]; > g_hull_size[i][0][2] = -z - z - g_hull_size[i][0][2]; > > g_hull_size[i][1][0] = x + x + g_hull_size[i][0][0]; > g_hull_size[i][1][1] = y + y + g_hull_size[i][0][1]; > g_hull_size[i][1][2] = z + z + g_hull_size[i][0][2]; > > This change should still allow the program to work properly if > the original hull sizes are used, but will also allow the use of > a modified hull with correct clipping. > > Jim > > > _______________________________________________ > 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