Tosti Posted April 7, 2013 Share Posted April 7, 2013 Cześć, chciałem się spytać jak stworzyć coś takiego: http://puu.sh/2vQUn Jest jakaś funkcja na to, bo patrzyłem na wiki i nic nie znalazłem. Link to comment
dzek (varez) Posted April 8, 2013 Share Posted April 8, 2013 event onClientRender + funkcja getScreenFromWorldPosition no i rysujesz tekst w tamtym miejscu (skoro i tak używasz onClientRender to można do tego użyć dxDrawText zamiast labeli - są szybsze). wydawalo mi sie ze byla na to funkcja, ale na szybko nie znalazłem - możesz za to sam zapakować to w formie funkcji. oczywiście tekstu nie pokazuj jeżeli player jest zbyt daleko. najbardziej optymalnym rozwiazaniem jest utworzenie colShape'a, w momencie jak player w niego wlezie - dodać obsługę eventu onClientRender i rysować tekst - a gdy player wyjdzie z colShape'a - usunąć event onClientRender. mniej optymalnym (ale krótszym i łatwiejszym) rozwiązaniem jest po prostu zwykły if i getDistanceBetweenPoints3D już w funkcji obsługującej onClientRender - z tym, że jak w taki brzydki sposób będziesz pisał cały kod - to szybko serwer zacznie Ci "znikąd" zmulać. Link to comment
Wielebny Posted May 18, 2013 Share Posted May 18, 2013 W tym konkretnym przypadku nie jest używany żaden colshape, a lista elementów do wyświetlenia pobierana jest poprzez getElementsByType("tekst", root, true) - wtedy zwracane są tylko te w zasięgu streamingu. Tworzenie colshape nie nada się do tego zbytnio, gdyż po stronie klienta elementy nie są zaliczane do obrębu colshape dopóki się nie poruszą. Na community znajdziesz dziesiątki zasobów realizujących tą funkcjonalność, poszukaj pod hasłem text. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now