Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Mensajes - _16BITGuy_

#1
General / Reportaje: industria de los videojuegos.
29 de Julio de 2007, 11:49:35 AM
jeje este reportaje ya lo tenia, es muy interesante.

Saludos!
#2
Cita de: "TheAzazel"Estoy corrigiendo bugs que me ha reportado la gente y le ha tocado el turno al tuyo que gracias a Dios ha sido muy sencillo:

veras...la documentacion esta bien, si hay ACCEL_HARDSMOOTH el autorestore se pone en off PERO tu no estas en ese modo, una cosa es que lo hayas intentado utilizar, que lo haces bien, y otra cosa es que lo haya activado. Si revisas el log veras que hay un mensaje advirtiendo que no fue posible activar el modo que querias...porque? porque tambien estas pidiendo el modo ventana!! y double buffer en modo ventana solo te lo daria si usas el render de opengl, ni directX ni windib ni nada de nada :)

Por lo tanto, es importante que reviseis el log para ver si hay algun problema de estos.

PD: si estas usando visual studio puedes agregar esta linea:
CRM32Pro.Config.VideoRenderer = RENDER_OPENGL;
utilizara OpenGL, te ira todo mas rapido, soporte alpha por hardware, doublebuffer en modo ventana PERO aun no esta del todo probado en la lib, sera para la v5.00 asi que pruebalo solo para ver si te funciona o no.
Ajá, entiendo, pues probaré a activar OpenGL para eso, aunque tampoco es que me sea muy obligatorio, yo lo puse en ventana el juego para que me fuera mas comodo luego el hacer el debug.

Citar
uhm...voy a echar un ojo a eso...

Por cierto,se puede ver una demo de lo que estas haciendo?  

Saludos
Justo lo que estoy haciendo ahora es una demo xD(no me quise meter a fondo en el juego, si veo que la demo me ha ido bien sigo con la idea que tengo del juego entero de lo contrario no) en cuanto la termine y vea que sale bien, lo subire y lo dejare por aqui para que lo veais si eso.

Un Saludo!
#3
nada nada, que al final habia que desactivar el AutoRestore() del sprite. Que por cierto segun la ayuda (aunque yo tampoco traduzco muy bien por k la tengo en ingles), creo que dice que en ACCEL_HARDSMOOTH el autorestore es 0 por defecto, y yo he tenido que escribirlo para que asi sea.

Citar
If you used ACCEL_HARDSMOOTH(which will try to set a double-buffer) acceleration mode, it is disabled by default.
#4
Me explico, tengo 2 fondos dibujandose a la vez y despues de estos se dibujan una nave y un texto. La nave esta puesto con aquello del canal alpha (aun no se muy bien como va), y resulta que la primera vez que se dibuja esto perfecto, pero los siguientes frames el area que seria transparente del archivo de imagen de la nave, no se vuelve a dibujar, de modo que es como si la nave se llevara un trozo del fondo, es como si este trozo no volviera a dibujarse siquiera al borrar la pantalla de color negro.
Este es el codigo del dibujo:

void dibujado(int bLogicUpdate)
{
SDL_FillRect(CRM32Pro.screen,
        &CRM32Pro.screen->clip_rect,
SDL_MapRGB(CRM32Pro.screen->format,0,0,0));
scrollLoop(bg,&sclBg);
scrollLoop(stars,&sclStars);
nave->Draw(CRM32Pro.screen);
fnt->PutString(CRM32Pro.screen,20,20,"Space Mercenaries \"Demo\"",NULL);

}

Los ajustes de la pantalla y demas estan asi:

CRM32Pro.Config.VideoWidth = 640;
CRM32Pro.Config.VideoHeight = 480;
CRM32Pro.Config.VideoBPP = 32;
CRM32Pro.Config.VideoAccel = ACCEL_HARDSMOOTH;
CRM32Pro.Config.VideoWindow = 1;
CRM32Pro.Config.Title = "Naves";
CRM32Pro.SetVideoMode();
CRM32Pro.SetRenderCallback(dibujado);


¿A que puede deberse esto?
#5
CRM32Pro / Fuentes.
30 de Mayo de 2007, 07:43:52 PM
Ok, te envio un mail con la fuente y ya me dices, la verda es k no se por que, si le pongo el enfocado funciona...
#6
CRM32Pro / Fuentes.
28 de Mayo de 2007, 06:38:54 PM
Buenas,
¿alguen sabe, por que usando photoshop para hacer las fuentes, las letras al estar puestas con suavizado(enfocado) al cargarlas con CRM32Pro las acepta, y sin el suavizado no?
la imagen guarda los margenes y la separacion de las letras que pone en el manual.
#7
General Programadores / ¿Alguen sabe a que se debe esto?
26 de Mayo de 2007, 11:58:01 AM
hmmm, pues si es vedad que es asi ahora que recuerdo,toi mirando mis primeros codigos y lo hacia asi, pero si es asi ¿por que leches me ha estado funcionando esto perfectamente con el compilador MinGW?, en la mayoria de las cosas ahora que estoy viendo mis codigos, lo he hecho asi y solo se quejaba si por ejemplo, hacias un int miarray[4] miarray[5] = 1 o algo asi, o en los caracteres si no tenias en cuenta el caracter nulo. Eso de que en uno falle y en otro no es un tostonazo por que te equivocas luego te funciona y te lo crees que es asi, enfin gracias por aclararme la duda ;)
#8
General Programadores / ¿Alguen sabe a que se debe esto?
26 de Mayo de 2007, 01:12:29 AM
que yo sepa, cuando se hace un array camMoves[3], tiene 4 posiciones, el 0 el 1 el 2 y el 3.... me equivoco?
#9
General Programadores / ¿Alguen sabe a que se debe esto?
25 de Mayo de 2007, 11:33:33 PM
pues no, solo se usan los campos 0 1 2 y 3 de camMoves, si fuera fallo de eso, se me pararia el programa antes de que lo cerrara en el momento en que llegase al fragmento de codigo, pero mientras el programa se ejecuta va bien, excepto al cerrar
#10
General Programadores / ¿Alguen sabe a que se debe esto?
25 de Mayo de 2007, 06:42:55 PM
Hola, buenas.

Estaba programando en vs y me encontre con un fallo un tanto extraño, vereis, tengo este codigo:


#include"cabecero.h"
char BG_PATH[128] = "data\\background\\";

int main(int argc, char *argv[])
{
// Declarando variables necesarias
SDL_Event   event;
SDL_Rect sclView;
int done = 0;
SDL_Surface *bg;
int camMoves[3];

// Configurando CRM32Pro, definiendo titulo de ventana tamaño y
// profundidad de color.
CRM32Pro.Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER);
CRM32Pro.Config.VideoWidth = 640;
CRM32Pro.Config.VideoHeight = 480;
CRM32Pro.Config.VideoBPP = 32;
CRM32Pro.Config.Title = "Naves";
CRM32Pro.SetVideoMode();

// Carga de imagenes
bg = IImage->LoadBMP(strcat(BG_PATH,"cleanspace.bmp"));

   for(int i = 0;i<=3;i++)
{
camMoves[i] = 0;
}

sclView.x = 0; sclView.y = 0;
sclView.w = CRM32Pro.screen->w; sclView.h = CRM32Pro.screen->h;



while(!done)
{
//Leer la entrada de teclado
while(CRM32Pro.Update(&event))
{
 switch(event.type)
 {
      case SDL_QUIT:
         done = 1;
         break;
  case SDL_KEYDOWN:
     if(event.key.keysym.sym == SDLK_ESCAPE) done = 1;
 if(event.key.keysym.sym == SDLK_UP) camMoves[MOVE_U] = 1;
 if(event.key.keysym.sym == SDLK_DOWN) camMoves[MOVE_D] = 1;
 if(event.key.keysym.sym == SDLK_LEFT) camMoves[MOVE_L] = 1;
 if(event.key.keysym.sym == SDLK_RIGHT) camMoves[MOVE_R] = 1;
 break;
  case SDL_KEYUP:
 if(event.key.keysym.sym == SDLK_UP) camMoves[MOVE_U] = 0;
 if(event.key.keysym.sym == SDLK_DOWN) camMoves[MOVE_D] = 0;
 if(event.key.keysym.sym == SDLK_LEFT) camMoves[MOVE_L] = 0;
 if(event.key.keysym.sym == SDLK_RIGHT) camMoves[MOVE_R] = 0;
  default:
                 break;
         }
       }


if(camMoves[MOVE_L])
{
sclView.x -= 2;
}
if(camMoves[MOVE_R])
{
sclView.x += 2;
}
if(camMoves[MOVE_U])
{
sclView.y -= 2;
}
if(camMoves[MOVE_D])
{
sclView.y += 2;
}

scroll(bg,&sclView);
}
SDL_FreeSurface(bg);
CRM32Pro.Quit();
return 0;
}

Pues resulta que al compilar todo va bien, el programa funciona bien, pero al cerrarlo sale este error:

Run-Time Check Failure #2 - Stack around the variable 'camMoves' was corrupted.

No se por que ocurre esto, luego probe a compilar este mismo codigo en DevC++ (MinGW), y no ocurre nada malo.

¿Alguen sabe por que?

Un Saludo!
#11
CRM32Pro / Resolucion
24 de Mayo de 2007, 07:59:41 PM
No me habia dado cuenta de esa parte , toi ciego xD.

Muchas gracias!
#12
CRM32Pro / Resolucion
24 de Mayo de 2007, 07:37:08 PM
Hola amigos,
me preguntaba... ¿Como puedo cambiar la resolucion de la pantalla, que le estoy dando vueltas a la ayuda de referencia y no lo encuentro? Debo usar SDL, solo, para ello?
...una pregunta un poco tonta ahora que lo pienso bien, pero de todas formas, me gustaria saber si hay forma desde CRM32Pro.
#13
a que te refieres, con CRM32Pro?, pues a programar videojuegos :P, este veranito cuando ya termine yo el instituto, me voy a pegar una pecha de programar con esta libreria y con otras 2 mas a hacer juegos y algunas cositas mas para musica que tengo en mente, que tengo mil ideas y nada de tiempo pa sentarme a escribir tranquilo jajajaja.

Un Saludo!
#14
Bien, ya reinstale el sdk y ya puedo compilar, aunque algo raro pasa, al darle a compilar debug en el vc++ me sale el programa como si estuviera en otro directorio que ni es debug ni release, por que no me encuentra los archivos de imagenes ni sonido, y al cerrarlo hace un error de infraccion de acceso al escribir en memoria, sin embargo el ejecutabe aparece en debug, y desde ahi funciona perfectamente. tal vez hay algo que desconozco de como funciona esto y no me doy cuenta, pero ya almenos funciona, gracias!
#15
tengo el platform instalado, pero lo reinstalare por si las moscas, sino me funciona, ya te pedire, si no te importa, los archivos esos que faltan del SDK.

Un Saludo





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.