Ver. 6.4 phent_enable

Posted By: Omegattack

Ver. 6.4 phent_enable - 12/27/05 09:36

Habe nichts dazu im BHunt oder bei den News gefunden.
Womöglich ein Fehler.
Code:

action TEST_Act
{
phent_settype (my,PH_RIGID,ph_sphere);
phent_setmass (my,50,ph_sphere);
phent_setfriction (my,30);
phent_setdamping (my,50,50);
phent_enable(my,0);

while(1) {c_move(my,vector(10,0,0),nullvector,glide);
wait(1);
}
}



Mit der 6.3 Version reagierte die Entity wie gewollt.
Die Physik war abgeschaltet und das Objekt bewegte sich entsprechend dem
Move-Befehl.
In der neuen 6.4 Version wird scheinbar das "phent_enable(my,0)" ignoriert
und das Objekt bleibt unbewegt auf der Stelle. BUG oder habe ich ganze Zeit über was falsch verstanden?
Posted By: Omegattack

Re: Ver. 6.4 phent_enable - 12/29/05 11:25

bekommt man eigentlich eine Antwort "jo, wird überprüft, möglicher Fehler notiert" - oder wie läuft das hier ab?
Posted By: TripleX

Re: Ver. 6.4 phent_enable - 12/29/05 12:21

normalerweise.. Nicht in den Ferien.

Meines wissens kommt JCL am 2.1.06 und Marco auch in ca. 1 Woche. Also gedult dich am besten noch ein bisal.

Triple-X
Posted By: Marco_Grubert

Re: Ver. 6.4 phent_enable - 01/03/06 03:39

Quote:

bekommt man eigentlich eine Antwort "jo, wird überprüft, möglicher Fehler notiert" - oder wie läuft das hier ab?


Ja, so ungefaehr laeuft das hier ab, wenn nicht gerade Jahresendfeiertage sind. Ausserdem stecken wir im 4. Level von Death Strike fest ;-)

Zu der Frage: wenn ein Objekt mit phent_settype in eine Physikentity verwandelt wurde sollte sie nicht mehr manuell bewegt werden- das Resultat ist unbestimmt (sprich: in 6.31.4 ging's, jetzt nicht). Ich werde mal nachschauen ob ich das alte Verhalten wieder herstellen kann, aber in den meisten Faellen sollten Physikobjekte nicht manuell bewegt werden weil sie sonst in andere Objekte hineinragen koennten.
Posted By: Omegattack

Re: Ver. 6.4 phent_enable - 01/03/06 10:10

Morgen Herr Grubert.
Die Idee kam bei meiner derzeitigen Freizeitarbeit wieder zur Hilfe.
Ich lasse einen Pinguin strikt nach Code ablaufen und nur wenn der "Held" die Knarre hat und auf den Pinguin schießt, dann schalte ich die Physik wieder ein.
Ich könnte mal versuchen, die Physik erst zu definieren, wenn der Pinguin getroffen wird. Aber die ganze Zeit (auch vor 6.3) hat das funktioniert.
Sonst macht der Befehl eigentlich keinen Sinn (in diesem Zusammenhang).

Eigentlich ist mein Vorgehen ziemlich vorteilhaft.
Auch bei den Hubschraubern und sonstigen Fliegern in Death Strike funktioniert das so. Die Dinger bewegen sich ganz normal bei Code und wenn sie abgeballert sind, dann fallen sie zu Boden mit aktivierter Physik.
(war das 4. Level nicht die erste Nachtmission gegen die Panzer? Einfach Lenkraketen reinballern, Geschwindigkeit reduzieren und Snipern, wenn die gegnerischen Raketen - oben im Radar gelb dargestellt - sehr nahe sind, dann SPACE (Abwehrmaßnahme) und abdrehen - Abstand gewinnen, drehen und wieder angreifen. So habe ich das immer versucht.)
Posted By: Marco_Grubert

Re: Ver. 6.4 phent_enable - 01/03/06 23:55

In der Racer-Demo habe ich testweise folgende Funktion eingefuegt. Alle Physikentities werden dabei 20 quants zur Seite bewegt und es funktioniert problemlos. Allerdings ist zu beachten das Physik-Entities automatisch wieder enabled werden falls eine andere Physikentity sie beruehrt.
Code:

function MoveOver
{
phent_enable(pChassis, 0);
phent_enable(pFL, 0);
phent_enable(pFR, 0);
phent_enable(pRL, 0);
phent_enable(pRR, 0);
phent_enable(pHook, 0);

var dis=20;
pChassis.x+=dis; pHook.x+=dis;
pFL.x+=dis;pFR.x+=dis; pRL.x+=dis;pRR.x+=dis;

phent_enable(pChassis, 1);
phent_enable(pFL, 1);
phent_enable(pFR, 1);
phent_enable(pRL, 1);
phent_enable(pRR, 1);
phent_enable(pHook, 1);
}
ON_O= MoveOver;


Posted By: Omegattack

Re: Ver. 6.4 phent_enable - 01/04/06 08:16

den "Trick" kenne ich bereits.
Naja, trotzdem wäre es schön, wenn in einem update der phent_enable-Befehl wieder wie gewohnt arbeiten würde.
Danke und Gruß
Omega.
Posted By: Marco_Grubert

Re: Ver. 6.4 phent_enable - 01/04/06 21:10

Quote:

den "Trick" kenne ich bereits.
Naja, trotzdem wäre es schön, wenn in einem update der phent_enable-Befehl wieder wie gewohnt arbeiten würde.


Wo liegt das Problem mit dieser Loesung? Es muss doch lediglich phent_enable erneut aufgerufen werden um die Koordinaten zu aktualisieren.
Posted By: Omegattack

Re: Ver. 6.4 phent_enable - 01/05/06 11:36

Es ist kein Problem, vielleicht eher ein "Schönheitsfehler" und ein "Umdenken".
Dann muß man den Befehl jetzt anders verstehen.
Ein einmal als Physikmodell definiertes Objekt muß in jedem Frame
(bei Bedarf mit phent_enable(my,0) für "manuelle" Bewegungen ge"unlocked" werden, nach der Bewegung wieder ge"locked" werden.

Ich finde das zwar rein vom Verständnis her etwas unsauber - aber da ich lieber mit dem Gamestudio experimentiere, statt Bierdeckel zu sammeln, muß ich das wohl akzeptieren.

Vielleicht sollte man dann auch die Definition in der Anleitung ändern:
"Diese Funktion schaltet die Physikalische Eigenschaft einer Entity zeitweilig aus oder ein. "

© 2024 lite-C Forums