|
PhysX Objekt wird nicht aus registrierung gelöscht.
#376591
07/04/11 19:06
07/04/11 19:06
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Wie der Titel schon sagt wird bei mir eins von 2 Objekten (der Ball vom Spieler) vorm Mapchange nicht aus der Registrierung gelöscht. Ich verstehe nicht wieso, da mein Code meines erachtens nach richtig ist. Beim Exit funktioniert das einwandfrei. Dadurch das es nicht aus der Registrierung wird ruckelt der Ball ab der 2. Map. Hat irgendjemand Hinweise für mich?
Physikents = pXent_settype(ball, 0, 0); //Model als Ball registrieren
Physikents = pXent_settype(Ziel_ent, 0, 0); //Model als Ball registrieren
wait(-1);
Mapchange += 1;
Auswertung_var = 0;
if(Mapchange == integer(1))
{
level_load (map_1);
Cameramode = 1;
}
MfG Rudi
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
Re: PhysX Objekt wird nicht aus registrierung gelöscht.
[Re: Joey]
#376594
07/04/11 19:25
07/04/11 19:25
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Das PhysX_Open hab ich in der Main Function stehen. Muss das etwa in den Spielerscript oder wie?
Was isn daran schrecklich? Also ich komm damit gut klar. ^^
Edit:
Alaska. Ich habs geschafft das der Ball gelöscht wird. Die Zappelei ab dem 2. level is aber immer noch net verschwunden. Ich verstehs nicht worans liegen kann.
Last edited by Meerkat; 07/04/11 20:03.
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
Re: PhysX Objekt wird nicht aus registrierung gelöscht.
[Re: Meerkat]
#377289
07/11/11 19:47
07/11/11 19:47
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Sorry für den Doppelpost, ich kann meinen Beitrag leider nicht mehr "edit"(en). Hat jemand mittlerweile heraus gefunden ob das ein Bug (das der Ball ab dem Mapchange zappelt) von dem recht neuen PhysX ist?
Rudi
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
Re: PhysX Objekt wird nicht aus registrierung gelöscht.
[Re: Superku]
#377375
07/12/11 15:54
07/12/11 15:54
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Weil ich mir die registrierten Entitys (ich habe nur 2 im level) per "pXent_settype(ENTITY* entity, var type, var hull )" anzeigen lasse. Es wird darüber ja ein Wert ausgegeben wenn man dies mit einer Variable nutzt.
"Rückgabewerte: Bei Erfolg, gegenwärtige Anzahl von PhysX-Actors, ansonsten 0."
Das stand unter Rückgabewerte. Das klappt soweit auch.
Wenn ich den gleichen Level nochmal lade passiert das gleiche. Der Ball zappelt nach dem 1. Mapchange bei Bewegung.
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
Re: PhysX Objekt wird nicht aus registrierung gelöscht.
[Re: Superku]
#377469
07/13/11 15:02
07/13/11 15:02
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Diesen von dir genannten Befehl nutze ich garnicht. Das hier ist mein Spielercode der normal ohne Probleme funzen sollte.
action Spieler()
{
var gesprungen;
ball = me;
player = me;
Physikents = pXent_settype(my, PH_RIGID, PH_SPHERE); //Model als Ball registrieren
pXent_setfriction(my, my.Reibung); //Reibung des Balls
pXent_setdamping(my, my.Daempfung, my.Daempfung); // 50 % Dämpfung in der Bewegung des Balls
pXent_setelasticity(my, my.Elastizitaet); //Elastizität des Balls
pXent_setgroup(my, 2);
while(Auswertung_var == 0)
{
c_scan(my.x, my.pan, vector(360,0,40),IGNORE_ME | SCAN_ENTS);
/************************************************************************/
/********************** Bewegungs-/ Cameracode **************************/
/************************************************************************/
if(key_pressed(72)) //hoch
{
pXent_addtorqueglobal(my, vector(0,45*time_step,0));
}
if(key_pressed(80)) //runter
{
pXent_addtorqueglobal(my, vector(0,-45*time_step,0));
}
if(key_pressed(75)) //links
{
pXent_addtorqueglobal(my, vector(-45*time_step,0,0));
}
if(key_pressed(77)) //rechts
{
pXent_addtorqueglobal(my, vector(45*time_step,0,0));
}
Falltiefe = c_trace(my.x, vector(my.x,my.y,my.z-1000), IGNORE_ME);
if(key_pressed(57)) //Leertaste
{
if(Falltiefe < 30.267) // Balldicke = 30.266
{
pXent_addforcecentral(player, vector(0,0,1500*time_step));
}
}
camera.x = my.x;
camera.y = my.y;
camera.z = my.z + 800;
camera.tilt = -90;
if(is(player, FLAG1)) //Ist Cameradrehung Flag 1 an?
{
Cameraset = 1;
}
else
{
Cameraset = 0;
}
if(Cameramode == 1)
{
//Camera dreht sich nicht
}
if(Cameramode == 2)
{
camera.pan += 1 * time_step;
}
if(Cameramode == 3)
{
camera.pan -= 1 * time_step;
}
wait(1);
}
}
Hier ist der Event_Code für den Levelwechsel wenn ich mit dem EXIT kollidiere (berühre).
void Item_event()
{
/**********************************************/
/************** IMPACT EVENTS *****************/
/**********************************************/
if(event_type == EVENT_FRICTION)
{
if(is(my,FLAG1))
{
Physikents = pXent_settype(ball, 0, 0); //Model deregistrieren
Physikents = pXent_settype(Ziel_ent, 0, 0); //Model deregistrieren
wait(-0.5);
Mapchange += 1;
if(Mapchange == integer(1))
{
level_load (map_1);
Cameramode = 1;
}
if(Mapchange == 2)
{
Code2anzeige_func();
level_load (map_2);
Cameramode = 1;
}
}
}
wait(1);
ptr_remove(me);
return;
}
Also der Code ist übersichtlich geschrieben um zu erkennen wofür was steht. Daher verstehe ich nicht wo das Problem liegt. Vielleicht sehe ich aber auch nur den Wald vor lauter Bäumen nicht, also den fauligen Baum der darin versteckt ist (also mein Fehler der mir einfach nicht auffällt). Über Hilfe bin ich weiterhin sehr dankbar! MfG Rudi
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
Re: PhysX Objekt wird nicht aus registrierung gelöscht.
[Re: Superku]
#377671
07/15/11 13:17
07/15/11 13:17
|
Joined: Apr 2006
Posts: 273 Germany, NRW
Meerkat
OP
Member
|
OP
Member
Joined: Apr 2006
Posts: 273
Germany, NRW
|
Genau das gleiche. In der nächsten Map hat der Ball bei Bewegung hin und wieder zappler. Genau das macht mich ja so wahnsinnig. Ich kann deregistrieren oder nicht, alles hilft nicht. Selbst wenn ich deregistriere und das Model lösche bringt das nichts. Ich habe es gestern Abend sogar versucht die PhysX Engine vor Mapchange zu deaktivieren, und nachm Mapchange wieder zu aktivieren um den Bug zu umgehen, aber selbst das funktioniert nicht. Ich verzweifel leider daran. Ich bin dir aber sehr dankbar dafür Superku das du versuchst mir zu helfen. Mich interessiert langsam ob das noch ein Bug von der PhysX Engine is weil es ja noch frisch is. An was anderes glaube ich bald nicht mehr wenn das so weiter geht. ^^
http://www.gpi-studios.comOS: Windows 7 Home Premium (64 Bit Version) AMD Athlon 64 X2 Dual Core Processor 5200+ 6gb DDR 2 - RAM NVIDIA GeForce GTX 460 GameStudio Version A8 Commercial
|
|
|
|