Logo

¡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

Temas - shephiroth

#21
General Programadores / Trabajar a nivel de bit en c++
28 de Noviembre de 2006, 08:00:27 PM
Pues eso, que estoy trabajando con lo de las comparaciones, y hasta el momento estoy trabajando con char y array de 8 booleanos.....operando en un entorno pequeño este sistema puede resultar comodo y no demasiado lento.....pero de cara a usarlo en un entorno mas grande y donde cada ciclo de reloj cuenta, el operar a nivel de bit podría dar mayor velocidad al codigo.

Por si alguien lo pregunta, un struct de 8 booleanos tb me lo cuenta como 8 bytes >_<

GRACIAS ^_^
#22
General Programadores / Como guardar comparaciones
20 de Noviembre de 2006, 09:32:53 PM
Buenas.

Lo primero decir que no estoy seguro de haber puesto el titulo correcto, asi que lo mejor será que me explique.

Hasta ahora para comprobar colisiones le daba un cuadrado a cada personaje y comprobaba si un cuadro entraba en el otro. Hace poco en clase nos enseñaron a hacer mapas de karnaugh y luego con MC-Cluskey. El tema viene cuando se me ocurre llevarlo a la practica y en vez añadir un cuadrado a cada personaje se me ocurre la idea de crearle un sistema parecido precalculado para las colisiones.

Estoy poco a poco probandolo en directo en un mini proyecto, aunque aun tengo que solucionar un par de problemas para poder hacer una prueba seria y testear tiempos y asi sopesar calidad/coste.

El problema viene en como almacenar esto, teniendo en cuenta q aqui uso 6 variables, pero llevandolo a un sistema normal podrían llegar a ser (que lo mas seguro lo sean) 8 varibles o incluso mas:
z = (x3 & !x2 & !y3 & y2) | (x3 & !x1 & !y3 & y2) | (x3 & !x2 & y3 & !y2) | (x3 & !x1 & y3 & !y2) | (!x3 & x2 & x1 & y3 & !y2) | (!x3 & x2 & x1 & !y3 & y2);

SALUDOS ^^
#23
Principiantes / En busca de grupo
07 de Noviembre de 2006, 04:33:09 PM
Buenas.

Mande un mp a tirso, pero me dijo que lo colocara por aqui. Cuando se crearon los grupos estaba bastante liado, y ahora que estoy menos liado me gustaría unirme a algun grupo.

Me presento, soy programador de c++ principalmente, he tocado opengl en un minirpg que empece a crearme...consegui crear ventana, empezar a dibujar, un cargador de mapas y mover el personaje, pero no mucho mas xDD. Conozco algo java, aunque no demasiado.

Si algun grupo necesita un nuevo componente, o alguien quiere crear un nuevo grupo, que cuente conmigo ^_^
#24
General Programadores / Cadena de conexion OleDbConnection
11 de Octubre de 2006, 03:16:22 PM
Buenas.

Pues eso, tengo dudas con la cadena que he de usar. Hasta ahora usaba este codigo para conectar con una base de datos access en local:
OleDbConnection ^conn;
String ^conexionstring="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=archivo.mdb";
conn=gcnew OleDbConnection(conexionstring);
conn->Open();

Por necesidad, la base de datos ahora se encuentra en un servidor mysql remoto. Que cadena de conexion debería utilizar??

GRACIAS ^^
#25
General / Peticion
26 de Septiembre de 2006, 01:00:22 AM
Buenas.

Hace ya mucho que no haga esto, espero acordarme de como se hace.....necesito vuestra ayuda. BIEN!!! lo consegui xDD

Veamos, toy en medio de una cosilla y necesito una cosilla, alguien me ayuda??? Bien, como seguramente nadie me habra entendido, me explico:

Tengo un proyecto entre manos, desarroyandolo en windows forms bajo microsoft visual studio 2005 en c++. Demomento todo marcha bien, me he hecho con el entorno y consigo hacer que los monos vuelen.....pero no consigo (o mejor dicho no se hacer) enviarme un correo.

Lo que necesito es facilitar al programa la posibilidad de subir informacion a la red.....ya sea por medio de mail, por medio de alguna base de datos, por medio de un php que enlace con base de datos....alguien me podría aconsejar un poco??

Hace tiempo hice mis cosillas conectando el programa con una base de datos access en local por lo q el problema era mínimo, pero siendo ahora q el programa no va a ser en local y no voy a estar delante, pues me interesa encontrar un metodo adecuado.

P.D: Soy legal, no penseis que quiero hacer cosas raras >_<

GRACIAS ^_^
#26
General Programadores / Buenas. Problemas Con .c Y .h
20 de Noviembre de 2005, 05:20:52 AM
 Muy buenas.

Yo hasta el momento trabajaba en windows. Estaba todo feliz, creando proyectos, con el cpp inicial, y a partir de ahi todo archivos .h, sin problema de ningun tipo, en todas las clases declaradas en los archivos .h no necesitaba incluir nada, y podia acceder a todo........pero recientemente (weno, llevo ya casi dos meses) empece a portarme y a aprender en linux. Aqui empezó mi debacle.

Buscando informacion vi que todo estaba en archivos .c (fuente) con sus respectivo .h (cabecera). Encontre informacion sobre os archivos makefile, y me cree el makefile para mi proyecto. Todo pintaba de perlas. El archivo principal cpp con todo junto, genial, todo funcionaba. He separado algunas cosillas en sus archivos .c y .h correspondientes, donde apilaba funciones propias de similitud uso (en uno las funciones para hacer MD5, en otro las funciones para abrir diferentes tipos de imagenes, etc....). Por ultimo llego el problema, un archivo .c y .h que utiliza funciones de otros archivos y del cpp principal. Me saltan errores por todos lados, y termino de enterarme como hacerlo.

Despues de explicaros un poco el problema por encima, paso a explicarlo un poco mas "graficamente":

ventana.cpp [Archivo principal]

#ifdef WIN32
...
#else
...
#endif //Incluyo opengl y las basicas del compilador

struct datospantalla;
void main();
void bucle();
void crearpantalla();
void render();

#include "linuxdef.h"
#include "windef.h"
#include "eventosBase.h"
#include "eventosPintar.h"


Weno, no quiero hacer esto mas grande de lo debido. Basicamente, en la clase eventosPintar utilizo la funcion render().....pero claro, no me la da valida >_<

Lo primero que pense seria un #include "ventana.cpp" pero me resulta un poco lioso y no he querido ni intentarlo. En el makefile tengo establecido q ventana.cpp es el principal, y q para codifiarlo primero tiene q crear eventosPintar.o, entonces no es logico q en eventosPintar.c se necesite de ventana.cpp........

Pues eso, q necesito un poco de "Orientacion Basica" en como organizar mis proyectos ^^;

GRACIAS  
#27
General Programadores / Problema Con La Clase
02 de Noviembre de 2005, 02:15:59 PM
 Buenas, primero les presento mi codigo:


class dll_struct
{
private:
char* MD5;
char* nombre;
int num;
static int contador;
public:
dll_struct(char* n, char* m)
{
 MD5 = (char*)malloc(sizeof(char)*(strlen(m)+1));
 nombre = (char*)malloc(sizeof(char)*(strlen(n)+1));
 strcpy(nombre,n);
 strcpy(MD5,m);
 num = contador;
 contador++;
}
char* getName()
{
 return nombre;
}
char* getMD5()
{
 return MD5;
}
bool compare (char* n,char* m)
{
 if ((strcmp(nombre,n)==0) && (strcmp(MD5,m)==0))
  return true;
 return false;
}
};
int dll_struct::contador = 0;
class dll
{
private:
std::vector<dll_struct*> libs;
public:
dll(){}//libs.resize(100);cant=0;}
void add (char * nombre, char * MD5)
{
 if (! existe(nombre,MD5))
 {
  dll_struct * nuevo = new dll_struct(nombre,MD5);
  libs.push_back(nuevo);
  printf("MD5:%s NOMBRE:%s\n",nuevo->getMD5(),nuevo->getName());
 }
}
void show()
{
 for (int x=0;x<libs.capacity();x++)
 {
  printf("%03i) MD5[%s] MODULO[%s]\n",x,((dll_struct*)libs[x])->getMD5(),((dll_struct*)libs[x])->getName());
 }
}
bool existe(char * nombre, char * MD5)
{
 int x;
 dll_struct * objeto;
 for (x=0;x<libs.capacity();x++)
 {
  if (((dll_struct*)libs[x])->compare(nombre,MD5))
   return true;
 }
 return false;
}
};


el main seria este



int _tmain(void)
{
dll * nuevo = new dll();
nuevo->add("chocolate","q");
nuevo->add("chocolate","w");
nuevo->add("chocolate","e");
nuevo->add("chocolate","r");
nuevo->add("chocolate","t");
nuevo->add("chocolate","y");
nuevo->add("chocolate","u");
nuevo->add("chocolate","i");
nuevo->add("chocolate","o");
nuevo->show();
return 0;
}


Basicamente voy introduciendo parejas de cadenas.....pero por alguna razon que aun no conozco (por eso vengo a preguntar) en la funcion de dll_struct::compare me salta un error de puntero no inicializado. He debujeado un poco, y al parecer en la llamada "(((dll_struct*)libs
  • )->compare(nombre,MD5))" siendo x=0 y la capacidad 6, es cuando da el problema.

    Alguien sabe a que puede deberse????
#28
General / Ayuda...
29 de Agosto de 2005, 12:30:26 AM
 Muy buenas.

Hace poco he comprado un portatil, me lo han dado con un windows xp home, y se que directamente le voy a dar una patada a ese sistema operativo. Aprobechando he estado pensando en instalarme linux y ademas de ir cogiendo el truco a linux a este sistema aprobecharé para adoptar el codigo a linux.

Por encima he visto q tengo 2 problemas fundamentales:
- Que programa me recomendais para programar?? En windows normalmente uso el .net, pero si me recomendais uno que sea por comando de linea no tengo problema.
- Como se crean y se gestionan las ventanas de linux?? El bucle de mensajes de windows existe en linux, o como va el tema??

P.D: No va al tema, pero me estoy bajando la ultima version del DEBIAN (debian-31r0a-i386-binary), q opinais del mismo??
#29
General Programadores / Un Problemilla
29 de Julio de 2005, 12:47:24 AM
 Buenas.

Con un post reciente me replantee algunas cosillas, y me ha surgido este problema. Hasta ahora utilizaba std::vector con clases unicas por lo q no tenia problema. Actualmente se me ha complicado la cosa. Tengo algo como esto (abreviando):


class a{public:virtual void draw(){}};
class a1:public a{void draw{}};

std::vector <a> listado:

a   *dos = new a1();

listado.push_back(*dos);
((a)listado[0]).draw();
dos->draw();


La primera llamada (usando std::vector) omite la funcion virtual, ejecuta a::draw.....mientras q dos->draw ejecuta lo q quiero, a1::draw

Alguien sabría como utilizarlo???

Si no se puede, en a::draw podría hacer un switch, cast y llamar a draw, pero ademas de q sería llenar el codigo de defines y un largo switch, enlentecería el código.....se puede decir que en cada bucle del programa pasaría unas cuantas veces por eso (demomento llevo 2, pero se puede extender hasta 10 segun avance con el programa ^^;)

GRACIAS!!!
#30
General Programadores / Texturas En Opengl
19 de Enero de 2005, 12:53:38 AM
 Muy buenas.

Trabajo sobre c++ y actualmente bajo opengl.....no estoy utilizando ningun motor, puesto que antes de utilizar una librería creada por otra persona me gustaría intentar hacerlo por mi mismo para saber si soy capaz de lograr el mismo efecto (menos bonito, menos rapido......pero el mismo efecto xDD).........y me encuentro bajo un problema.

Tras buscar mucha info por inet la mejor manera de manejar un mapa en 2d es mediante tiles........dejando de lado el como almacenar el mapa, me tiene bastante preocupado como hacer esto de los tiles desde el punto de vista gráfico. En la mayoría de las paginas comentan el hacer un bitmap con muchos tiles y por codigo leer solo el tile q necesite.......en todas las paginas que hay codigo lo hacen bajo VB+dx y encontrandome en c++ y opengl no encuentro nada de informacion.

Alguien me podría explicar como teniendo un archivo mapa.bmp (o mapa.tga en mi caso) puedo crear 16/64 texturas diferentes, cada una con un unico tile???? La memoria utilizada para las texturas es la misma, pero el manejo de las mismas es muy diferente.

GRACIAS ^^
#31
General Programadores / Programar Un Reproductor De Video
19 de Noviembre de 2004, 12:40:34 PM
 Muy buenas.

Me gustaría saber si alguien conoce de algun link o algo para aprender a codificar video. Hace tiempo hice la pregunta y me dieron la solucion de usar SDL+mpeg, pero definitivamente me resulta imposible. Si alguien conoce de algun link para utilizar divx o xvid se lo agradecería ^^

GRACIAS ^^
#32
General Programadores / Manejar Funciones
30 de Octubre de 2004, 12:17:31 AM
 Muy buenas

A llegado un momento del proyecto en el que me gustaría que una funcion pudiera recibir como argumento una funcion, para que cuando fuera necesario esta pudiera ser llamada.

Por ejemplo, quiero crearme una clase que produzca eventos dentro del programa......cuando pulse la tecla R que llame a tal funcion, cuando pulse con el raton en esta posicion llamame a tal funcion........ya se que para estos casos lo mejor es irse al callback de la ventana y meter la mano ahi, pero me interesa crear una clase parecida a la que comenté arriba. Que tenga la posibilidad de recibir funciones e invocarlas cuando sea necesario.

GRACIAS.
#33
General Programadores / Problemas Con Variables Globales
13 de Octubre de 2004, 11:19:10 PM
 Buenas.

Me imagino que la pregunta q voy a hacer os parecerá un poco chorra, pero nunca me hicieron falta hasta y me salio la duda.

Tengo problemas con este tipo de variables, pues son globales solo en el mismo archivo.

QUOTE ("programa.cpp")

int variableglobal;

void main()
{
....
}
[/quote]

QUOTE ("diseño.cpp")


void hacerloquesea()
{
variableglobal=1;
}
[/quote]

Al compilar me dice que en diseño.cpp la "variableglobal" no esta declarada.

Alguien me puede explicar que estoy haciendo mal?? (VC++.net 2002)

GRACIAS.
#34
General / Modularizar Los Programas
06 de Octubre de 2004, 09:31:06 PM
 Muy buenas.

Lo primero explicaré el titulo. Yo tengo un pograma dispuesto en modulos. Demomento cada modulo lo estaba "codeando" en un .c y .h diferentes. El programa se va a ir haciendo bastante grande y me gustaría separar los modulos cada uno en su proyecto.

Habia pensado crear una dll por cada modulo, y el programa principal que fuese el que gestionase todo....en principio todo bien. Tras hacer un backup para no perder datos me meto al .net, creo un proyecto "Biblioteca de clases c++ administrada" (Biblioteca de clases que utiliza Extensiones administradas para C++.) que creo q es el que necesito, configuro todos los proyectos para que crees las dll en la misma carpeta y creo q el exe para que llame a las dll........ejecuto y funciona todo perfecto, exactamente igual q si no existieran dichas dll.....el problema vino por otra parte......el ejecutable anterior ocupaba unos 100 Kb en Release.......y cada uno de los dll ocupan 64Kb.......no me puedo permitir que el proyecto salte de 100 Kb a 400Kb si no me ofrece mas ventajas que inconvenientes........

Ahora la pregunta es..........crar dll ofrece ventajas que demomento no se ven, pero conforme aumente el proyecto se harán visibles?? Hay alguna otra manera de modularizar el programa que desconozca??

Hay otra que aunque no tiene q ver con el proyecto, tiene mucho que ver con el tema en sí. Hace un tiempo lei que los archivos .dll eran muy poco seguros, que era mejor crear archivos .ocx (creo q asi eran).........no le di mucha importancia, pero ahora me salta la duda.......que sabeis del tema?? es un bulo?? no compensa??

GRACIAS
#35
General / Necesito Ayuda
22 de Septiembre de 2004, 01:15:56 PM
 Muy buenas.

Hasta ahora haciendo mis pequeñas cosillas en casa utilizaba  una base de datos access, puesto q me da la facilidad de hacer consultas estrañas directamente en la base de datos, y desde el programa puedo hacer referencia a esas consultas como si de tablas se tratasen. Pero ha llegado un momento que tengo que "desatarme" de esta conexion con access........alguien me podría indicar algun manual, link o referencia, a como incluir una base de datos en mi programa??

La verdad q la base no es pequeña, si quereis os cuelgo las relaciones.

Gracias de antemano ^^;
#36
General Programadores / Duda Con Opengl Y Textura
21 de Julio de 2004, 04:52:19 PM
 Muy buenas.

En mi programa demomento consigo cargar texturas, mostrarlas etc......pero ahora necesito crear un efecto especial.

Digamos q tengo 2 texturas y 1 color. La primera textura me sirve de guía. En esta hay dos colores y trasparencia........donde se encuentra el primer color quiero que obtenga el valor de la misma posicion de la segunda texura, y donde se encuentra el segundo color quiero q aparezca el color que dan.......alguien sabría decirme como lo hago?? Tengo que hacerlo una vez estan en textura o antes de texturizar??

En principio tengo una funcion que carga y hace textura directamente, devolviendome una estructura en la q tengo datos sobre el ID de textura, el tamaño y la profundidad.

Agradecería todas las sugerencias  (ole)

GRACIAS
#37
General Grafistas / Necesito Unos Cuantos Grafos
08 de Julio de 2004, 04:31:39 PM
 Muy buenas.

Hace un tiempo se abrió un post en el que un grafista se ofrecía a hacer unos cuantos grafos. Al final el post se abandonó.......

Ahora vengo en ayuda de grafos, pues necesito unos con urgencia. A finales de mes en la campus pt lo mas seguro presentaré un juego, y necesito unos gráficos que poder mostrar a la gente xDD

Si alguien se ofrece voluntario, necesitaría lo básico, un pueblo, 2 o 3 casas, 2 o 3 caminos, y 1 castillo. Luego vendrían los tipicos grafos de enemigos, personajes, equipo y demas.

.........vale, despues de leerme creo que no es tan básico, pero si alguien me pudiera hacer el favorcillo......

GRACIAS ^^;

EDITADO: Ahora q me doy cuenta, el juego es 2d, una vision desde arriba, típico zelda, pokemon, final fantasy 5 y 6, etc....
#38
General Programadores / Matrices Un Poco Raras
09 de Junio de 2004, 10:09:22 AM
 Muy buenas. El tema de hoy, matrices, pero un poco raras. Veamos, en mi proyecto estoy pensando hacer una matriz un poco rara (por lo menos para mi). Veamos, yo se hacer una matriz de todo numeros, todo texto, o todo bool.............pero como hago una matriz que combine???

Basicamente quiero hacerme una minibase de datos. Para windows no tendría problemas, podría usar el .net y usar los DATASET y conectarlo con bases de access. Pero para llevarlo a otras plataformas, jodida esta la cosa.

Por esta razon me voy a crear una clase a la medida xDD. Para esto necesitaré muchas matrices, pero claro, una matriz (una tabla) puede tener valores numericos, texto o booleanos (entre otros, aunque estos son los q mas interesan).

Como puedo crear estas matrices?? Por ejemplo, una matriz de 3 columnas, la primera numerica, la segunda booleana, y la tercera de texto(50 caracteres)

GRACIAS ^^
#39
General Programadores / Necesito Pagina Web Xdd
16 de Mayo de 2004, 12:23:29 AM
 Wenas. Toy haciendo un tutorial de hacer cierto tipo de videojuegos (rpgs), pero no tengo sitio en inet para poderla colgar. Si alguien q disponga de sitio y este dispuesto a dejarme meter mano que me mande un mensaje privado o me responda por aca xDD

GRACIAS ^^
#40
General Programadores / Un Poco De Ifs Y Bools
26 de Abril de 2004, 01:28:02 PM
 Buenas. Estoy haciendo un 2d en tiles en c usando opengl, pero esa no es la cuestion de la pregunta. Hay en un punto que he de optar por usar muchos ifs, o evaluar antes unos pocos bools, y luego hacer un if tocho. Pa que se vea más visual:


if (1=1){
if (2=2){
if (3=3){
return false;
}else{
if (5=5)
return false;
}else{
if (7=7)
....

ó

a=(1=1);
b=(2=2);
c=(3=3);
d=(5=5);
e=(7=7);
if ((a && b && !c) || (a && b && c && e))
return false
return true


No he puesto mucho porque no se me ocurria, y porque no quiero llenar esto de ifs, pero creo que la idea se quedo reflejada. Este es un codigo que mi programa ejecuta multitud de veces en cada frame, por lo que una milesimas de diferencia en este codigo podría acelerar o decelerar mucho el programa.

Alguien me podría guiar en este tema??

GRACIAS.





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