Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





No Sé Ni Que Titulo Ponerle... (nooo)

Iniciado por SkyNetBCN, 04 de Octubre de 2005, 10:31:29 PM

« anterior - próximo »

SkyNetBCN

 Vamos a ver, estoy haciendo un render (muy xulo) de una habitacion a oscuras con unas antorchas y bla bla bla... Todo funcion OK.
Si compilo el proyecto (VC++.NET), y lo ejecuto cojiendo el .exe en el explorador de archivos, resulta que se me ve todo mal... no tiene ningun sentido! Es decir, el fuego de una antorcha está ehcho con un sistema de partículas, pues bien, si ejecuto el proyecto desde VC, la llama de la anotrcha se ve bien, si ejecuto el exe directamente, las particulas se ven por doquier en la sala... esto es de locos...  (nooo)

Y ya que estamos, que ocpión hay en el VC++.NET para decirle al compilador con qué nombre queires que te genere el exe?

Gracias de antemano

zupervaca

 debes de tener un problema de directorios, cuando ejecutas desde el visual el directorio desde donde se ejecuta es el debug o el release, si lo haces desde fuera pues es desde donde lo ejecutes

para cambiar el nombre del exe compilado es en las propiedades del proyecto

SkyNetBCN

 No, las cosas se ven correctamente, es decir, las texturas y todo se cargan bien, el problema es que se ven donde no se tenian que ver, las cosas están, cambiadas de sitio

SkyNetBCN

 Otra cosa curiosa, el mismo proceso , exactamente el mismo, en Debug en vez de release, se ve todo perfecto...
Tan perfecto que me estoy plantendo utilizar como versión final la Debug...  :P  

AgeR

 Igual es hablar por hablar, pero has comprobado que todas tus variables están correctamente inicializadas antes de ser usadas?

Haddd

 
Citar
Vamos a ver, estoy haciendo un render (muy xulo) de una habitacion a oscuras con unas antorchas y bla bla bla... Todo funcion OK.

Esto me suena.... O_O

jajaja, no es broma. A ver si nos pones algún render que estas cosas tenebrosas me gustan mucho.

Lo del Debug, tiene pinta de ser variable sin inicializar. O ...¡algún bug del compilador! En C# las variables SIEMPRE se inicializan a su valor por defecto, pero no estoy seguro de si también funciona así en C++.NET

Bueno, ya nos contarás... (uoh)  

zupervaca

 si tiene toda la pinta de ser algo de inicializacion de variables entonces, no obstante yo me acuerdo que en el visual c++ 6.0 las funciones de las mfc a veces se comportaban de forma diferente en release optimizado para velocidad y en release sin optimizar para velocidad, es decir, en release sin optimizar por ejemplo realizabas busquedas en un treeview ivan perfectas y cuando encontraba un item te lo devolvia, pero resulta que en release optimizado tenias que encerrarlas en un while para buscarlas continuamente ya que iva buscando uno a uno, cosas raras de la vida ;), ademas el .net en modo debug se asegura que los punteros sean nulos (por lo menos cuando se esta depurando), pero en release no, cosa que me parece equivocada ya que el debug tendria que ser igual que la release, ademas si un puntero es 0xfefefefe.... se supone que fue liberado segun el windows y ya no esta en uso, pues en debug el .net lo sabe y no casca, pero en release te fallara, hay muchas mas cosas odiosas por lo que te recomiendo depurar y depurar, depura hasta el depurador :P  

ZeruGiran

 Yep no recuerdo donde lei que en Debug se inicializan automaticamente las variables no inicializadas, pero no es asi en Relase

raistlin

 Ten en cuenta otra cosa: no es lo mismo ejecutar el juego desde el entorno que desde fuera, aunque lo hagas en release. Siempre que ejecutar con el F5 desde el studio, las variables y las inicializaciones del entorno se tienen en cuenta, cosa que si vas al .exe y lo ejecutas directamente, no.
Intento que los novatos entiendan como funciona el mundo.

SkyNetBCN

 Chicos, esto es de locos... en opciones de proyecto, opcion C++ y dentro de esta, opcion Optimización, Yo antes tenía seleccionado Optimización completa. El caso es que con cualquier otra opción (Deshabilitado,Minimizar tamaño o Maximizar velocidad), funciona correctamente ...  (ole)
Explicación? jeje, no lo sé....

zupervaca

 eso me paso como te dije en varias aplicaciones en las que use mfc, el motivo es por que el compilador asume ciertas cosas en cada modo de optimizacion, no obstante deberias de hacerlo funcionar correctamente en cualquier modo de optimizacion, en mi caso como eran proyectos para empresa no me quedaba mas remedio que buscar cual era el problema y solucionarlo, normalmente era alguna funcion de las mfc que no funcionaba igual en un modo u otro

SkyNetBCN

 Ya está! dios! como muy bien habiais dicho, era una variable "mal" inicializada... pero pk solo petaba en release y desde fuera del entorno VS? ya he leído vuestras explicaciones, pero, seguro que es eso?? no sé, me parece muy extraño...

Por cierto, como hago para colgar un render? para poner una imagen me pide una URL, y no tengo dnd meterla...

fiero

Cita de: "SkyNetBCN"Por cierto, como hago para colgar un render? para poner una imagen me pide una URL, y no tengo dnd meterla...

Prueba a hacerte una cuenta en http://www.flickr.com y subirla ahí

Con lo del problema Debug-Release ten cuidado con las inicializaciones como te han dicho, y también con el tamaño de las estructuras. Por ejemplo si accedes a un array de estucturas multiplicando un índice por el número de bytes que crees que ocupa la estructura, en vez de utilizar "sizeof", en modo Debug o Release puede variar el tamaño de una estructura según los parámetros de optimización del compilador.

un saludo
www.videopanoramas.com Videopanoramas 3D player

vincent

 Si no me equivoco para emular el doble click en el exe ( o sea, ejecutarlo desde fuera ) le tienes que dar a CTRL + F5. Si solo le das F5 creo que te hace alguna marranada.
Desarrollo en .Net y metodologías http://devnettips.blogspot.com

Haddd

 skynet, si tienes internet, probablemente tu operador además de darte correo, te da un ftp de algunos megas. Telefónica me da 20 MB. Mira eso, para poder subir cosas ....






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.