000
14.08.2002, 06:13
Gott
|
extern vec3_t v_angles; vec3_t forward,hudpunkt; pmtrace_t tr;
AngleVectors( sunangles, sundir, NULL, NULL );
AngleVectors(v_angles, forward, NULL, NULL); tr = *(gEngfuncs.PM_TraceLine( v_origin, v_origin + forward * 8192, PM_TRACELINE_PHYSENTSONLY, 2, PM_WORLD_ONLY )); char msgy[128]; sprintf(msgy,"x: %d - y: %d - z: %d\n", tr.endpos.x,tr.endpos.y,tr.endpos.z);
char msgx[128]; // sprintf(msgx,"The wall in front of you is %d units away\n", (tr.endpos - v_origin).Length());
if( gEngfuncs.PM_PointContents( tr.endpos, NULL ) == CONTENTS_SKY ) { vec3_t forward; AngleVectors( v_angles, forward, NULL, NULL );
sprintf(msgx,"Himmel");
} else { sprintf(msgx,"The wall in front of you is %d units away\n", tr.fraction);
}
gHUD.DrawHudString( 100, 16, ScreenWidth, msgx, 128, 64, 128); /*float trende[3], hpunkt[2]; trende[1] = tr.endpos.x; trende[2] = tr.endpos.y; trende[3] = tr.endpos.z; gEngfuncs.pTriAPI->WorldToScreen(trende,hpunkt);*/ gHUD.DrawHudString( 100, 64, ScreenWidth, msgy, 256, 128, 256);
jo also das hier ist mein code er geht auch in dem sinne das er mir sagt ob das fadenkreuz die himmeltextur zeigt oder nicht nur leider is tr.endpos völlig falsch er zeigt mir 10 stellige zahlen die plötzlich von minus nach plus springen usw. und ich hab kein plan wieso
--
millirem und bequerel , kleine kinder sterben schnell
Arsch für alles bei War in Europe www.warineuropemod.com
|
|
Profil || Suche
|
001
14.08.2002, 11:51
theDon
|
sieht so aus als ob die endposition ein vektor in der welt ist...
--
\o tanz den naziprau! o/
And more than ever, I hope to never fall, Where enough is not the same it was before
|
|
Profil || Suche
|
002
14.08.2002, 20:31
Killing Me Softly
|
Das Problem liegt nicht an tr.endpos sondern an deinem sprintf-Aufruf. sprintf reagiert etwas zickig, wenn man ihm ein float unterjubelt, wenn er ein int erwartet. Probier mal:
sprintf(msgy,"x: %d - y: %d - z: %d\n",(int)tr.endpos.x, (int)tr.endpos.y, (int)tr.endpos.z); oder sprintf(msgy,"x: %.0f - y: %.0f - z: %.0f\n",tr.endpos.x, tr.endpos.y, tr.endpos.z);
noch'n kleiner Tipp: der Aufruf
sprintf(msgx,"The wall in front of you is %d units away\n", tr.fraction);
ist auch nicht sehr sinnvoll. Richtiger wäre:
sprintf(msgx,"The wall in front of you is %d units away\n", (int)(tr.fraction*8192));
--
Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt.
|
|
Profil || Suche
|
003
15.08.2002, 00:03
Gott
|
ähm ja das fraction sollte da garnich eigelich hin hab nur da hingetan um zu sehn was bei trauskomt aber erstma danke ich werds direkt testen
--
millirem und bequerel , kleine kinder sterben schnell
Arsch für alles bei War in Europe www.warineuropemod.com
|
|
Profil || Suche
|
004
15.08.2002, 00:13
Gott
|
hey danke es hat massivst geholfen
--
millirem und bequerel , kleine kinder sterben schnell
Arsch für alles bei War in Europe www.warineuropemod.com
|
|
Profil || Suche
|