|
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.
Mensajes - [EX3]
1
« en: Miércoles 4 de Abril de 2007, 18:35 »
el que uds no sepan manejar hilos es otro tema, para algo estan la variables globales como ej.. ademas he corrido hasta 6 hilos sin problemas en una P3 770 Mhz 128 de ram ... con winxp ... Genial, yo logre 16 hilos en un programa mediante cronometros de sistema en un Pentium 2 400 mhz y para colmo escrito en Visual Basic 6.0, lenguaje que no se lleva nada bien con la programacion multihilo. Beneficio? Ninguno, mas consumo de procesador y menos control del codigo ejecutado (y en mi caso, peor organizacion de codigo ya que desde VB 6.0 ni si quiera puedo lanzar funciones de clases en hilos paralelos lo que no me permitia la reultilizacion de codigo) el doble nucleo y hiperthreading no tienen nada que ver en lo que decia ya que el so reparte el acceso a los recursos, ademas no consumen tanta maquina... caso que debas pausar uno tenes un Suspend o mediante una variable global haces un Sleep, no es tanto el drama de los hilos.... Para nada, claro. El drama se resume en que pierdes la eficacia y el beneficio de la ejecucion separada por hilos al hacer las pausas. Al final acabas obteniendo el mismo resultado que ejecutaras un solo hilo pero complicandote la vida y gastando mas procesador. Eso en una consola quizas de igual ya que tienes el/los procesador/es dedicados totalmente al juego y no a centenas de programas en segundo plano. si uds no lo saben usar, cosa suya, a mi me sirvieron de 10.... y lo secuencial si bien es seguro es mas embrollado para mi ...
yo divido todo en funciones aparte y es mas facil... por que sino te queda un while mas grande que la mierda y ademas de que es poco viable si alguna funcion es bloqueante .......... Si programaras con clases y objetos no te quedaria un While tan grande como dices. El while principal de mi motor no supera las 3 lineas contando la declaracion del propio bucle ya que solo efectua dos llamadas, una al metodo principal de actualizacion de logica del motor y otra al metodo principal de dibujo. Estas a su vez no llegaran a las 10 lineas ya que solo ejecutan sus respectivas llamadas a los metodos Update() y Draw() en un bucle For/Next por cada familia de objetos (tiles de la escena, entidades y gui). Queda como resultado un codigo jerarquico entre clases que es facil de seguir o trazarlo sin necesidad de ejecutarlo tan si quiera. Dudo mucho que amontonar funciones en hilos separados sea tan claro como esto. En serio, el unico que esta demostrando no tener mucha idea de programacion multihilo, nula idea sobre la diferencia de consumo en sistemas monoprocesador frente a los multiprocesador, y la falta de organizacion de codigo a la hora de programar me temo que eres tu. Harias bien en leerte unos cuantos libros sobre el tema antes de dartelas de guru frente a los novatos, amigo, por que solo logras confundirles.
3
« en: Martes 20 de Marzo de 2007, 21:31 »
hace esto :
usando el tiempo muerto con un timer .... usando hilos ..
asi animas los dos objetos lentamente al mismo tiempo en este tema puse como hacer estop de los hilos : http://foros.solocodigo.com/index.php?showtopic=24793 si aun asi no lo logras adaptar, avisame, que te enseño.. ya que no hay juego bien hecho que no use hilos ... Los unicos juegos que aprovechan programacion multihilo son en las consolas multiprocesador actuales como la xBox 360 y la recien PS3. Ningun juego comercial para PC o consola monoprocesador implementa multihilo para todas las tareas y raro es el caso que lo usan para la IA, y esto ultimo en juegos muy recientes y que solo funcionan bien aprovechando los procesadores de doble nucleo y similares, los unicos sistemas multiprocesador que veras en PC para el hogar por el momento. Los juegos se programan estructuradamente y en secuencias de ciclos, donde se puede controlar la coherencia en la actualizacion de los valores de cada objeto o proceso del juego. Implementar un juego todo a base de hilos no solo lo haria inestable y complicado de programar (se nota que no has programado mucho en multihilo) si no que ahogarias al procesador (recuerda que tu juego corre junto a mas programas y procesos del sistema operativo). La programacion multihilo como ha comentado Juank se usa para operaciones puntuales pero que necesitan cierta prioridad frente al hilo principal del programa. Para lo unico que uso yo multihilo en mis proyectos es para los tiempos de carga donde alojo la carga de archivos en un hilo y la pantalla de carga animada en el principal actualizandose independientemente para que se vea fluida, pero uso un hilo, no 300. Salu2...
4
« en: Lunes 5 de Marzo de 2007, 21:47 »
Infinidad, mi sugerencias es que no le prestes mucha atención a comentarios negativos, estos solo sirven para bajarte la moral y no llegaras a ver lo que en realidad podrias hacer. Comentarios negativos en absoluto, realidad pura y dura. Se trata de conocer simplemente cuales son nuestras limitaciones acorde a nuestros conocimientos, el saber aplicarlos y la experiencia que se tiene. Llevo años en los foros de stratos-ad viendo pasar a gente sin parar soñando con hacer el juego del siglo mezcla de wow + gt3 + quake + final fantasy o cosas mas extrañas y extravagantes que se le ocurren a cada uno, y generalmente son el tipico chavalin de 15 años saturado de horas de jugar con su play2 o el ordenador y que piensa que programar un juego es coser y cantar y que en dos meses lo tendra terminado. Eso no es asi ni de lejos. Si el chaval viniera diciendo que quiere hacer su propio Zelda como el de SNES por ejemplo pues si le hubiera animado ya que un juego semejante lo veo mas factible de programar incluso para una sola persona dado que o bien hay juegos ya hechos o tutoriales en la red en los que se puede basar para aprender como hacerlo o inclusive si no quisiera o supiera programar tiene herramientas como RPG Maker. Al igual encontrar material grafico para un juego asi es mas facil dado la popularidad de este genero. Todo es variable es solo echarle ganas y seguir adelante sin importar lo que digan. Solo te recomiendo que luches por tu causa y vayas buscando el personal que te va a ayudar. Me parece cruel dar esperanzas a alguien para que continue con un proyecto semejante que se le queda grande por todos lados inclusive a todos nosotros y que solo acabara en un fracaso que le desmoralizara mas aun si cabe en vez de animarle a llevar a cabo una idea mas sencilla y viable a sus conocimientos y posibilidades. Si Infinidad cree que es capaz de llevar a cabo proyecto semejante que lo demuestre minimamente con hechos, bien con proyectos anteriores que haya desarrollado o bien con pequeñas demostraciones de sus conocimientos, y no con ideas sobre papel. Asi es como se busca colaboradores, asi es como se demuestra la viabilidad del proyecto, y asi se logra dar seguridad a la gente para unirse a un proyecto, no con humo y sueños. Salu2...
5
« en: Domingo 4 de Marzo de 2007, 23:35 »
Codigo compatible con XNA (SIIII, hay forma ams o menos facil para jugarlo en la xbox 360) Mucha falta de informacion veo referente a XNA en mucha gente cuando se refiere a desarrollar para la xBox 360. Desarrollar codigo para la xBox 360 requiere primero subcribirse al XNA Creators Club por 99$ anuales. Despues, si quieres compartir el juego desarrollado solo lo puedes hacer con el resto de los subcriptores de la XNA Creators Club y no los binarios si no el codigo fuente, ya que para que un juego de XNA funcione en xBox 360 este primero debe ser firmado digital y exclusivamente por unos servidores de Microsoft para tu consola, todo el procedimiento es online, lo que quiere decir que el binario firmado no funciona en las demas consolas. Dicho esto, si no tienes problemas en compartir codigo fuente y limitarte solo a la gente del XNA Creators Club amen aparte de pagar 99$ para ello, tu mismo, pero yo no lo veo tan factible como desarrollar para Windows donde llegas a mas gente, sin la obligacion de compartir codigo fuente ni hacerlo exclusivo de cada consola y sin pagar 99$ anuales. Otro tema, de poder hacerse, creo que los juegos online de XNA en xBox 360 solo podrian comunicarse con servidores exclusivos de xBox Live!, y ni si quiera se si contratan servidores asi como asi a desarrolladores amateurs mas que nada por el coste de mantenimiento y demas gastos que oviamente un desarrollador amateur no puede cubrir. Esta, es la china mas grande que te puedes encontrar en el zapato a la hora de embarcarte en un proyecto multiplayer masivo online, y no la unica, no supones lo que debe ser programar el modulo de comunicacion online tanto la parte cliente como la de servidor del juego, verdad? Amen a todo este tema, seria interesante que antes de pedir colaboracion para un proyecto tan ambicioso comentaras que experiencia tienes desarrollando proyectos similares, ya que la gente lo que menos ganas tiene es de perder el tiempo en el tipico proyecto que nunca pasa de la fase de desarrollo inicial, lo que ni si quiera es fase alpha (que seria ya una version encaminada a lo que se busca en la final). Este trabajo sera muy recompensado en cuanto alcancemos la fase beta, en ese momento implementare el motor MMORPG, para que los quie quieran jugar, tengan que pagar, y ese dinero se repartira entre todos nosotros (calculados unos 500-1000 al mes cada uno en un equipo de 10 en cuanto el juego salga a la venta de forma oficial y pasados 6 meses, hecho el estudio con gestoria) Como si publicar y comercializar un juego fuese vender churros. Poco metido estas tu en el tema de la industria del videojuego me temo. Un proyecto como el que propones, sin experiencia previa en la industria, tendrias que sudar tinta para que una distribuidora se quisiera arriesgar a ello. Y eso de mantener el sueldo con lo ganado por los que quieren jugar, mucha publicidad y buena calidad debera tener el juego para que la gente que no os conoce se decidiese pagar por ello, lo que requiere mucho dinero tambien. En pocas palabras, comercialmente es un proyecto imposible para un desarrollador amateur a no ser que tenga millones en el banco. Salu2... P.D.: Con la de juegos sencillos y divertidos que se pueden llevar a cabo sin muchos problemas con experiencia limitada y sin recursos apenas y las ganas que tiene la gente de perder el tiempo con cosas que les sobrepasan, no lo entender jamas, en serio, sangre fria hace falta antes de planear un proyecto y las ideas bien claras.
6
« en: Viernes 23 de Febrero de 2007, 02:08 »
3ero. No se que virus habras echo vos que te lo detecta pero te comento que lo que hize no es detecatado No se si sabras que muchos antivirus actuales no solo se limitan a vigilar contra virus si no tambien contra malware vigilando las entradas al registro de windows y los archivos que se tocan en los directorios del sistema. Eso quiere decir que tu "juguete", por que no se puede llamar ni si quiera intento de virus, seria detectado por el antivirus de turno o por la herramienta antimalware de turno (el TeaTimer de SpyBot:S&D o el nuevo Windows Defender por ejemplo) o simplemente, si el usuario que cometiera la absurda estupidez de ejecutar tu programa desde una cuenta de usuario, que no de administrador como suele ser por defecto, le petaria el programa dado que como usuario no tendria privilegios para escribir en el registro de windows ni borrar archivos del sistema o que esten fuera de los directorios del usuario. Por ultimo, tu programa no correria oculto dado que tendria que ejecutarlo el usuario para ser lanzado y seria visto por el administrador de tareas de Windows, lo que quiere decir que ni si quiera es un virus lo que intentas hacer (dado que un virus suele ser autonomo en su ejecucion) si no un troyano y tampoco lo seria en verdad, ni si quiera un gusano ni nada. Por ultimo, solo un estupido preguntaria publicamente como hacer un virus en un foro y mucho menos decir que y como lo hace mostrando codigo. P.D.: Con lo facil que hubiera sido borrar el thread y banear al usuario, con este tipo de gentuza no me lo pienso si quiera.
7
« en: Martes 19 de Septiembre de 2006, 20:50 »
Pues mas o menos lo que he comentado. Quisiera saber como podría controlar dos ratones o joysticks a la vez, preferiblemente en Windows y C/C++, aunque se aceptan otras soluciones. Mas de un raton lo veo dificil (no digo imposible por que no estoy seguro) pero joysticks o gamepads si se puede. Yo tengo implementado en la dx_lib32 soporte para lectura de multiples dispositivos de juegos (joysticks, gamepads, ...) a traves de DirectInput. Es facil, si sabes como implementar la lectura de un joystick sabras implementar tantas como quieras, simplemente tendras que listar primero cuantos dispositivos estan conectados e inicializarlos. Despues tendras que tener un array donde almacenes la estructura de datos con la informacion de lectura de cada dispositivo y en la funcion de lectura de dispositivos leer los valores de cada dispositivo que tengas en tu lista. Despues para leer los valores solo tendrias que leer el elemento que quieras en la lista y sus propiedades. Salu2...
8
« en: Lunes 11 de Septiembre de 2006, 01:15 »
¿Activaste el uso del teclado? Si no tienes un control de 360, en el archivo "GamePadHelper.cs" dentro de la carpeta "Common", la primer línea es: Hay que quitar el comentario para poder usar el teclado (por cierto, en el ejemplo pusieron un arreglo de teclas bastante incómodo , hay que cambiarlo). Fijate que cosas, jeje, tendre que mirar esto que ni se me habia ocurrido buscar ahi Por cierto, alguien ha hecho alguna cosa interesante en el XNA y que haya logrado andar sin problemas? Yo aun estoy medio explorando el tema y decidiendo si asentarme en el o volver al port de mi libreria de VB 6.0 a .NET (C# 2.0 + MDX 1.1) con todo lo que esto conlleva de tiempo y desarrollo, claro, aunque el XNA y el tema de los componentes es algo muy interesante en cuanto a reutilizacion de codigo para generar herramientas de creacion de niveles por ejemplo, algo que ahorraria mucho tiempo a la hora del desarrollo del juego. Estoy con un experimento relacionado, a ver si logro que ande y mas adelante os cuento. Salu2...
9
« en: Martes 5 de Septiembre de 2006, 02:26 »
Este a diferencia de DirectX creo que esta en C en vez de C++, y al igual que DirectX, posiblemente algun modulo en ASM.
Salu2...
10
« en: Martes 5 de Septiembre de 2006, 02:24 »
Oviamente, como cualquier cosa de este estilo, C++, y de seguro algun modulo concreto tire de codigo Ensamblador (ASM) para lograr algo mas de optimizacion.
Salu2...
11
« en: Martes 5 de Septiembre de 2006, 02:22 »
Recuerden que se trata de una BETA (la primera encima ) y es posible que haya cosas por pulir todavia (seguro). Sobre el error de inicializacion, cierto, era lo del Multisampling (nos pasa a todo el mundo por lo visto), y sobre lo de que no os pinta los sprites, a mi, con una GeForce 3 Ti 200 (SM 1.1) el unico problema que tuve es que no lograba aplicar bien el Colorkey o las transparencias si el grafico las tenia (que era el caso, un PNG con mascara), pero era por que no lograba acceder al objeto RenderState, que despues de mirar el codigo del SpaceWars (que por cierto, no logro pasar del menu) he visto que esta ubicado en el objeto Device y que no hace falta declarar un objeto para usarlo, y por falta de activar algunos estados no se me transparentaban los fondos, pero verse se veia bien la imagen. Instalasteis antes la ultima version de las DirectX9, las de Agosto? Voy a seguir trasteando un rato a ver si logro hacer alguna historia mas, que me estan entrando ganas de comenzar a portar lo que llevo de mi proyecto del juego a XNA Salu2...
12
« en: Sábado 2 de Septiembre de 2006, 20:50 »
Genial, el unico ejemplo de un juego que trae la beta y me da errores xDD (alguien mas le falla o soy el unico afortunado? ) Lo he mirado muy por encima (recien instalado) a traves del explorador de objetos su escasa documentacion, que aun siendo escasa trae algunos tutoriales de iniciacion, y la verdad, tiene pinta de estar la mar de completo, estructurado y unificado (por no decir algo mas lioso... al menos al principio). Trae librerias para cubrir muchas funciones que antes soliamos hacer a pelo como deteccion de colisiones por ejemplo, o simplica la creacion de recursos como texturas o la creacion de los devices, etc... Me esta empezando a picar el gusanillo Quizas con algo de tiempo me ponga a probar algo en 2D si me aclaro un poco con el tema. Alguien mas que haya probado la beta? (y a poder ser mas a fondo que yo xDD) Salu2... P.D.: Echar un ojo a este video que demuestra el potencial del uso de componentes en XNA XNA Video Demo ( http://learnxna.com/)
13
« en: Jueves 24 de Agosto de 2006, 03:41 »
Para Windows no he visto ninguno que use OpenGL, excepto el SuperTux, pero no es comercial. Que tal la saga Quake (incluyendo el Quake 4) y Doom3 entre otros muchos ajenos a ID Software? el primer Unreal, Half-Life 1, un largo etc... Por cierto, echar un vistazo a lo comentado acerca de este mismo articulo en otro foro: http://www.stratos-ad.com/forums3/viewtopic.php?t=7246Salu2...
14
« en: Viernes 18 de Agosto de 2006, 00:51 »
Y que pasa con Play Station? ¿No siguen con C++? Creo qeu a Sony les da por las "~@#@$~" el XNA. Oviamente, cada uno barre para su casa. M$ ha desarrollado una herramienta para facilitar y promover el desarrollo de juegos para sus plataformas, al igual que Sony y Nintendo desarrollan sus SDK's para sus respectivas consolas, con sus mas y sus menos frente a lo que pueda ser o deje de ser XNA. Aparte de estos SDK's, algunas empresas del sector, como Climax, tambien crean sus propios entornos de desarrollo de juegos para PC y consolas para ser usados por otras empresas, como el de Tomcat, con el que se puede desarrollar juegos tanto para XBox 360 como para la PS3. Con el han realizado el Moto GP'06 por ejemplo. Cierto es que esta herramienta en concreto no esta al alcance de desarrolladores amateurs. Salu2...
15
« en: Jueves 17 de Agosto de 2006, 23:14 »
0.- Por un lado, no he programado en .NET, pero por lo que se lo bueno de su idea es que da igual que programes en visual basic .net, asp, c# o c++, en cualquiera puedes mezclar código sin problemas. Entonces, ¿porque eres tan partidario de C#? Entiendo que te guste, por lo que se es como Java (ese si lo conozco) y si es así debe ser bastante cómodo de usar. Pero si un programa como XNA STudio y XNA Framework que comentabas que es compatible con .NET, es compatible con todos los lenguajes que soporta, así que no es necesario programar con C#, sino con cualquiera de los que admite .NET. Suele haber mas partidarios de C# por el tema que han comentado, su similitud con C y C++, una sintaxis muy comoda y flexible y ciertas ventajas mas que posiblemente no compartan otros lenguajes como Visual Basic .NET. Yo por ejemplo llevo programando en Visual Basic 6.0 desde hace 6 años por que me resulta muy rapido y comodo para desarrollar, pero en cuanto me quite de encima el proyecto actual mi objetivo es C#, que aunque estoy estudiando ambos lenguajes, Visual Basic .NET y C#, mi experiencia hasta el momento ha sido mas satisfactoria con C#, por su sintaxis mas que nada. Por estas razones suelen dar soporte mayoritariamente a C# que a cualquier otro lenguaje de .NET, pero no quita en principio que una herramienta desarrollada para .NET no soporte el resto de lenguajes. 1.- Por otro lado, la version de .NET express si mal no tengo entendido ahora es gratuita pero no para hacer aplicaciones comerciales que yo sepa. No es que sea un factor importante, pero para un programador que va a hacer aplicaciones, el hecho de no tener que pagar para desarrollar aplicaciones ayuda. Las versiones Express de Visual Studio son totalmente grautitas, tanto para desarrollar con ellas como para comercializar tus desarrollos generados con el. http://msdn.microsoft.com/vstudio/express/support/faq/4. Can I use Express Editions for commercial use?
Yes, there are no licensing restrictions for applications built using the Express Editions. Esta es otra de las razones por las que migrare a .NET de cabeza, y la otra es esta, aunque esta no me dara soporte para gozar de DirectX o Managed DirectX (rama de DirectX para .NET), pero si para SDLy OpenGL (el primer enlace que encontre), para el desarrollo de juegos, pero si me lo dara para desarrollar aplicaciones para sistemas no Windows ya que hay varias herramientas portadas fuera de .NET (aunque cierto es que les queda un poco por afinar el tema de las WindowsForms) Sobre el tema de herramientas como Blitz3D y derivadas, no os comais el tarro con el tema de licencias. Podeis facilmente usar una version pirata para desarrollar tranquilamente el juego, y si la cosa sale bien y se os presentase la oportunidad de comercializarlo solo tendriais que pagar unos 80$ aprox. por una version legal, y no es un precio muy alto ni dificil de amortizar con las primeras ventas. Esto mismo se puede aplicar a alguna otra herramienta adicional y que no sea muy cara. Salu2...
16
« en: Domingo 13 de Agosto de 2006, 19:52 »
Entornos de Programacion 3D:
(...)
- DIV game studio 2 (Dicen que el lenguaje es parecido al C y sus resultados son buenisimos) Lo primero, Div Game Studio no tiene soporte 3D, ofrece un sistema pseudo 3D como el que ofrecian el Doom 1 o el Duke Nukem 3D, denominado modo 8 o 2.5D (pseudo 3D), y que da muchos fallos debido a ciertos bugs del propio sistema implementado en Div a parte de ser un poco limitado. Un consejo muy importante, si pretendeis que la gente juegue a vuestro juego y no tenga que exigirse instalar una version de Windows anterior a Windows 2000 o XP, o bien instalar una maquina virtual con el MS-DOS real instalado os recomendaria no utilizar Div Game Studio para programar el juego ya que este solo soporta MS-DOS. En cualquier caso, teneis una alternativa si buscarais algo tipo Div que seria Fenix, evolucion del Div, multiplataforma (wiwndows, linux, mac, solaris, dreamcast, gp32x...), libre (codigo abierto) y gratis, en continua expansion y con una comunidad muy activa detras de el donde encontrar varias herramientas para trabajar con este lenguaje: FenixWorld. De lo contrario tanto DarkBasic como Blitz son buenas opciones para desarrollar un juego. Bueno, navegando enkontre un programa para ahcer juegos en 3D al estilo de Half-Life, Quake, Max Payne, Tomb Raider.....Y me pregunte, haber si entre todos podemos hacer un juego made in CI.....y aki os los propongo. Sera en un compialdor ke kreo ke nadie conocerta, asi ke de esto sabremos igual kasi todos (a no ser ke haya gente ke ya lo use). Aunke si se notara si programan o no en otros lenguajes (komo pasa siempre). No se como sera de buena y que resultados ofrece pero existe una herramienta, tipo RPG Maker para haceros una idea, para desarrollo de FPS's que no requeriria programacion alguna, aunque tambien la permite por medio de scripts si lo necesitarais: FPS Creator. Aun asi, tener en cuenta que un proyecto de este tipo no es algo facil de llevar a cabo y suele requerir mas trabajo y dedicacion del que parece sin contar que no solo es complicada la parte de programacion sea en el lenguaje que sea si no que la parte de diseño de 3D no es algo sencilla. Aun con todo esto, no voy a ser yo quien os quite la ilusion de intentarlo al menos, quizas descubrais que se os queda grande el proyecto y busqueis algo mas sencillo de llevar a cabo o quizas logreis avanzar, aunque lentamente, pero logreis algunos resultados aunque no el proyecto terminado, pero la experiencia queda ahi. Salu2... P.D.: Además C++ no es dios. yo siempre digo, no es el lenguaje, sino el programador. Amen. Totalmente deacuerdo (y si no que me lo digan a mi programando en el lenguaje que lo hago )
17
« en: Domingo 13 de Agosto de 2006, 19:17 »
Si no tienes impedimento en utilizar una libreria en tu proyecto (quizas buscas hacerlo todo mediante el GDI o las instrucciones graficas del propio Visual Basic, que seria un proceso muy lento dependiendo para que) para trabajar el tema de sprites asi como diversas operaciones graficas de forma comoda y eficiente te podria interesar utilizar la dx_lib32, que aparte de graficos te cubre el tema de sonido y musica, lectura de teclado/raton/joysticks, reproduccion de video y un juego completo de funciones complementarias para diversas tareas. Bajatelo y echa un vistazo a sus tutoriales por si te intersara. Salu2...
18
« en: Miércoles 5 de Julio de 2006, 03:46 »
C# con Directx Administrado tambien tiene lo suyo Diselo a los de Haddd lo bien que les va con su motor de ultima generacion Salu2... P.D.: Recomiendo echar un vistazo a los videos que tienen colgados en la web del motor.
19
« en: Lunes 3 de Julio de 2006, 00:47 »
Siceramente, si vas a programar juegos por simple hobbie, ciertamente si, cualquier lenguaje que tenga acceso a librerias orientadas a tal proposito te puede servir, te lo dice uno que programa en Visual Basic 6.0 y que se programo su propia y modesta libreria, mostrada en mi firma, para desarrollo de juegos en este lenguaje (oviamente hay opciones mucho mejores que este lenguaje, claro ) Aunque cierto es que si vas a hacer algo que necesite potencia o portabilidad C++ es el mas indicado sin duda alguna, al igual que para desarrollo profesional. En definitiva, elige, prueba, compara y decide. Tienes opciones para aburrir Salu2...
20
« en: Jueves 15 de Junio de 2006, 02:09 »
Como lenguaje de desarrollo de juegos 3D Blitz3D es una buena opcion junto a DarkBasicPro y a 3D Game Studio. Sobre librerias 3D tienes tanto Direct3D como OpenGL. Y motores 3D: Sobre experiencia desarrollando algun juego no puedo decirte mucho, ya que por un lado desarrollo en 2D y lo hago sobre Visual Basic 6.0 con una libreria propia basada en DirectX 8.1. Salu2...
21
« en: Jueves 15 de Junio de 2006, 01:54 »
22
« en: Miércoles 14 de Junio de 2006, 01:38 »
Pregunta pues, que tratare de aclararte las dudas (menos portar el codigo a C++ lo que quieras ) aunque comparando con cualquier tutorial de los que encontraras por la red, que algunos son tan basicos que muestran esto mismo de la creacion de ventanas y dibujo basico de poligonos y texturas entre otras cosas, podrias quizas solventar tus dudas. Salu2...
23
« en: Martes 13 de Junio de 2006, 02:12 »
Respondido en el foro de DirectX: enlaceAunque el ejemplo este en codigo Visual Basic es sufiente claro como para portarlo a C++ donde me supongo que estas programando ;-) Salu2...
24
« en: Martes 13 de Junio de 2006, 02:07 »
Te paso un codigo en VB6 para la parte de creacion y configuracion de la ventana, ya sea ventana o pantalla completa: Dim Dx As DirectX8 '// Objeto DirectX. Dim D3D As Direct3D8 '// Objeto DirectGraphics (D3D) Dim D3DDevice As Direct3DDevice8 '// Objeto Device de D3D.
Sub Initialize() Dim DispMode As D3DDISPLAYMODE '// Define el modo de video. Dim D3DWindow As D3DPRESENT_PARAMETERS '// Define los parametros de la ventana en D3D.
Set Dx = New DirectX8 '// Creamos el objeto DirectX. Set D3D = Dx.Direct3DCreate() '// Creamos el objeto D3D.
'// Leemos los valores actuales del modo de pantalla para almacenar informacion: D3D.GetAdapterDisplayMode D3DADAPTER_DEFAULT, DispMode
If ModoVentana Then D3DWindow.Windowed = 1 '// Indicas que el modo es en ventana. D3DWindow.SwapEffect = D3DSWAPEFFECT_COPY_VSYNC '// Refresca la ventana cuando lo hace el monitor. D3DWindow.BackBufferFormat = DispMode.Format '//Formato del modo de video del escritorio.
ElseIf ModoPantallaCompleta Then DispMode.Format = D3DFMT_X8R8G8B8 '// 32 bits de color. DispMode.Width = 640 '// Ancho del modo de video. DispMode.Height = 480 '// Alto del modo de video.
D3DWindow.SwapEffect = D3DSWAPEFFECT_FLIP '// Sincronizacion vertical activada. D3DWindow.BackBufferCount = 3 '// TripleBuffer D3DWindow.BackBufferFormat = DispMode.Format D3DWindow.BackBufferHeight = DispMode.Height D3DWindow.BackBufferWidth = DispMode.Width D3DWindow.hDeviceWindow = Form1.hWnd '// Handle de la ventana.
End If
'// Inicializamos D3D: Set D3DDevice = D3D.CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, Form1.hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, D3DWindow)
End Sub Salu2...
25
« en: Lunes 12 de Junio de 2006, 02:56 »
'Inline' vendria a decir que podrias programar codigo ASM dentro del propio codigo de C/C++ al igual que en Delphi mediante unas etiquetas de codigo. Esto viene bien cuando se busca hacer rutinas de gran peso de procesado para lograr optimizaciones. Un ejemplo sacado de este enlace en Google: main() { int dato1, dato2, resultado; printf("Dame dos números: "); scanf("%d %d", &dato1, &dato2); asm push ax; push cx; asm mov cx,dato1 asm mov ax,0h mult: asm add ax,dato2 asm loop mult asm mov resultado,ax asm pop cx; pop ax; printf("Su producto por el peor método da: %d", resultado); }
En tu caso seria hacer una funcion en C++ y que todo el cuerpo de la funcion sea ASM. Luego compilas la DLL, declarando las funciones con la convencion de llamadas __stdcall para que Visual Basic 6.0 pueda reconocerlas, y asi podrias importar dichas funciones en Visual Basic. Salu2...
|
|
|