Trace Result - objaśnienie
Cypis'
28.05.2011
Witam, mógł by ktoś opisać za co każde z TraceResult odpowiada, co robi
enum TraceResult
{
TR_AllSolid, // int
TR_StartSolid, // int
TR_InOpen, // int
TR_InWater, // int
TR_flFraction, // float
TR_vecEndPos, // float array[3]
TR_flPlaneDist, // float
TR_vecPlaneNormal, // float array[3]
TR_pHit, // int (edict_t*)
TR_iHitgroup, // int
};
R3X
28.05.2011
Wiesz czym jest tracing tak?
Między dwoma punktami leci wirtualny punkt lub bryła, a te dane opisują ścieżkę. Jeśli na drodze trafi się solidna przeszkoda (taka, która powstrzymałaby gracza przed przejściem) to test się kończy.
Między dwoma punktami leci wirtualny punkt lub bryła, a te dane opisują ścieżkę. Jeśli na drodze trafi się solidna przeszkoda (taka, która powstrzymałaby gracza przed przejściem) to test się kończy.
enum TraceResult { TR_AllSolid, // czy cała ścieżka zawiera solidne (zajęte) miejsca (1) czy nie (0) TR_StartSolid, // czy w punkt startowy zawiera solidne (zajęte) miejsce (1) czy nie (0) TR_InOpen, // czy ścieżka jest w wolnej przestrzeni (?) TR_InWater, // czy ścieżka jest w wodzie (?) TR_flFraction, // ułamek wskazujący przebytą przez obiekt drogę: nie było przeszkód 1.0, w połowie drogi była ściana: 0.5 itd TR_vecEndPos, // punkt zatrzymania się obiektu (wyznacza zatem flFraction) TR_flPlaneDist, // nie wiem TR_vecPlaneNormal, // wektor prostopadły do płaszczyzny w endpos TR_pHit, // id napotkanego bytu TR_iHitgroup, // hitzone napotkanego bytu };
Cypis'
29.05.2011
Dziękuje oczywiście +
A tak na marginesie to powinien być jakiś poradnik na forum o TraceLine
A tak na marginesie to powinien być jakiś poradnik na forum o TraceLine