Misma z igual a superposición de procesos

Started by Danielo515, September 15, 2008, 04:00:35 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Danielo515

Por lo que he podido ver, aquellos procesos a los que les asignamos algún valor a su variable local z, cuando están encima de otro proceso con el mismo valor de z, cada vez que se mueven un pixel se superponen y se desuperponen, vamos que hacen cosas rara. Probé a hacer un contador de procesos y a sumarle a cada proceso ese contador, pero no me funcionó. ¿hay alguna alternativa?

SplinterGU

a iguales z, el orden de dibujado de los procesos es indeterminado...

que version de bennu estas usando?
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

TYCO

¿Alguna alternativa a qué?

Todos los procesos tiene la z=0 es logico que se superpongan unos a otros (depende de cual se dibuje antes en cada frame global), para evitarlo solo tienes que poner Z distintas en los procesos.

Tienes tambien una pagina muy bonita de ayuda:
http://fenixworld.se32.com/fenixwiki/index.php?title=Portada
Programador, Escritor/Guionista y Deportista.

Todo Modo Gráfico tiene por detrás una Línea de Comandos.

SnowCraft Remake (100%)
Rally Mortal (87%)

Danielo515

Quote from: TYCO on September 15, 2008, 04:29:46 PM
¿Alguna alternativa a qué?

Todos los procesos tiene la z=0 es logico que se superpongan unos a otros (depende de cual se dibuje antes en cada frame global), para evitarlo solo tienes que poner Z distintas en los procesos.

Tienes tambien una pagina muy bonita de ayuda:
http://fenixworld.se32.com/fenixwiki/index.php?title=Portada

No entiendo tu respuesta. Ya conozco el fenixwiki y he dicho que los procesos les inicializaba la z por lo que no es igual a cero. Le puedes poner z distinta a distintos procesos, pero cuando es el mismo proceso dos veces (llamado por segunda vez) no es tan sencillo.

TYCO

Si necesitas que que un mismo proceso, tenga Z distintas, como has dicho al principio con un contador debe funcionarte es decir algo estilo a esto:
...
...
contador++;
llamada_proceso(contador);
...
...
Process llamada_proceso (z)
...
...

Eso deberia valerte, pero segun comentas ya lo has probado y no te funciona. Motivos??? Varios... quizas estes mezclando Z, y me explico... imagino que sabras que existe text_z, z, scroll.z, m7.z, mouse.z y posiblemente alguna mas. Y segundo el valor de profundidad(z) va de -512 a 512.

Pero sigo pensando que ese codigo que puse deberia servir, si es la Z de graph la que utilizas.
Programador, Escritor/Guionista y Deportista.

Todo Modo Gráfico tiene por detrás una Línea de Comandos.

SnowCraft Remake (100%)
Rally Mortal (87%)

SplinterGU

en la ultima version deberia ser un poco mas estable, y solo verias este efecto si cambiarias la z (en teoria)...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

fr0d0b0ls0n

Depende de que juego estes haciendo una forma muy sencilla es utilizar la coordenada del proceso. En mi juego suelo fijar la z con z=-y/12; lo que hace que las criaturas al acercarse al borde más cercano automáticamente ya cambie la z para que se vean por encima de otras que estén más arriba.

Aunque sean dos procesos iguales seguro que hay algo que los diferencia, ya sea x, y, graph, alguna variable local, etc. Usa esa variable para fijar Z, siempre y cuando haya una relación directa entre ambas.
Follow the Moeko Principle

FAETON - En Progreso
15 Criaturas de ~28 |  18 Hechizos de ~41
25 Buffs de ~50      |  19 Enfrentamientos de ~80