Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





¿qué Pasa Con Los Programadores?

Iniciado por Haddd, 12 de Abril de 2005, 05:34:19 PM

« anterior - próximo »

Haddd

 Llevo ya bastante tiempo sin leer post sobre cosas nuevas de programación, lo que haceis, técnicas que hayais descubierto, cómo hacer cosas que antes no sabiais....

Vamos que parece que aquí menos de programación, se habla de todo. Venga, hombres ( y féminas ), enseñad algún frame, alguna rutina que os haya costado mucho, para que se mueva esto un poco y volvamos a incentivarnos entre nosotros mismos.

(ole)

nsL

 Yo solo programo los fines de semana y encima ahora me da un error SDL y no puedo poner mas d 6 surfaces en pantalla , porq se me peta.
En fin, cuando consiga arreglarlo enseño algo. Estaba metido en un minijuego de billar :P

Encima probe C# para probar a hacer programas .net del tipo VB y me quede viciado y toi liado con eso.

Saludos!  B)  
Yo no muero hasta la muerte -

CoLSoN2

 Yo me dedico a programar juegos, cosas que me diviertan, y no tanta parafernalia tecnológica, así que no creo que os interese demasiado.
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor

[EX3]

 Yo ando reescribiendo la mitad de la dx_lib32 para la version 2.0, ya tengo reescrita la clase de sonido entre DirectSound para los fx y DirectShow para la musica, solo me falta añadir las rutinas para activar los efectos de sonido para los fx y algun detalle mas, la clase grafica la he tenido que reescribir tambien desde 0 por las severas modificaciones como lo de la lista de ordenamiento que simula al z-buffer, pasar todas las funciones de dibujo para usar texturas montadas en quads en vez de la clase D3DXSprite, la mejora de las funciones de dibujo de primitivas (como la funcion de circunferencias) y la implementacion de una nueva funcion de dibujo la mar de sencilla y que facilitara mucho la tarea para desarrollar juegos en perspectiva caballera e isometrica ;)

De momento la cosa va muy bien, el rendimiento de la clase grafica a subido considerablemente respecto al de la version actual de mi web, la 1.03, luego me tocara solucionar de nuevo el tema del reseteo del device por que no se la causa pero al quitar las llamadas a la clase D3DXSprite el reseteo vuelve a fallar, se queda la pantalla vacia y con la resolucion de windows.

Cuando tenga algo mas completito el tema ya subire algo para que echeis un vistazo :)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

zupervaca

 a mi desde que me casco la ati 7500 y estoy con una gforce2 de 16mb poco hago y como es portatil no puedo comprar na  :(  

Pogacha

 Yo estoy remodelando toque a toque con el mayor de los cuidados las NukeDX (trantando de no hacer cambios innesesarios) cuando las termine mas o menos se las feedbackeare a los autores ...

Aparte de esto estoy con el juego 2d, la verdad es como estaba tan metido en 3d estoy usando puras tecnicas 3d simplificadas, la verdad es que es algo nuevo y caprichoso (no se si alguien lo ha usado antes), entidades, pruebas de escalon, faltaria un arbol bsp e iluminación en tiempo real y estoy de nuevo con mi motor ...

No hay mucho mas ... la verdad es que reconozco como nos frenamos ...

Saludos

sés

 Desde mi último mensaje sobre BGL no he tenido prácticamente tiempo libre.
El poco que tengo ahora lo dedico a jugar un poco para relajarme. A ver si las cosas se calman a mi alrededor y sigo con mis cosas...
Soy indeciso... ¿o no?

ethernet

 Yo ahora mismo estoy programando una aplicación con window forms en managed c++ para la creación de contenidos procedurales. Es una especia de  werkkzeug1 (http://www.theprodukkt.com/werkkzeug1.html#download ) pero no al nivel de farbrausch claro. Podeis ver algunas imagenes en mi weblog (ver firma) aunque la cosa ha avanzado bastante, supongo que subiré imágenes de la última versión dentro de poco.

Por otra parte el trozo de código que me está machacando la cabeza últimamente es el siguiente:

Para serializar una estructura es fácil, símplemente es meter los datos en memoria de esta forma


struct foo
{
int a,b;

void Serialize(int *data, bool rw) //si rw == true lee
{
  if(rw)
 {
     *data++ = a;
     *data++ = b;

 }
 else
{
     a = *data++;
     b = *data++;

}
}



EL problema viene cuando tengo algo así:


class A
{
int a;
virtual void serialize(...)
{
}
};

class B: public A
{
int b;
void serialize(...){}
};

void main()
{
   int *data= new int[1024];
   A* a = new B;
   a-> serialize(data,false);
    GuardarDatos(data);
    int *data2 = CargarDatos();
    // Aqui viene el problema, como hago para generar una clase B a partir de esos datos
    // sin tener que hacer que todos los objetos serializables deriven de una clase ?

   
}



quizás a alguien se le ocurra algo, yo tengo algunas ideas pero me resultan demasiado complejas.

saludos

zupervaca

 puedes probar esto como solucion:

class ca
{
int a, b;
};

ca a;
int size = sizeof(ca);
char *datos = new char[size];
memcpy( datos, &a, size );
guardardatos( datos, size );


saludos

ethernet

Cita de: "zupervaca"puedes probar esto como solucion:

class ca
{
int a, b;
};

ca a;
int size = sizeof(ca);
char *datos = new char[size];
memcpy( datos, &a, size );
guardardatos( datos, size );


saludos
Lo interesante del tema es precisamente no tener que hacerlo a mano xD

zupervaca

 class ca{};

ca a;
int size = sizeof(ca);
char *datos = new char[size];
memcpy( datos, &a, size );
guardardatos( datos, size );

ca aa;
leerdatos( datos, size );
memcpy( &aa, datos, size );


si no quieres usar el sizeof puedes hacer el truco de indicar una variable al final de las clases como si fuera el final de ella con un valor unico, el truco de esto consiste en que las clases realmente son estructuras de datos y los offsets de las funciones no se guardan con estos asi que puedes hacer memcpys, y demas operaciones de memoria con ellas tranquilamente, la prueba la tienes en que si llamas a una funcion de la clase ca y haces un delete this dentro de ella el programa no reventara, no se si me explico bien o si entiendo bien tu problema  :lol:

saludos

ethernet

 Aja, entiendo lo que dices pero no me refiero a eso. Lo que quiero es hacer lo mismo que estaba haciendo, más o menos con el mismo sistema pero o necesitar saber la clase que he serializado, me explico, vieniendo una ristra de bytes sé que son una derivada de una clase base y quiero exactamente hacer lo siguiente, pero bien hecho (de forma elegante ):



Base* MiClaseBase::serialize(int* data)
{
     int type = *data++;Ç
     switch(type)
    {
       case CLASE1:  
           Clase1* p  = new Clase1;
           p->serialize(data);
           return p;
        case CLASE2:
....
    }
}


tewe76

 Yo sigo con mi miniengine TWSE. En las últimas semanas he introducido mejoras muy importantes. Ahora mismo estoy haciendo un pequeño jueguecillo para que me hagáis un poco más de betatesting, pero de manera más divertida :)
Mi intención es hacerlo en unas pocas horas, así que en poco tiempo espero subirlo.

Si el betatesting es positivo, espero que sí, pues ya me pondré en serio con el primer juego de mi aventura share. Y en unos meses, multimillonario :D
Tewe
www.TAPAZAPA.com : Funny and easy to play games for all ages! - Fairy Match - Brain Crash
www.LaRebelionDelBiberon.com : Experiencias de unos padres primerizos

Pogacha

 Sacando eso ultimo que pusiste (que es lo que yo hago y encuentro imposible de suplantar) intentas hacer un DinamicStreamCast<> o algo por el estilo ... si lo resuelves avisame ...

No se donde terminara la vtable con el metodo de supervaca  :blink: ...

Tyrell

 Aunque mi labor principal es la programación, me estoy dedicando todavía al diseño de nuestro próximo proyecto indy. De todos modos lo haré en blitz3D ...no creo que sea muy interesante para los moteros. B)  






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.