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 - Saracchini

#1
CRM32Pro / Problema con Dev-C++
21 de Septiembre de 2006, 11:17:02 PM
Papito,tienes que usar un SDL_Rect para definir donde el placar ira ser deseñado.

segun la definicion del SDL de SDL_BlitSurface:


Citar
This performs a fast blit from the source surface to the destination surface.
Only the position is used in the dstrect (the width and height are ignored).
If either srcrect or dstrect are NULL, the entire surface (src or dst) is copied.
The final blit rectangle is saved in dstrect after all clipping is performed (srcrect is not modified).
The blit function should not be called on a locked surface.


define la posicion X e Y pela estructura SDL_rect e poñe qualquier valor en width and heigth.

E pudes usar Get_Surface para obter las informacions de la superficie utilzando os atributos de la classe SDL_surface que son:


Citar
flags - Surface flags
format - Pixel format
w, h  - Width and height of the surface
pitch - Length of a surface scanline in bytes
pixels - Pointer to the actual pixel data
clip_rect -  surface clip rectangle
#2
CRM32Pro / Problema con Dev-C++
21 de Septiembre de 2006, 08:16:21 PM
Crea una SDL_surface con SDL_CreateRGBSurface, e usa SDL_FillRect para preencher com pixels negros. Feito isso usa SDL_BlitSurface para deseña-la.

OBS: No me lembro quais son los parametros destas funciones ahora... tengo que dar una olhada en la documentacion de el SDL.
#3
CRM32Pro / Problema con Dev-C++
21 de Septiembre de 2006, 04:48:44 PM
Faça o seguinte.

1)Carga todos los sprites en un array.No creo que 10 imagens no caiban em lla RAM.


CRM32Pro_CSprite** arrayPontuacion1;
int i;
arrayPontuacion1 = new CRM32Pro_CSprite*[11];
for(i = 0; i<= 10;i++){
//carga sprites 0-10
char temp[3];
sprintf(temp,"%d",i);
arrayPontuacion1[i] = new CRM32Pro_CSprite();
arrayPontuacion1[i]->Load(GFX_RESOURCE,temp);
}


2)Em la funcion de  callback de actualizacion da tela faça esto;



placarADesenhar1 = arrayPontuacion1[p1];
placarADesenhar1->Draw()


Assi no precisas cargar todos los sprites a cada vez que haces una pontuacion .Para borrar a tela basta crear um SDl_surface com als dimensiones de la tela e usar SDL_Bit para desenha-la

PS: No testei esto codigo, mas a ideia es aproximadamente esta.

Estoy achando que es melhor yo hablar portugues...  qua acham ?
:?
#4
CRM32Pro / Problema con Dev-C++
20 de Septiembre de 2006, 10:46:59 PM
Como hay dito, debe haver un condicional que no deve estar sendo satisfecto pois o codigo do jeito que esta incrementa sempre la variable "p1". Acabei de testar.
#5
CRM32Pro / Problema con Dev-C++
20 de Septiembre de 2006, 09:18:22 PM
La variable no incrementa ? Es esto ?

Hum...  Talvez seja lo caso de no estar llegando a lo ponto onde la variable incrementa.Tentaste depurar lo programa para saber se esta realmente llegando lá ? Ou talvez lo valor esteja sendo reasignado todas as vezes...

Ademas yo no me gusta usar variables globales , a menos que seja un programa pequeno.

Desculpe pelo malo español pero no lo  hablo mui bien ....
#6
CRM32Pro / Trouble with OpenGL and Alpha
20 de Septiembre de 2006, 07:12:20 PM
I found a new problem... if i do it:


spr1 = new CRM32Pro_CSprite();
spr1->Load(GFX_RESOURCE,"raber");
spr1->AutoRestore(0);
spr2 = new CRM32Pro_CSprite();
spr2->Clone(spr1);
spr1->SetAlpha(100);


The program ends (maybe a error ?) when spr2->Draw is called. But if "spr2->Clone(spr1)" is localizaed after "spr1->SetAlpha" the program runs fine. And if I set the colorkey  in spr1 after the clone command the colorkey is set in spr2 too.I think it estrange... :?

And a single question about EditorDPF... how I set the color who is choosen to be the trasparent color ? For any values in the field "ColorKey" the transparent color is aways black...
#7
CRM32Pro / Trouble with OpenGL and Alpha
15 de Septiembre de 2006, 07:09:07 PM
Thanks for the help papito !

Using a bmp sprite SetAlpha works normaly... only a question remain... this "issue" is relationed with only with  png´s alpha or with the bit depht ?

Now to finish my Effects library i must implement that geometrical transformations who I asked later (rotate, squew,translate, etc...)   8)
#8
CRM32Pro / Como Configurar Crm32pro En Devcpp
15 de Septiembre de 2006, 03:24:49 PM
The last devpack found is for CRM32Pro 4.91 but now the latest version is CRM32Pro 4.95.

I don´t know how make a devpack but i´m instaled the devpack 4.91 and updated the SDL headers with the lastest version (1.2.11) and the CRM32Pro 4.91  header,lib and dll with the 4.95 files... Works fine ! :P

I´ve tested all examples and mine test programs.
#9
CRM32Pro / Trouble with OpenGL and Alpha
15 de Septiembre de 2006, 01:31:21 AM
Citar1) About RENDER_OPENGL...the problem is mine...
No problem,i dont need this feature now. but Directx is not suitable for use in Linux...

Citar
2) About the sprite alpha problem... in theory, when you create/load a sprite, since you call to .SetAlpha() it should be drawn with that alpha value. Keep in mind that this alpha is per surface, not per pixel. Anyway, tomorrow I will check it again, I will let you know...
.

I will explain my experience... i get the code of "Example09_LogicRenderRates.cpp"  and put "spr1->SetAlpha(50) " before  "spr1->Draw()" and it not works... putting after the load of the sprite resulted in the same thing...

Ah... you can speak Spanish or Portuguese if ou preffer... but my spanish  writing is worse than my english... but i undertand perfectly .

Thanks papito !
#10
CRM32Pro / Trouble with OpenGL and Alpha
14 de Septiembre de 2006, 10:58:57 PM
I´m new in this forum and i´m learning to use CRM32Pro. It appears easy to use and develop games  !:P

Now i´m making some experiences with the examples provided but i found some problems.

The first problem : The program finishes and register in log this message:

Citar· CRM32Pro successfully initiated.
· [CRM32Pro.SetVideoMode()] Error: could not initialize SDL video system (No available video device).

when i set CRM32Pro.Config.VideoRenderer to RENDER_OPENGL for all VideoAccel modes.

The second problem : CSprite->SetAlpha  does nothing in all video configs... I put before the procedure CSprite->Draw,after then, in the main loop ,but the sprite is rendered with no alpha changes...

Can anyone help me ?

Thanks for the attention !





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.