I don´t know a method to specify a exact circle in the crosshairs.plist (or the hud.plist), but it ist possible to specifiy a polygon as an approximation. Here is a example of a crosshair with a 16-sided-figure:
I think a 16-sided-figure is "round enough" and a reasonable compromise between roundness and effort. Here is the code that specifies the crosshair you see in the picture above:
Code: Select all
WEAPON_MILITARY_LASER =
(
//Targetmarker
(0.75, -0.555, 0.555, 0.75, -0.280, 0.555),
(0.75, 0.280, 0.555, 0.75, 0.555, 0.555),
(0.75, -0.555, -0.555, 0.75, -0.280, -0.555),
(0.75, 0.280, -0.555, 0.75, 0.555, -0.555),
(0.75, -0.555, 0.555, 0.75, -0.555, 0.280),
(0.75, -0.555, -0.28, 0.75, -0.555, -0.555),
(0.75, 0.555, 0.555, 0.75, 0.555, 0.280),
(0.75, 0.555, -0.280, 0.75, 0.555, -0.555),
//Circle
(0.25, 0.000, 1.700, 0.25, -0.651, 1.571),
(0.25, -0.651, 1.571, 0.25, -1.202, 1.202),
(0.25, -1.202, 1.202, 0.25, -1.571, 0.651),
(0.25, -1.571, 0.651, 0.25, -1.700, 0.000),
(0.25, -1.700, 0.000, 0.25, -1.571, -0.651),
(0.25, -1.571, -0.651, 0.25, -1.202, -1.202),
(0.25, -1.202, -1.202, 0.25, -0.651, -1.571),
(0.25, -0.651, -1.571, 0.25, 0.000, -1.700),
(0.25, 0.000, -1.700, 0.25, 0.651, -1.571),
(0.25, 0.651, -1.571, 0.25, 1.202, -1.202),
(0.25, 1.202, -1.202, 0.25, 1.571, -0.651),
(0.25, 1.571, -0.651, 0.25, 1.700, 0.000),
(0.25, 1.700, 0.000, 0.25, 1.571, 0.651),
(0.25, 1.571, 0.651, 0.25, 1.202, 1.202),
(0.25, 1.202, 1.202, 0.25, 0.651, 1.571),
(0.25, 0.651, 1.571, 0.25, 0.000, 1.700),
//Guidelines
(0.25, 0.000, 9.000, 0.25, 0.000, 0.100),
(0.25, 0.000, -5.000, 0.25, 0.000, -0.100),
(0.25, 14.000, 0.000, 0.25, 0.100, 0.000),
(0.25, -14.000, 0.000, 0.25, -0.100, 0.000),
);
A easy way to get the coordinates of the 16-sided-figure is via Wings3D: Draw a polygon that has 16 corners and the radius you want to have. Wings3D shows you the exact cooridinates of a corner if you select the respective node. The rest is copy and paste.