Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
125
19.05.2002, 16:50
theDon



ja suchen wir ;)
zumindest bis newbz uns zeigt wies besser geht ;)

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
126
19.05.2002, 18:35
NewbZ



also wetten das a1 sein spiegel nicht alles spiegelt!
Sonst würde er längst bei Gearbox oder soetwas arbeiten
Und dort ist der Unterschied
Mein Spiegel spiegelt alles was man sehen kann
also was der Player Sieht!*stolzdraufsei*
Und "der Bug beim Spiegel in Spiegel besteht darain, dass er das unendlich mal spielgelt wird" wirklich so :(
auch wenn man den bug beheben kann

Und noch was :
Also ich verstehe nicht warum ihr euch solche umstände macht ! :( ?
Man muss über haupt net coden das sich etwas Spiegelt
eher ein wenig an der Sicht des Players
D.h. man brauch NICHT die Entitys Kopieren!
Man kann es wesendlich leichter machen
Ich habe meinen Code nochmal überarbeitet
weil sich vorher keine PartikelSysteme Spiegelten
Ich habe den Code komplett neu Gecodet
Aber ich darf kein Tutorial rausbringen :(
Weil der leader meiner Mod dagegen wäre und dann hätte es ja auch jeder
Aber ich bringe dann halt was raus wie man schatten macht
Und ich poste das ganze zeug nur damit ihr eueren Kopf einschaltet und endlich auch mal wieder ein parr RICHTIG FETTE sachen codet und nicht mit einer neuen Engine anfängt ;)

Bye

--


Dieser Beitrag wurde am 19.05.2002 um 18:45 von NewbZ bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
127
19.05.2002, 22:09
anothergb02



Ach jaaaa
Habe das noch nicht überprüft und glaube auch nicht wirklich, dass das so funktioniert, aber hier habt
ihr erstmal einen Lösungsvorschlag:

// Die Funktion bitte im übertragenen Sinner interprtieren, da
ich schon lange nicht mehr für hl programmiert habe und die Clientvariablen ... schon vergessen habe

// 100 pro geht das noch viel einfacher über richtig 3D Vector Funktion aber naja ...
// außerdem besteht eine große Wahrscheinlichkeit, dass zwischendurch auch nochmal
// son paar kleine Richtungsfeheler sind ...

Vector GetMirrorPos(Vector vecObject, entity_t *pMirrow)
{
Vector origin = pentity->origin;
Vector size = pentity->sizemax;

Vector vforward = Vector(0,0,0);
Vector vright = Vector(0,0,0);
Vector vback = Vector(0,0,0);

VectorAngle(pMirrow->angles, vforward, vright, vup);

Vector pos1 = origin - (size.x * vright) + (size.y * vforward);
Vector pos2 = origin - (size.x * vright) - (size.y * vforward);
Vector pos3 = origin + (size.x * vright) - (size.y * vforward);

float flabslengthxx = (pos1 - vecObject).Length() + (pos2 - vecObject).Length();
float flabslengthyy = (pos3 - vecObject).Length() + (pos2 - vecObject).Length();

float dist12 = (pos1-pos2).Length();
float dist23 = (pos2-pos3).Length();

float dist1or = (pos1 - vecObject).Length();
float dist2or = (pos2 - vecObject).Length();
float dist3or = (pos3 - vecObject).Length();

float ry = ((dist2or*(dist12/flabslengthxx))/(dist1or*(dist12/flabslengthxx))*dist12); // forward
float rx = ((dist2or*(dist23/flabslengthyy))/(dist3or*(dist23/flabslengthyy))*dist23); // right

Vector tresult = pos2 + (vforward*ry) + (vright*rx);

VectorAngle((vecObject - tresult), vforward, vright, vup);

return vecObject + (tresult-vecObject).Length()*2*vforward;
}
[! copyright by agb :P !]

@NewbZ
Es gibt soo viele Möglichkeiten einen Spiegel zu machen und ich schätze mal, dass die Meisten sich für Entitykopieren entschieden haben, weil man nicht mehr ganz so einfach auf die einzelnen Vertexe in HL zugreifen kann ...
Oder du machst das ganze alla Voxel ... in dem du den Spiegel als Pixelrepruduktion benutze, ich glauben, dass die das so in Maxpayne gemacht haben, wenn ich micht recht entsinnen kann oder war das in Hitman naja auf jeden fall waren da die Spiegelbilder total verpixelt.

--

Being in john Malkovich
.....

zum Seitenanfang zum Seitenende Profil || Suche
128
19.05.2002, 22:24
[RMen]OneStone



Sorry für ne dumme Frage, aber was ist/sind Voxel?

--

georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/

zum Seitenanfang zum Seitenende Profil || Suche
129
19.05.2002, 22:39
theDon



kennich nur von den fahrzeugen aus c&c 3 das sind welche

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
130
19.05.2002, 22:57
[RMen]OneStone



Also Voxel = Vehicel = Fahrzeug? Glaub ich irgendwie nicht. >:|
Weiter Lösungsvorschläge? =)

--

georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/

zum Seitenanfang zum Seitenende Profil || Suche
131
19.05.2002, 23:33
theDon



nein voxel sind 3d objekte...und bei c&c3 sind halt die fahrzeuge voxels

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
132
19.05.2002, 23:39
anothergb02



Kennt ihr kein outcast .... da wurde voxeltechnik benutzt ..

--

Being in john Malkovich
.....

zum Seitenanfang zum Seitenende Profil || Suche
133
19.05.2002, 23:43
anothergb02



Die Funktion soll dir die Spiegelposition von dem Entity wiedergeben ... -> egal wie die Spiegelfläche gedreht ist

--

Being in john Malkovich
.....

zum Seitenanfang zum Seitenende Profil || Suche
134
20.05.2002, 01:29
NewbZ



was auch immer die wohl beste version von spiegeln ist
aber es ist auf jeden fall möglich
Wir werden Spiegel in Dark-Force einbauen ;) (soviel ich weis, wollen wirs mal hoffen)
Dann könnt ihr euch selbst überzeugen

--

zum Seitenanfang zum Seitenende Profil || Suche
135
20.05.2002, 02:58
theDon



hm...dark force gibts schon...meisnt sicher dark-zone

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
136
20.05.2002, 09:27
NewbZ



MoM Ich schau mal nach
Ohh sorry du hast recht
ich meine dark zone (ich habs auch noch in der Sig stehen und weis es net :()

--

zum Seitenanfang zum Seitenende Profil || Suche
137
20.05.2002, 14:10
theDon



;) naja darkforce ist so buggy das man ohne cheats nicht durch kommt...
man muss z.b. durch einen lüftungsschacht der zu niedrig ist etc

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
138
20.05.2002, 14:30
theDon



so um zum pip zurückzukommen: schonmal sowas gesehn ???
schaut euch mal VCalcSpectatorRefDef an da is der Code für den pip mode von cs14...sogar mit kommentaren ;)

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
139
20.05.2002, 14:45
TheTinySteini



Naja, HL-TV Spectator-Mode halt. Ganz witzig... aber mehr Spielerei als irgendwas anderes.

--

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

zum Seitenanfang zum Seitenende Profil || Suche
140
20.05.2002, 15:17
theDon



ja aber damit kann man nunmal ein pip basteln...

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
141
21.05.2002, 18:05
theDon



ok ich habs...ein "rückspiegel" (pip)
einfach in V_CalcNormalRefDef dashier
Quellcode:
    //if( bIsMultiplayer())
    //{
    if ( pparams->nextView == 0 )
    {
        // first renderer cycle
        pparams->onlyClientDraw = false;
        pparams->nextView = 1;    // force a second renderer view


    }
    else
    {
        // second renderer cycle

        // set inset parameters
        pparams->viewport[0] = XRES(4);    // change viewport to inset window
        pparams->viewport[1] = YRES(4);
        pparams->viewport[2] = XRES(200);
        pparams->viewport[3] = YRES(125);
        pparams->nextView     = 0;    // on further view
        pparams->onlyClientDraw = false;
        pparams->viewangles[0] *= -1;
        pparams->viewangles[1] -= 180;
        pparams->viewangles[2] *= -1;
    }
    //}

vor demhier
Quellcode:
lasttime = pparams->time;

v_origin = pparams->vieworg;

}

(sind die letzten zeilen)
einfügen

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
142
21.05.2002, 20:39
TheTinySteini



Jo... hehe, die viewports sind witzig, sowas in der Art hab ich auch mal gebastelt.

--

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

zum Seitenanfang zum Seitenende Profil || Suche
143
21.05.2002, 20:44
theDon



ja...das is ja auch das eigentliche thema ;) aber ich glaube auf die weise kann man auch spiegel basteln (mehr sage ich nicht)

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
144
21.05.2002, 20:52
TheTinySteini



Hab ich mir auch schon überlegt... aber müsste man dazu nicht den Viewport praktisch an eine Wand anpassen? Hm... nen Test wär's wert.

Allerdings, ist dein Rückspiegel eigentlich auch spiegelverkehrt? Oder eben bloß die Ansicht um 180° gedreht. Es muss ja eigentlich auch alles was man in der richtigen Ansicht links sieht auch im Spiegel links erscheinen - nicht rechts, wie's bei 180° wäre.

--

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

zum Seitenanfang zum Seitenende Profil || Suche
145
21.05.2002, 22:37
theDon



ah nagut ;)
aber ich arbeite dran

--

\o tanz den naziprau! o/

And more than ever, I hope to never fall,
Where enough is not the same it was before

zum Seitenanfang zum Seitenende Profil || Suche
146
22.05.2002, 10:32
Creeper



hm, naja bei meinen spiegeln ist ja alles wie in real, und wenn ich das mit so einem viewport mache, müsste es perfekt sein, also mal probieren.

@Newbz: Partikel und Decals sind doch kein prob. Einfach von decaleinschuss zum spiegel tracen, in umgekehrter richtung vom spiegel nochmal tracen und dort ein Decal setzen und tada hast du dein Einschussloch gespiegelt.

--

Head Coder:Sudden-Impact

Listen to CKY you fuCKYrs http://www.ckymusic.com

zum Seitenanfang zum Seitenende Profil || Suche
147
22.05.2002, 13:16
TheTinySteini



Btw: Traceline is schlecht... kann Probs geben, wenn man zum beispiel auf ner kleinen Treppe steht, aber noch im Bereich des Spiegels. Dann wird man an der Treppenstufe gespiegelt, o_O.
Man könnte glaub ich folgendes machen (Vektorrechnung rauskram...):

Quellcode:v_dist = mirror->origin - entity->origin;
if( v_dist.Length() < MIRROR_DIST )
{
    fldist = DotProduct( v_dist, mirror->normal );
    newentitypos = entity->origin + 2 * fldist * mirror->normal;
}

Hm, könnte gehen. Bin mir aber net sicher. Wär vielleicht für ein Extra an Geschwindigkeit sinnvoll, ne Length()-Funktion zu machen, die keine Wurzel zieht und dann einfach mit sqr(MIRROR_DIST) vergleichen. Wurzelziehen (Wurzel rein... Wurzel raus) ist bekanntlich langsam.
mirror->normal müsste dann die Spiegelausrichtung sein, die Normale der Spiegelebene halt - und als Einheitsvektor.

--

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

zum Seitenanfang zum Seitenende Profil || Suche
148
22.05.2002, 19:48
NewbZ



Ja aber das ist die schwierigere art
Und sie ist noch viel länger zu coden und an code
ihr müsst garnichts kopieren
sondern geschickt sein nicht kopieren sondern mit der sicht des players spielen
wisst ih was ich mein?

--

zum Seitenanfang zum Seitenende Profil || Suche
149
22.05.2002, 20:02
TheTinySteini



Kopieren muss man bei mir auch nix... naja, doch, für die Decals halt.
Aber ich kapier nicht, wie das mit der Spielersicht gehen soll. Du musst also die Spielersicht aus ner anderen Perspektive berechnen. Aber dann musst du die ja noch irgendwie mit der ursprünglichen Sicht überlagern?!?
Sowas könnte man vielleicht mit Viewports machen, aber hört sich gewagt an.

--

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

zum Seitenanfang zum Seitenende Profil || Suche