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



nun ich kann das spieler model unsichtbar machen, doch wie siehts mit dem waffenmodel aus, wo muss ich da rumfummeln ?

THX im vorraus

--

zum Seitenanfang zum Seitenende Profil || Suche
001
26.08.2001, 01:47
RirA



Das musst du in der client machen, server geht das nicht, oder eben kaum.
Kannst ja mal another2 fragen :D !

--

zum Seitenanfang zum Seitenende Profil || Suche
002
26.08.2001, 02:24
Another1



uhm?
(clientside musst du da rumfummeln, gEngfuncs.GetViewModel() heißt die nette function)

--

Another1

...relaxing..atm =)
... und Schweiz suckt!

zum Seitenanfang zum Seitenende Profil || Suche
003
26.08.2001, 11:37
RirA



jo ich habs in sven coop gesehn...

--

zum Seitenanfang zum Seitenende Profil || Suche
004
26.08.2001, 13:09
McMapper



BEGIN_READ( pbuf, iSize);
int m_iOn = READ_BYTE();
cl_entity_t *view = gEngfuncs.GetViewModel();
if (m_iOn)
{
view->curstate.renderamt = 20;
view->curstate.rendermode = kRenderTransAlpha;
}
else
{
view->curstate.renderamt = 255;
}
return 1;

das ist mein code nun funzt das aber net so recht, denn die hand wird net durchsichtig, anscheinend kann ich hier nicht die gleichen sachen wie beim playermodel verwenden. irgendwelche ideen ?

--

zum Seitenanfang zum Seitenende Profil || Suche
005
26.08.2001, 15:52
RirA



da muss man einiges mehr machen!
es gibt da aber ein tut...irgendwo:)

--

zum Seitenanfang zum Seitenende Profil || Suche
006
26.08.2001, 16:18
McMapper



schon klar aber das ist ja der teil der die message ausliest ;) es geht mir ja mehr um
view->curstate.renderamt = 20;
view->curstate.rendermode = kRenderTransAlpha;

denn die bewirken nichts

aber dass ich mehr machen muss weiss ich schon ;) (das hab ich auch gemacht *gg*)

--

zum Seitenanfang zum Seitenende Profil || Suche
007
26.08.2001, 16:37
TheTinySteini



Sehr wahrscheinlich musste das in jedem Frame machen. Oder probier's mal mit baseline statt curstate (oder beides =)

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche
008
30.08.2001, 14:35
McMapper



Bei jedem Frame ? Nun man merke, ich bin n00b also WIE bei jedem frame ? ne schleife ? bitte HILFE und wie immer DAnke im vorraus

--

zum Seitenanfang zum Seitenende Profil || Suche
009
30.08.2001, 20:29
DBug



Ich bin da auch noch newbie, aber vielleicht mit SetThinlk oder so ?! Das ist zwar nicht bei jedem frame, aber du kannst die Zeit bis zum nächsten Think glaub ich selbstbestimmen...

Aber mit ner Schleife wirds wohl nichts *g*... Wann soll dann da der Rest des HL-codes aufgerufen werden ?!?!?!

--

zum Seitenanfang zum Seitenende Profil || Suche
010
01.09.2001, 00:19
McMapper



danke mal an alle die sich was überlegt haben ! bin immer noch für jede idee dankebar

--

zum Seitenanfang zum Seitenende Profil || Suche
011
01.09.2001, 19:26
McMapper



Also ich will nicht dass dieser thread untergeht ich weiss immer noch nicht wie ich das bei jedem frame machen soll!

--

zum Seitenanfang zum Seitenende Profil || Suche
012
01.09.2001, 20:46
Prefect



Die Think()-Funktion von deinem HUD-Element wär doch was, oder?

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
013
01.09.2001, 21:28
McMapper



scho klar aber was da reinpacken ?

--

zum Seitenanfang zum Seitenende Profil || Suche
014
01.09.2001, 22:19
McMapper



also nochmal das ist meine message:
Quellcode:
int CHud :: MsgFunc_GlowShell(const char *pszName,int iSize,void *pbuf)
{
BEGIN_READ( pbuf, iSize);
int m_iOn = READ_BYTE();
cl_entity_t *view = gEngfuncs.GetViewModel();
if (m_iOn)
{
view->curstate.renderamt = 20;
view->curstate.rendermode = kRenderTransAlpha;
view->baseline.renderamt = 20;
view->baseline.rendermode = kRenderTransAlpha;
}
else
{
view->curstate.renderamt = 255;
}
return 1;
}

nun will ich das aber in der
Quellcode:
CHud::Think

unterbringen damits bei jedem Frame gemacht wird ? THX im vorraus

--

zum Seitenanfang zum Seitenende Profil || Suche
015
01.09.2001, 22:35
Retro



lol sachmal... gehts noch?!

Wenn du das in der CHud::Think haben willst, dann kopier es dahin...

Also sowas gabs ja wohl noch nie... *lol*

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */

zum Seitenanfang zum Seitenende Profil || Suche
016
01.09.2001, 22:36
McMapper



was dahinkopiern darum gehts ja was genau irgendwie seh ich den wald vor lauter bäumen nicht mehr!

--

zum Seitenanfang zum Seitenende Profil || Suche
017
01.09.2001, 22:43
Retro



Boa sachmal?! Ganz sicher das du kein Fieber hast? *lol*

Wie währe es damit:Quellcode:
BEGIN_READ( pbuf, iSize);
int m_iOn = READ_BYTE();
cl_entity_t *view = gEngfuncs.GetViewModel();
if (m_iOn)
{
view->curstate.renderamt = 20;
view->curstate.rendermode = kRenderTransAlpha;
view->baseline.renderamt = 20;
view->baseline.rendermode = kRenderTransAlpha;
}
else
{
view->curstate.renderamt = 255;
}
return 1;

Mit den return 1 gibts probs, aber das kannste ja wohl noch selber ändern!

Ach nee, doch nicht. Da wird ja ne Msg abgefangen... dann guck dir doch einfach mal an, wie die Msg abgefangen wird, wenn du eine Waffe aufgesammelt hast!

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */


Dieser Beitrag wurde am 01.09.2001 um 22:44 von Retro bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
018
02.09.2001, 10:00
McMapper



aaaalso ich gestern im irc thevoice fast zur verzweiflung getrieben aber wir kamen vorwärts :
Der code meiner message hab ich so verändert dass er nur noch m_iOn 1 und o setzt und in der hud_redraw.cpp in der Think habe ich :
Quellcode:
cl_entity_t *view = gEngfuncs.GetViewModel();
if (m_iOn)
{
view->curstate.renderamt = 20;
        view->curstate.rendermode = kRenderTransAlpha;
view->baseline.renderamt = 20;
view->baseline.rendermode = kRenderTransAlpha;
}
    else
{
view->curstate.renderamt = 255;
}

nur nix passiert, wir haben auch getestet ob m_iOn gesetzt wird und das wird es.
thx im vorraus!

--

zum Seitenanfang zum Seitenende Profil || Suche
019
02.09.2001, 18:22
Prefect



Es gibt außer curstate und baseline noch einen Zustand... der Name will mir gerade nicht mehr einfallen, aber den mußt du vielleicht setzen. Schau einfach in die Deklaration von cl_entity_t.

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
020
02.09.2001, 19:04
McMapper



der zustand ist prevstate hat aber nichts gebracht.

danke trotzdem!

--

zum Seitenanfang zum Seitenende Profil || Suche
021
03.09.2001, 18:50
Prefect



Vielleicht mußt du den Zustand aber auch zu einem anderen Zeitpunkt ändern. Ich könnte mir gut vorstellen, dass die HL-Client-Mainloop so aussieht (wahrscheinlich könnte man das nun im Q1-Quellcode nachschauen ;)):

- Input und Netzwerk abfragen
- Entity-Positionen updaten (und Prediction)
- Rendering
- HUD_Draw

Wenn dem so wäre, dann würdest du den Entitystate ja erst überschreiben, _nachdem_ die Entity gerendert wird, und damit werden deine Änderungen im nächsten Frame sofort überschrieben. Verschieb deinen Code mal nach HUD_TxferPlayerState (oder so ähnlich) in entity.cpp.

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche
022
03.09.2001, 21:00
DBug



Aber müsste nicht wenn dem so wäre das ganze zwar nicht im selben frame, aber jeweils um einen verschoben angezeigt werden ?

--

zum Seitenanfang zum Seitenende Profil || Suche
023
03.09.2001, 21:54
thinktank



Funzt ned, hab ich auch schon probiert ........ :( .....
Also in HUD_ProcessPlayerState(...)

--

zum Seitenanfang zum Seitenende Profil || Suche
024
04.09.2001, 21:05
Prefect



DBug nein, denn die Daten werden ja bei der Prediction überschrieben.

thinktank: na dann halt weiter probieren :) Irgendwo wirds schon richtig sein. Eigentlich wäre es in view.cpp auch ganz angebracht. Leider kann man das nicht wirklich wissen, dazu bräuchte man die Engine...

cu,
Prefect

--

Widelands - Gemütliche Aufbaustrategie, Free Software
Noch ein Blog - Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.

zum Seitenanfang zum Seitenende Profil || Suche