Error Prueba de Ogre Con fisicas

Iniciado por cazagavilan, 1 Noviembre 2012, 19:02 PM

0 Miembros y 1 Visitante están viendo este tema.

cazagavilan

Buenas!

Tengo un proyecto para probar las fisicas en ogre y me da error:

Primera excepción en 0x0116dd07 en Fisica 1.1.exe: 0xC0000005: Infracción de acceso al leer la ubicación 0x00000000.
Excepción no controlada en 0x0116dd07 en Fisica 1.1.exe: 0xC0000005: Infracción de acceso al leer la ubicación 0x00000000.

Concretamente en esta funcion:

void PhysxManager::simulate(NxReal time)
{
   // Ejecuta las colisiones y la dinamica para el incremento de tiempo desde el ultimo frame
----->   GScene->fetchResults(NX_RIGID_BODY_FINISHED, true);
   GScene->flushStream();
   GScene->simulate(time);
}

He leido que tiene que ver con algun puntero NULL que se intenta desreferenciar, pero no puedo solucionarlo.

Dejo el projecto para descargar ya que es un pelin grande:

http://www.mediafire.com/?m0wtksdd3smc7yq

Gracias.

Foxy Rider

#1
Whoops, recién veo el hilo, a ver ...

CitarPrimera excepción en 0x0116dd07 en Fisica 1.1.exe: 0xC0000005: Infracción de acceso al leer la ubicación 0x00000000.

Lo que está en Rojo es básicamente un segmentation fault, segfault, como gustes llamarlo ... significa que tu programa trata de acceder a memoria que no tiene permisos de leer.
Lo que está en Azul te dice donde quiso leer ... 0x00000000 es básicamente 0 en hexadecimal, y 0 es lo mismo que NULL.

¿Hay un puntero sin inicializar por ahí?
Compilá el proyecto en modo debug y ponele un breakpoint antes de la primer llamada en esa función, aunque el drama está en GScene; sea por que GScene es nullptr o por que algún puntero que  fetchResults() usa vale eso.

Saludos.

P.S → Tendría que compilar Ogre y NxOgre (asumiendo que esté para linux, creo que si) para depurar eso ... y es algo que me consumiría bastante tiempito aparte de no enseñarte nada; tratá de ir resolviéndolo por tu cuenta y te echamos una mano desde acá.

cazagavilan

Muchas gracias por responder, seguiré intentándolo a ver.