Talk:NPC Hull

From Valve Developer Community
Revision as of 11:53, 7 March 2008 by Beeswax (talk | contribs)
Jump to navigation Jump to search

Dimensional Data

This is more confusing than I expected!

From ai_hull.cpp I got this vector data, which i have tried to interpret into box dimensions. The first pair of coords seem likely to describe the collision hull, but the second set of coords ... ? :

Ground Nav              Collision Hull vectors          ? vectors                       Hull dimensions      ? dimesnsions
*  Tiny_Hull		(-12,-12,  0),	(12, 12, 24),	(-12,-12,  0),	(12, 12, 24) 	= 24 x 24 x 24	&/   24 x 24 x 24 
*  Human_Hull		(-13,-13,  0),	(13, 13, 72),	( -8, -8,  0),	( 8,  8, 72) 	= 26 x 26 x 72	&/   16 x 16 x 72 
*  Wide_Human_Hull	(-15,-15,  0),	(15, 15, 72),	(-10,-10,  0),	(10, 10, 72)  	= 30 x 30 x 72	&/   20 x 20 x 72 
*  Medium_Hull		(-16,-16,  0),	(16, 16, 64),	( -8, -8,  0),	( 8,  8, 64) 	= 32 x 32 x 64	&/   16 x 16 x 64
*  Medium_Tall_Hull	(-18,-18,  0),	(18, 18, 100),	(-12,-12,  0),	(12, 12, 100) 	= 36 x 36 x 100	&/   24 x 24 x 100
*  Wide_Short_Hull	(-35,-35,  0),	(35, 35, 32),	(-20,-20,  0),	(20, 20, 32)    = 70 x 70 x 32	&/   40 x 40 x 32
*  Large_Hull		(-40,-40,  0),	(40, 40, 100),	(-40,-40,  0),	(40, 40, 100) 	= 80 x 80 x 100	&/   80 x 80 x 100
Air Nav
*  Tiny_Centered_Hull	( -8, -8, -4),	( 8,  8,  4),	( -8, -8, -4),	( 8,  8,  4) 	= 16 x 16 x  8	&/   16 x 16 x  8 
*  Small_Centered_Hull	(-20,-20,-20),	(20, 20, 20),	(-12,-12,-12),	(12, 12, 12) 	= 40 x 40 x 40	&/   24 x 24 x 24 
*  Large_Centered_Hull	(-38,-38,-38),	(38, 38, 38),	(-30,-30,-30),	(30, 30, 30) 	= 76 x 76 x 76	&/   60 x 60 x 60 

note: all NPC Hulls have a square footprint with the origin at the centre = NPC's centre of horizontal rotation. (why not use a cylinder?)
note: Ground nav NPC Hulls tower above the origin, whereas Air-nav (_Centered_Hull) hull is half above and half below its origin.

Notice also that the min pathway for human_hull is 30 wide by 73 high, so there's some factor other than hull size involved. Even more bizarrely, npc_combine.cpp uses the human_hull, but it's min pathway is wider than other humans tested; 32 wide by 73 high. I'm thinking this is not a simple add 1 unit for friction factor ... ? --Beeswax 10:53, 7 Mar 2008 (PST)