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

#16
General Programadores / añadir DLLs a mi libreria
12 de Noviembre de 2006, 03:20:04 PM
hola, quiero meter en mi libreria el codigo usado de un archivo DLL (de otra libreria) para no tener que depender de ese archivo. ¿como puedo hacerlo desde Visual C++?

¿y legamente se puede hacer?, pertenece a una libreria Open Source.
#17
General Programadores / Fallo En Ode
04 de Mayo de 2006, 11:01:47 AM
 Estoy aprendiendo a usar esta libreria de fisica y me ha surgido un problema al empezar a utilizar los Trimesh. Recibo un error de excepcion en la funcion dCollide, concretamente: Access violation reading location 0x00000008.
He de decir que otros mesh de tipo box, sphere y plane me funcionan correctamente con esta función.

Para simplificar he acabado haciendo un simple triangulo pero sigue dando error en el momento que es llamado dCollide, incluso antes de producirse ninguna colision.

Lo creo asi:

float vertex[3][3]={ 0,0,100, -200,0,-200, 200,0,-200};
int Index[3]={0,1,2};

dTriMeshDataID DataID=dGeomTriMeshDataCreate();

dGeomTriMeshDataBuildSingle(DataID, vertex, sizeof(float)*3, 3,
 Index, 3, sizeof(int)*3);

 dGeomID = dCreateTriMesh(0, DataID, 0, 0, 0);


¿alguien sabe a que puede deberse?
#18
General Programadores / La Libreria Inexistente De Burb
21 de Octubre de 2005, 06:02:57 PM
 
Cita de: "jazcks"para input, si vas a usar opengl, tienes que ver GLUT: http://www.opengl.org/resources/libraries/glut.html
Glut ya lo probe y me parecio una castaña, solo por el hecho de que las teclas solo se podian recibir del buffer de teclado o algo asi, vamos, que al pulsar la tecla habia que esperar el retardo, y la velocidad de repeticion, y no habia forma de saber si una tecla estaba pulsada o levantada.

No se si habra mejorado en estas ultimas versiones o me estoy liando con otra libreria, a ver si tu o alguien que la haya probado me podeis confirmar si tengo razon, aunque yo creo que debo estar equivocado porque no es normal hacer algo tan malo y menos con la descripcion de Sophisticated input devices.

Gracias por la ayuda, todo lo que me pueda servir lo tendre en cuenta. Ahora voy a responder a TheAzazel y a Pogacha, esperad un momento que estoy cargando la escopeta.  (twist)

es coña.
#19
General Programadores / La Libreria Inexistente De Burb
21 de Octubre de 2005, 03:54:54 PM
 Seguro que has aprendido mucho de programacion de juegos, independientemente del lenguaje los problemas suelen ser los mismos, aunque como ya te digo ya tengo resueltos la mayoria (al menos para juegos pequeños o en 2D), ahora..., que de hacer una libreria o algo fumable para cualquier otro programador estoy totalmente pez, por eso queria contar con vuestra ayuda.

dos meses no creo que tarde por supuesto pero espero tener algo terminado dentro de 6, o un año como mucho, tampoco pretendo hacer una libreria como tal si no una especie de lenguaje para hacer juegos lo mas sencillo, rapido y optimizado posible, centrandome en los problemas de tipo logico que se dan pero que no estan resueltos en ninguna libreria.

Lo del OpenXX para input suena interesante, personalmente prefiero no mezclar para no liar mas la madeja, y si uso todo Open pues todo Open, al igual que si usase DirectX intentaria que todo fuese DirectX, y lo mismo con el SDL.

He pensado si la G de GL es de graficos y la A de AL es de audio, el Open de Input deberia ser OpenIL, y si, si que existe, pero no es la I de input si no de imagen, jeje. http://openil.sourceforge.net/, (me podria valer para cargar los graficos)

Entonces ya tengo:

Lenguaje:   C++
IDE:            CodeBlocks
Graficos:     OpenGL
Audio:         OpenAL
Input:         Teclado y Raton. (¿algun Open Input?)
Recursos:   wav y bmp de momento (quizas OpenIL para cargar otros formatos de imagen)

A ver si me puedo apañar solo con esto de momento, aunque todavia he dejado algunas preguntas en el aire por si alguien me puede ayudar.

#20
General Programadores / La Libreria Inexistente De Burb
20 de Octubre de 2005, 07:17:11 PM
 Tiene buena pinta (ole) esto empieza a tomar cuerpo (uoh)
#21
General Programadores / La Libreria Inexistente De Burb
20 de Octubre de 2005, 03:29:43 PM
 Gracias Vincent, ya lo estoy descargando y creo que es justo lo que necesito.
#22
General Programadores / La Libreria Inexistente De Burb
20 de Octubre de 2005, 03:00:36 PM
 
QUOTE (jazcks)

no soy el más indicado en estos temas, pero si quieres hacer un engine porque no haces tu propio juego facilito, tal como dices, arkanoid, pacman, y veras que si lo haces bien tendras una serie de funciones genericas que con poca reforma pueden estar listas más adelante para hacerte una librería o engine...
[/quote]

Si, ya hice juegos tipo arkanoid, columns, matamarcianos, tambien he hecho muchas demos y pijadillas, y tambien cosas en 3D tanto en GL como en DX, la verdad es que he resuelto ya muchos problemas y funciones que se dan siempre en programacion de juegos y ahora me gustaria poder agruparlas (reescribiendolas mejor) bajo una fina capa de llamadas o comandos legibles para que cualquier mortal lo entienda, y en el peor de los casos para usarlas yo para mi

QUOTE (jazcks)

mucha suerte smile.gif, pero siendo realista, reinventar la rueda a veces no sirve.
[/quote]

Seguramente tengas razon, pero de momento me sigo resistiendo a usar librerias que no sean absolutamente imprescindibles. Prefiero inventar la rueda aunque muchas cosas ya las "invente" hace tiempo. La idea es tener el mayor control posible sobre el codigo de la libreria, y es cierto que ya hay muchas cosas escritas y optimizadas  en forma de librerias, pero tambien las hay en forma de codigo fuente, tutoriales, ejemplos, etc.  Intentare aguantar lo que pueda aunque este mas limitado, pero de momento quiero hacer cosas "sencillas" y el arkanoid recuerdo que lo hice casi a pelo en c, programando la vga y el midi en modo ms-dos, por lo que de momento creo que puedo hacer muchas cosas por mi mismo, ya veremos, quizas en el futuro no me quede mas remedio que usar el SDL o alguna otra libreria, gracias por los comentarios y por el animo.

//-----------------------------------------------------------------------------------------------------------------------------//

QUOTE (zupervaca)

tienes la posibilidad de crear los archivos makefile y hacerlo con el block de notas por ejemplo, aunque esto en proyectos grandes puede crearte mucha confusion, la mejor opcion es crear makefile, pero programandolo todo desde un IDE gratuito
[/quote]

¿Como se crean los makefiles?, ¿es mucho follon o hay alguna herramienta para crearlos?, bueno, de momento no lo necesito pero en algun momento tendre que hacerlo, al menos ya se que no tendre que comprarme todos los compiladores existentes en el mercado, y si, me interesa hacerlo desde un IDE gratuito aunque no se cual, quiero que se pueda usar el archivo lib y el de cabecera en cualquier parte, ¿pero debo crear libs separados para cada compilador o con el dll vale?. con el borland recuerdo que tenia que usar el implib.exe para crearlo a veces. La verdad es que estoy bastante perdido en el tema de las librerias.

QUOTE (zupervaca)

no es mejor uno u otra, la estatica es liberada e inicializada automaticamente con la aplicacion y se compila dentro de esta, la dinamica se carga en tiempo de ejecucion y normalmente esta al lado del exe con la extension dll
[/quote]

Yo creo que para el programador es mejor que se incluya en el propio ejecutable que ir a cuestas con el DLL ¿no?, a mi me parece mejor estatica pero no se si tiene mas ventajas que desventajas y cuales son.

QUOTE (zupervaca)

te recomiendo poner el nombre de funciones, clases, y demas objetos en ingles ya que es el lenguaje establecido por el momento, asi llegas a mas programadores y no solo a los españoles
[/quote]

Las clases, objetos y demas historias estan en espanglish a mi manera, pero nadie las va a ver ni le interesan o al menos eso es lo que pretendo, mi idea es que solo se puedan acceder a ellas con funciones especificas que voy a escribir en castellano de momento, y llegado el caso se podria traducir a cualquier idioma del propio archivo de cabecera sin problemas, de todos modos dudo que vaya si quiera a traspasar las fronteras de mi ordenador.

QUOTE (zupervaca)

nunca se sabe, pero mas o menos creo que te convendria mas aprender sdl o utilizar alguna libreria 2d ya creada por algun usuario de stratos, asi aprenderias la forma de organizar las clases etc, con alguna libreria podrias hacer el arkanoid sin meterte en cosas muy complicadas que luego pueden que te hechen para atras y dejes esto de lado
[/quote]

Ya tengo hecho mas o menos la forma en la que estaran estructuradas las clases y la forma de acceder a ellas: por medio de una funcion, un identificador unico del objeto o grupo de objetos, y los parametros necesarios. Ya he hecho bastantes pruebas del metodo a usar por lo que en ese sentido no creo que tenga ningun problema de momento, y el arkanoid como ya respondo aqui ya lo hice, por lo que tampoco me asusta el tema de hacer cualquier juego, de hecho mi intencion es irla ampliando y mejorando a medida que voy haciendo juegos mas complejos. Otra cosa que si me preocupa son algunas funciones especiales sobre todo de carga/descompresion de archivos aunque creo que de momento me voy a limitar al bmp y al wav para no complicarme la vida.

QUOTE (EX3)

Yo he tardado cerca de 5 años en tener mi primera version funcional de mi libreria (en marzo o abril del año pasado). Mientras tanto me tuve que patear bien los tutoriales de una pagina sobre DirectX en VB6 y realizar experimentos sobre dichos ejemplos con ayuda de la documentacion de DirectX y Google, y no sin olvidar las veces que me han ayudado en estos foros (como cuando el tema del z-buffer o el reseteo del device por poner unos ejemplos)
[/quote]

Realmente no quiero hacer algo tan complejo como para tardar tanto, aparte que ya me he pateado libros y tutoriales de programacion durante algunos años, espero tener una primera version en unos meses, aunque estara muy limitada logicamente, me centrare de momento como reto asequible que se pueda hacer pequeños juegos 2D con ella. Quizas donde tengo mas dudas es en conseguir en un futuro que pueda ser usado de una manera sencilla por cualquiera, incluido el tema de la compatibilidad, distribucion, soporte tecnico, mantenimiento, etc. no se donde encontrar informacion al respecto, si hubiera algun libro seria ideal.

Conclusiones de lo que creo que debo usar para una primera version:

Lenguaje:    C++ sin ninguna duda
Compilador: Gratuito ¿Dev-cpp?,¿cuales mas hay?
Graficos:     OpenGL para no depender del DirectX
Audio:         ????
Input:          Teclado y Raton.
Recursos:    bmp y wav, (de momento mejor solo esos).

¿como lo veis?

yo creo que con esto ya puedo hacer juegos clasicos aunque para el audio tendria que tirar de alguna libreria gratuita y multiplataforma, pero a ser posible que sea especifica de audio, que no falle y no me haga la pascua en navidad, si no tendria que usar DirectSound o el Win32. ¿que hago?, no quiero depender de nadie en concreto de momento para reproducir unos simples sonidos, aunque tampoco me voy a poner a programar directamente las tarjetas, ¿hay algun "OpenGL" para audio?.

Voy a hacer una recopilacion de las dudas que tengo ahora para que sea mas facil responderlas, o por si no os apetece leer toda la charla, tambien prestare atencion a cualquier comentario, sugerencia o critica al respecto de lo que quiero hacer.


¿Como se crean los makefiles o como hago para asegurarme que se va a poder usar cualquier compilador existente?

¿cuales son las ventajas y desventajas de usar librerias estaticas o dinamicas? ¿tengo que hacer la lib estatica necesariamente o la crea el programador si lo desea a partir del dll?, ¿como se suele hacer esto?

¿existe algun libro o informacion detallada sobre la distribucion, liberalizacion, comercializacion, etc. de un juego o libreria?

¿que compilador gratuito o IDE me aconsejais?

¿hay algun "OpenGL" para audio?, o, ¿que puedo usar para reproducir buffers de sonido estaticos y a poder ser tambien dinamicos o canalizados?.


Gracias a todos por la ayuda.
#23
General Programadores / La Libreria Inexistente De Burb
19 de Octubre de 2005, 09:41:46 PM
 Buenas, quiero hacer una libreria en c++ especifica para programar juegos (de momento 2D) y me gustaria que pudiera ser usada desde cualquier compilador y ordenador, al menos en windows de momento, pero tengo un monton de dudas, ¿tengo que hacer una para cada uno?, ¿en ese caso tengo que comprar todos los compiladores del mundo?, ¿tengo que hacer tambien una para cada version?, ¿y si sacan una version nueva?,  ¿es mejor estatica o dinamica?, ¿para los graficos DirectX o OpenGL?, ¿y para el sonido que uso en caso de no usar DirectX?.

Bueno la verdad es que tengo un monton de dudas, a ver si sabeis de algunas paginas o libros, o me podeis orientar los que os hayais metido en este berenjenal de querer que algo funcione en todas partes, tambien me gustaria depender lo menos posible de otras librerias aunque de momento tengo claro que usare OpenGL o Direct3D para los graficos.

Las caracteristica principal sera la facilidad para hacer juegos, con la mayor parte de problemas graficos y logicos mas habituales ya resueltos, tambien incluire fisica, colisiones, etc, y todo ello con una sintaxis proxima al lenguaje humano (de momento en castellano), sin necesidad de tener que trabajar con la memoria, clases o estructuras, punteros, etc. directamente. La libreria deberia ser capaz de trabajar con todo ello de un modo amplio, eficiente, seguro y oculto para el programador, ¿lo conseguire?, la verdad es que me daria por satisfecho con que se pudiera hacer de momento un arkanoid, pac-man, tetris, etc.., luego ya se podria ir ampliando.

Bueno, gracias al menos por leerme, estare atento a todas las sugerencias.





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.