Dudas circunstanciales

Started by BlySntK, May 23, 2012, 01:42:28 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

gecko

Ah, si, de paso explico que se maneja con las flechas y con space "salta" :D

Bueno, lo que hace el proceso jugador es manejar sus coordenadas como te había sugerido, con sus variables pos_x, pos_y, y altura.
Al cambiar el valor de la altura (con space) fijate que no cambian ni la pos_x, ni la pos_y. pero si cambia la posición en pantalla.
Entonces la idea es que todos los movimientos (y durezas, etc) los realices en base a la pos_x, y la pos_y... y que los valores x,y (posiciones en pantalla, o en scroll), sean solamente calculadas al final.
Desde el mismo jugador actualizo la posicion de la sombra para que siga la pos_x, pos_y (pero sin tener en cuenta la altura).

Y para la z, lo que hice fue calcular la distancia a la que se encuentra del limite superior de movimiento, e invertirla.

Estoy pensando que si el salto lo manejas con un proceso aparte, deberias declarar pos_x, pos_y y altura como globales y que ambos procesos usen directamente las globales.
Torres Baldi Studio
http://torresbaldi.com

BlySntK

Quote from: gecko on May 25, 2012, 05:09:04 PM
Ah, si, de paso explico que se maneja con las flechas y con space "salta" :D

Bueno, lo que hace el proceso jugador es manejar sus coordenadas como te había sugerido, con sus variables pos_x, pos_y, y altura.
Al cambiar el valor de la altura (con space) fijate que no cambian ni la pos_x, ni la pos_y. pero si cambia la posición en pantalla.
Entonces la idea es que todos los movimientos (y durezas, etc) los realices en base a la pos_x, y la pos_y... y que los valores x,y (posiciones en pantalla, o en scroll), sean solamente calculadas al final.
Desde el mismo jugador actualizo la posicion de la sombra para que siga la pos_x, pos_y (pero sin tener en cuenta la altura).

Y para la z, lo que hice fue calcular la distancia a la que se encuentra del limite superior de movimiento, e invertirla.

Estoy pensando que si el salto lo manejas con un proceso aparte, deberias declarar pos_x, pos_y y altura como globales y que ambos procesos usen directamente las globales.

Bueno, comentar gecko y quien haya querido ayudarme en este tema que está ya solventado :) Ya me hace lo que debía, ahora sólo es adaptar lo que tengo al código y continuar... he de montar las capas de la primera pantalla que tengo en los scrolls, espero que no me den demasiados problemas, los único que deseo tener sólo son para poner bien las coordenadas, porque hay objetos que van por separado... y hasta no encontrar la coordenada exacta... mal... pero vamos, no creo que suponga demasiado... De serlo, os vendré a joder un ratillo, que sé que os mola :P jajajajaaj Gracias tíos!
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)

BlySntK

Bueno, mientras os decidis a ver quién es el guapo xD que me ayuda con el proyecto que tenemos entre manos, pediré ayuda para lo que todavía puedo hacer yo... que es ir montando las capas de la pantalla en el/los diferente(s) scroll(es). Tengo exactamente el orden en que aparecerán, lo expongo aquí para que me digáis si sería bueno poner cada capa en su respectivo proceso o, poner en un solo proceso todos los scrolls... cosa que no veo optimizado ni factible... Casi sería mejor poner en cada proceso, en orden de aparición lo que toque poner, ya sea scroll o pantalla fija. Y sí, ya sé que la mejor solución para optimizar y ahorrar en recursos serían las tiles, pero.... ya miraré más adelante eso xD No creo que sea muy imprescindible, aquí el orden de las capas:

capa_01_niebla
capa_02_ramas
capa_03_barandilla
puente_bloqueado_desbloqueado
*** AQUI PONDRIAMOS A MATHEW ***
capa_04_suelo
*** AQUI PONDRIAMOS LOS ARCHIVOS QUE NO SE LLAMAN CAPAXX, es decir, el ahorcado, el sello, el monstruico, la luz intermitente
capa_05_niebla_fondo
capa_06_fondo_bosque_1
capa_07_fondo_bosque_2
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)

KeoH

BlySntK .. me da la sensacion q quieres tener el juego terminado en tiempo record xDD paciencia hombre .. no te estreses y ve haciendolo poco a poco ... q parece q tienes un jefe q te ha puesto fecha limite xDDD

BlySntK

Quote from: KeoH on June 09, 2012, 06:45:33 PM
BlySntK .. me da la sensacion q quieres tener el juego terminado en tiempo record xDD paciencia hombre .. no te estreses y ve haciendolo poco a poco ... q parece q tienes un jefe q te ha puesto fecha limite xDDD

Vale vale... si yo paciencia tengo... lo único eso, que me echéis una manilla con eso porque tengo una duda de cómo va... ná más :)
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)

Erkosone

Sobre lo de los procesos para las capas, mi recomendación es que SIEMPRE te plantees esta pregunta antes de hacer algo:  Puedo hacer lo mismo desde 1 solo proceso? si puedes.. hazlo, un proceso, aunque a ti te parezca que es una bobada.. en realidad es un gasto considerable de CPU, quizá en un PC o Mac no se aprecia demasiado, pero cuando algún día intentes portar tu juego a un disp. portátil verás que esos procesos qeu no son necesarios son los que están consumiendo todos los recursos de la CPU del portatil, ya sea en android, en iPHone o en lo que sea.


Mi respuesta es, NO, no uses 1 proceso para cada capa, mete todo el control en un solo proceso, no tengas miedo a que el código de un proceso sea muy grande, eso no tiene importancia, pero desperdiciar la CPU en procesos innecesarios si que la tiene.
Un saludo.

BlySntK

Quote from: Erkosone on June 10, 2012, 12:51:29 AM
Sobre lo de los procesos para las capas, mi recomendación es que SIEMPRE te plantees esta pregunta antes de hacer algo:  Puedo hacer lo mismo desde 1 solo proceso? si puedes.. hazlo, un proceso, aunque a ti te parezca que es una bobada.. en realidad es un gasto considerable de CPU, quizá en un PC o Mac no se aprecia demasiado, pero cuando algún día intentes portar tu juego a un disp. portátil verás que esos procesos qeu no son necesarios son los que están consumiendo todos los recursos de la CPU del portatil, ya sea en android, en iPHone o en lo que sea.


Mi respuesta es, NO, no uses 1 proceso para cada capa, mete todo el control en un solo proceso, no tengas miedo a que el código de un proceso sea muy grande, eso no tiene importancia, pero desperdiciar la CPU en procesos innecesarios si que la tiene.
Un saludo.

gracias Erko... Era lo que necesitaba saber. Pues como va por orden ascendente de capa, tendré que ir metiendo los scrolls o las pantallas fijas en sucesion, una detrás de otra... oki
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)

BlySntK

No me aclaro con los scrolls, los tengo todos puestos en procesos individuales pero.... no me aparecen las imagenes en pantalla como deberían. Estoy mirando de jugar tanto con el ctype y el cnumber pero, no sé si estoy haciendolo bien... sinceramente... Como tampoco sé si estoy poniendo los parametros de los scrolls bien (en el sentido de poner las capas en primer plano en de fondo...)
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)

Erkosone

Bueno.. yo no soy quien para ayudarte en esto por que no he programado nada en BennuGD que use varias capas de scroll para hacer un parallax o lo que sea que quieres conseguir, pero las preguntas que deberías hacerte mas o menos son estas:


1 - El scroll tiene transparencia?
Para conseguir el efecto que quieres debes asegurarte de que estás haciendo las cosas bien, pon un putscreen de fondo e inicia un scroll, si ves la imagen del put_Screen() a través del scroll todo andará bien, como imagen para el scroll utiliza una imagen a modo de maya que contenga lineas blancas por ejemplo y todo lo demás en negro, deberías ver el fondo que pusiste con put_screen() a traves de las zonas negras.


2 - La Z de cada capa está bien en tu proyecto?
Para visualizar esto correctamente create 2 imágenes sencillas a modo de "maya" y para diferenciarlas mejor una de ellas que sea una maya mas concentrada que la otra, entonces practica en un ejemplo por separado a inicializar los 2 scrolls "si el punto 1 lo has consegido" y verifica que la maya mas densa se visualiza por detrás de la menos densa.


3 - Si has logrado los dos puntos anteriores ya tienes lo necesario para continuar con tu proyecto.

BlySntK

Gracias Erko... me pondré a hacer pruebas ya mismo... A ver si logro que primeramente las Z de los scroll sean transparentes... y logo que se vayan montando cada capa sucesiva dejando ver la posterior...
Esnucándote contra la pared no sé si conseguiré mucho, mejor lo pruebo y salímos de dudas ^_^
-------------------------------------------------------
Blaisantka Games > (Official developer web site)