000
18.09.2000, 13:31
BigDaddy
|
Erstmal eine Beschreibung der Situation: Ich habe für einen SP-Mod ein NVG geschrieben und den Code für den Flicker-Effekt und für die Batterie habe ich zum Teil aus Prefect's Tutorial übernommen. Dann habe ich mir überlegt, was für einen Effekt ich denn gerne hätte: 1. Es ist ein SP-Mod. Da kann ich auch ein DLight benutzen, da es ja keine anderen gibt, die das Licht sehen könnten. Da ich aber auch einen Multiplayer-Modus zwangsweise vorhanden habe, erstelle ich also Zwei Verschiedene Versionen des NVG's. Einmal Für SP das DLight und für MP das ELight von Prefect. Das ELight funktioniert, aber das DLight hat seine Macken. Also suchte ich mir aus dem Originalem SDK den Code für die Taschenlampe raus. Die benutzt einen Effekt (EF_DIMLIGHT). Ich habe also rumgesucht und einen passenden Effekt (mit einer Ausnahme) gefunden: EF_BRIGHTLIGHT. Er läuft automatisch mit dem Spieler mit und hellt alles auf. Was mir daran nicht gefällt? Zwei Dinge: 1. Das Lich ist zu hell und 2. hat es die falsche Farbe. Meine Frage also, an alle Erfahrenen Coder: Wie kann ich einen neuen Effekt erstellen, mit dem ich das EF_BRIGHTLIGHT nachahmen kann, aber mit grünem Licht und nicht ganz so hell?
--
|
|
Profil || Suche
|
001
18.09.2000, 15:45
The_Overmind
|
Hmm Ich benutz DLight als Mündungsblitz für meine Waffen, und das funkt ziemlich gut. Hier is ma der Code: VecSrc.x, y und z kriegst du über Vector vecSrc = m_pPlayer->GetGunPosition( );
MESSAGE_BEGIN( MSG_PVS, SVC_TEMPENTITY, vecSrc ); WRITE_BYTE( TE_DLIGHT );
WRITE_COORD( vecSrc.x ); // Position... WRITE_COORD( vecSrc.y ); WRITE_COORD( vecSrc.z ); WRITE_BYTE( 30 ); // Radius, in 10s (therefore, this is 300 units)
WRITE_BYTE( 0 ); // Color: red WRITE_BYTE( 255 ); // Color: green WRITE_BYTE( 0 ); // Color: blue
WRITE_BYTE( 0.1 ); // Life in seconds WRITE_BYTE( 10 ); // Decay rate
MESSAGE_END();
Das is der Code wie ich ihn benutz und der macht keine Schwierigkeiten Hoffe es hilft dir
-=[-XHP-]=-The Overmind
--
|
|
Profil || Suche
|
002
18.09.2000, 18:51
BigDaddy
|
Aber das Problem ist, wenn du ihn dauerhaft und ohne Unterbrechung benutzen willst. Es würde theoretisch auch reichen, wenn man mir sagt, wie ich ein DLight in der Client-DLL erstellen kann...
--
|
|
Profil || Suche
|