Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
22.11.2001, 19:19
M0n60



Uhm also ich möchte auf dem Hud ein Quadrat um ein Entity zeichnen, so im DeusEx Stil, und muss dafür natürlich seine Größe bzw. seinen Umfang, gesehen aus vom HUD/Player, bestimmen... Öhm also wenn hier wer darauf ne(n) Lösung(sansatz) hätte, bidde posten :)
thx im Vorraus :D

-Merlin

--

zum Seitenanfang zum Seitenende Profil || Suche
001
22.11.2001, 20:05
thinktank



Ich denke, dass es reichen würde jedem Entity einen Umfang (bzw. Seitenlänge wäre sinnvoller) zuzuweisen. Leider weiß ich nicht mehr genau, wie das bei deusex ist, wird das quadrat erst gezeichnet, wenn man drauf zeigt ? Weil dann könnte man das ja ganz einfach per bool-Schalter machen :).

--

zum Seitenanfang zum Seitenende Profil || Suche
002
22.11.2001, 20:14
M0n60



Nee das hab ich mir schon überlegt, aber das war für solid entitys gedacht (auch items), die (stark vereinfacht) quaderform haben, da geht das nicht von allen perspektiven... in deusex wirds erst gezeichnet wenn man draufzeigt, das ist aber auch nicht das problem, halt nur den umfang perspektivisch(!) zu berechnen... trotzdem thx :)

-Merlin

--

zum Seitenanfang zum Seitenende Profil || Suche
003
22.11.2001, 21:00
Archangel



hmm, da gibts die vectors mins und maxs (members von struct entvars_s)
kA wie das genau definiert is, aber mins enthält beispielsweise
x-, y-, z-coordinate der unteren hinteren linken ecke, maxs dann zB die
x-, y-, z-coordinate der oberen vorderen rechten ecke

hmm, war das jetzt verständlich?
[edit]
ach so, du willst das clientside...
hm, guck mal ob die struct cl_entity_s auch sowas enthält, wenn nein...
die cl_entity_s müsste auch irgendwas von wegen model (struct model_s) enthalten, und struct model_s enthält ganz sicher mins und maxs

--

Mar 01 01:10:13 <voice> jo
Mar 01 01:10:40 <voice> bis dann ^^
Mar 01 01:11:20 <Archangel> jo
**** ENDING LOGGING AT Tue Mar 1 01:58:13 2005


Dieser Beitrag wurde am 22.11.2001 um 21:03 von Archangel bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
004
23.11.2001, 11:22
M0n60



Ok thanks, ich glaub damit könnt ich das hinkriegen...
Das soll jedoch niemanden davon abhalten weitere Ideen zu posten :)

-Merlin

--

zum Seitenanfang zum Seitenende Profil || Suche
005
23.11.2001, 13:50
Rockefeller



Die mins und maxs gibbet auch clientside (wär ja auch komisch wenn nich alleine wegen der kollisions prediction).

Zusammen mit dem Origin kannst du dann alle Ecken berechnen und den Rest würd ich dann mit TriAPI machen, dann brauchst du dich nicht um irgentwelche Perspektiven etc zu kümmern.

--

zum Seitenanfang zum Seitenende Profil || Suche
006
23.11.2001, 13:56
M0n60



Wieso mit dem TriAPI? Ich bin Coding N00b muss ich zugeben aber ich dachte immer das TriAPI erzeugt nur Triangles im 3D Space/auf der map halt und nicht im HUD, denn ich brauch ja Linien (für'n Rechteck) auf dem HUD, das Item/Entity soll nich wie Diablo aufleuchten oder so, sonst könnt' ich mir den ganzen Umfangberechnuns Kram ja auch sparen...
Wenn ich mich irre bitte korrigier'(/t) mich.

-Merlin

--

zum Seitenanfang zum Seitenende Profil || Suche
007
23.11.2001, 19:17
M0n60



Hmmmm also ich bin eigentlich mit dem wichtigen Code hierfür fertig, allerdings muss ich jetzt noch wissen, wie ich, wenn ich die Koordinaten eines jeden Eckpunktes der Hull des Entitys habe, diese Koordinaten in/auf das HUD-Koordinatensystem konvertiere/projeziere. Pleeeez hlp

-Merlin

--

zum Seitenanfang zum Seitenende Profil || Suche
008
25.11.2001, 22:03
Rockefeller



Ach ich dachte du wolltest 3dimensional um die Entity Linien zeichnen...

Also wie du das jetzt machst weiss ich auch nicht genau, ich würde einfach mal ein bisschen mit den Winkel herumexperimentiern, z.B. so was in der Art:

pPlayer->angles - pEnt->angles

und das dann versuchen in Hug-Koordinaten umzurechnen...

--

zum Seitenanfang zum Seitenende Profil || Suche
009
29.11.2001, 16:08
static_caster



ach, jetzt seh ich das erst.
hi mongo.

also, wir haben uns das ganze so gedacht, daß wir eine kleine vektorenrechnung aufstellen, das HUD als schiefe ebene im raum ansehen, und vom origin eines objektes aus eine normale die ebene durchstoßen lassen.

dat mathe-zeugs hab ich soweit fertig.

nur eins is da noch wichtig.

ich brauche einen richtungsvektor des spielers, der (senkrecht zur HUD-Ebene steht, also ins lvl rein zeigt) eben die blickrichtung des spielers angibt. den brauch ich nämlich, um überhaupt ne normale aufstellen zu können, und um dann diese normale die ebene durchstoßen zu lassen.

--

zum Seitenanfang zum Seitenende Profil || Suche
010
29.11.2001, 18:19
R2-D2



nimm doch einfach ne traceline ?

--

®2-D2
Believe in Retrieve :)

Projects:
Monkey-Strike (Leader/Coder)
Water Wars (Head Coder)
Mixed Mod (Coder)

zum Seitenanfang zum Seitenende Profil || Suche
011
29.11.2001, 20:21
M0n60



oops sorry ulli bzw s_c, hab net mehr in meinen thread reingeschaut, sorry. Diese Traceline hab ich dir doch schon gegeben, die trace funktion benutze ich doch schon in dem code den ich dir gab, die geht nämlich nicht vom player origin los sondern von einer um 64 einheiten nach oben verschobenen Position (und das ist der mittelpunkt des huds).

[mein code zum vorraus-tracen um 500 einheiten]
UTIL_MakeVectors(pev->v_angle);
UTIL_TraceLine(pev->origin + pev->view_ofs,pev->origin + pev->view_ofs + gpGlobals->v_forward * 500,dont_ignore_monsters, edict(), &tr );

UTIL_MakeVectors(pev->v_angle); // weiß nich ob das noch nötig ist
pev->origin + pev->view_ofs // mittelpunkt des huds
gpGlobals->v_forward // sollte eigentlich der richtungsvektor des spielers sein

--

zum Seitenanfang zum Seitenende Profil || Suche
012
29.11.2001, 20:57
static_caster



hm, wieso traced du 500 einheiten weit? reicht eigentlich 1, da wirds mit dem rechnen etwas leichter :-)

--

zum Seitenanfang zum Seitenende Profil || Suche
013
29.11.2001, 21:04
M0n60



ich trace 500 einheiten weit weil ich wissen will was ein bisschen entfernt (ok vielleicht nich 500 sondern besser 200-300 oder so) vorm player ist, sonst krieg ich doch garnix als ergebnis von dem trace (das ganze is unter anderem für meine upgedatete playeruse() )
und du meintest ja du brauchst bloß den richtungsvektor, da unten issa ja
[edit] uhm, also gpGlobals->v_forward.z ist oben und unten, .x und .y hängen irgendwie leider auch etwas mit oben und unten zusammen, und nicht nur für links/rechts, und weiß auch nicht genau wie :(
[/edit]

--


Dieser Beitrag wurde am 29.11.2001 um 21:09 von M0n60 bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche