• Viernes 18 de Julio de 2025, 21:09

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.


Mensajes - JuanK

Páginas: 1 ... 142 143 [144] 145 146 ... 231
3576
Programación de Videojuegos / Re: Dudas Sobre Tiles Animados
« en: Viernes 18 de Febrero de 2005, 00:12 »
Cita de: "Renatus"
1- Cuando trabajamos con tiles animados. Qué es mas rápido y eficaz?
Mantener en memoria un solo bitmap con todos los frames dentro para
recortar cada uno de ellos durante cada ciclo del bucle que pinta el
fondo?
O separar cada uno de los frames en un bitmap por separado y hacer
lo mismo?
Lo más eficiente para ahorrar memoria es tener todo ( en la medida de lo posible) en un solo BMP, desde que este no supere dos megas, una recomendacion es que si tus tiles son muchos los hagas en bmps agrupados..
ejemplo un bmp con cosas de agua otro con cosas de fuego otras de metal etc.
Cita de: "Renatus"
2 - Cuando se necesita pintar varios tiles animados, por ejemplo para
el agua. Se utiliza una sola variable general para verificar qué frame
específico van a compartir todos esos tiles? Esta variable general también
es utilizada como referencia para saber en que frame están iclusive otros
tiles animados?
Podria ser , todo depende de como tu lo hagas, no existe una regla que te diga como debes usar los tiles, cada cual es libre de hacer su propia implementacion.
Cita de: "Renatus"
3 - Qué utilizan ustedes para realizar las pausas durante cada ciclo del
bucle general? Utilizan rest?
Podria funcionar, sin embargo lo mejor seria aprender a usar las funciones del temporizador avanzadas que trae allegro.
Cita de: "txutxi"
He programado una estructura llamara TileSet, cada una contiene un array con tiles separados (en respuesta a lo que preguntabas acerca de mantenerlos juntos y recortar o tenerlos ya por separado, aunque no se si será más eficiente, pero a mi me resulta más cómodo).
Una alternativa muy eficiente , que yo uso,
es colocar todo dentro de un solo BMP, agrupando como lo dije enteriormente,
luego para poder acceder a las diferentes secciones del BMP creo un arreglo, pero no un arreglo de imagenes sino un arreglo de rectangulos, donde cada rectangulo me indica cual es la posicion y tamaño del cuadro que voy a dibujar del bmp.
Un ejemplo seria mas o menos asi:
Código: Text
  1.  
  2. while...
  3. blit(GRANBMP, x, y, reactangulo[recuadroactual]->x, rectanglo[recuadroactual]->y, rectangulo[recuadroactual]->ancho, erctangulo[]->alto);
  4. ...
  5. recuadroactual++;
  6. ...
  7.  
  8.  

Respecto a lo de los colores.. que les puedo decir....

Si yo fuera un genio del arte grafico o al menos tuviera talento.... usaria imagenes de 256 colores nada más...

Pero...
como no lo soy uso imagenes de 24 bit o en su defecto de 16 aunque lo malo de las de 16 es que los desvanecimientos o mejor los difuminados.. o como le llamen no se ven muy bien, salvo que seas un artista o que tengas talento....

3577
La taberna del BIT / Re: La Historia Del Bebé Que Nunca Nacio
« en: Jueves 17 de Febrero de 2005, 23:13 »
ERES UN DESOCUPADO RADICALED!!!


CUANTO HABBRIAS APRENDIDO DE LENGUAJE C EN ESA MEDIA HORA!!!  :angry:


PERO BUENO ESTA BUENO EL CUENTICO, PARECE UN HIBRIDO ENTRE UNA DE ESAS PROPAGANDAS QUE SALEN HOY EN DIA Y UNO DE LOS CHISTES CLASICOS.  :devil:

3578
C/C++ / Re: Creacion De Un Paint En C++
« en: Jueves 17 de Febrero de 2005, 19:47 »
en este libro:

Lenguace C para expertos
Helbert Schild

Te enseñan a hacer un panit para DOS usando las interrupciones, puede no serte util si programas bajo windows, pero si usas compiladores como el DJFGPP te servira de mucho.

3579
Virus / Re: Buffer Overan Detected
« en: Jueves 17 de Febrero de 2005, 19:44 »
en efecto es el norton.

*Desinstala
*reinicia
*reinicia en modo seguro
*borra archivos de programa\symantec
*borra archivos comunes\symantec shared
*entra al registro y borra HKLM\SOFTWARE\SYMANTEC
*entra al registro y borra HKCU\SOFTWARE\SYMANTEC (si lo hay)
*revisa tu perfil (en documents and settings) y busca si hay carpetas de symantec por ahi, de ser asi borralas
---------------------
*reinicia
*reinstala
*reinicia

si no te funciona bajate de internet un RegCleaner y el adware, instalalos y ponlos a hacer lo que a cada uno le corresponde justo despues de la raya que coloque arriba, luego termina los demas pasos... sino, borra tu perfil y vuelvelo a crear desde 0.

3580
C/C++ / Re: Creacion De Un Paint En C++
« en: Jueves 17 de Febrero de 2005, 17:16 »
Hola,
si quieres ver un paint
entra por:

-Barra de inicio
-ejecutar
-en el recuadro blanco escribes mspaint
-presionas aceptar

Listo ahi puedes ver un paint hecho en C++ y funcionando  :smartass:   :ph34r:  :whistling:

3581
C# / Re: Como Atrapar Una Presion De Teclado C# De Consola
« en: Jueves 17 de Febrero de 2005, 02:28 »
Citar
voy a buscar un API que me permita hacer una interrupción al teclado,
Lamentablementa a travez de C# no lo puedes hacer, de ehcho con ningun lenguaje lo puedes hacer si estas en versoines de Windows ba<sadas en win32, solo puedes hacer eso en sistemas derivados del DOS, ya que los niveles de proteccion del sistema operativo no permiten cceder hoy dia a ese tipo de recursos... pues para ello esta la API, para ocultar la complejidad del hardware y de las capas bajas del sistema operativo, en todo caso si encuentras algo me cuentas, aunque no creo que encuentres nada.
Citar

sabes que algun sitio donde pueda investigar las API's??
NO, pero lo que pasa es que hablar de una API a mi manera de verlo es algo como medio 'abastracto' ya que una APi no es más que una libreria comun y corriente, pero se supone que hace muchisimas cosas y hace ver faciles las cosas dificiles.
Citar
o donde puedo encontrar todos los métodos de kernel32.dll ?

En la pagina de msdn pero debes buscar como acceso a la pai de windows o platform SDK, generalmente ese tipo de infromacion se encuentra en las ayudas de las librerias.

3582
SQL Server / Re: Ultimo Registro De Una Consulta
« en: Miércoles 16 de Febrero de 2005, 22:33 »
si asi es.

3583
SQL Server / Re: Ultimo Registro De Una Consulta
« en: Miércoles 16 de Febrero de 2005, 22:13 »
para obtener el ultimo registro que cumple la condicion es necesario ordenar  la consulta en orden descendente (de ultimo a primero) y decri que solo nos traiga el primer registro que resulte de dicha consulta.

<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->[color=blue;font-weight]SELECT[/color]
  ROWNUM NUM,
  tab_CODIGO,
  tab_NOMBRE,
  tab_DESCRIPCION
FROM tabla WHERE tab_CODIGO >= 200 AND tab_CODIGO <300 and rownum=1  
ORDER BY tab_CODIGO DESC <!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->

3584
PostgreSQL / Re: Aplicacion(c/c++) Autentificador(?¿?¿¿) Postgres
« en: Miércoles 16 de Febrero de 2005, 21:46 »
Umm bueno me suena mucho..
pero la verdad prefiriria que fueras un poco mas claro porque no mejor sintetisas lo mas imporatnte de lo que necesitas a ver si te entiendo mejor.  :ph34r:

3585
Windows / Re: Trucos Para Los Windows
« en: Martes 15 de Febrero de 2005, 03:48 »
Si quieren tener su windows 10 veces más rápido solo tienen que crear estas carpetas las cuales el sistema asumira automaticamente como extra-swap y descargara alli gran parte de los porcesos cargados en memoria... el problema es poder crear las dichosas carpetas... estos son los nombres que deben tener:

com1
com2
com3
com4
con
lpt1
lpt2
lpt3
lpt4

Suerte con  la tarea.  :smartass:

3586
DirectX / Re: Mapas En 2d Con Direct3d
« en: Martes 15 de Febrero de 2005, 03:42 »
Podrias ser un poco más eswpecifico...
entiendo la idea , pero entre más datos nos des mejor.

3587
C/C++ / Re: Goto
« en: Martes 15 de Febrero de 2005, 03:19 »
Si, ya me estoy acostumbrando a que muchas de las cosas que se pueden hacer por el codigo para que este produsca resultados más eficientes en procesos críticos casi en un99% son una mala practica de programación...

Ya hemos visto como el codigo estructurado(y POO) produce grandes cuellos de botella  en segmentos de codigo que si fueran programados en 'spagetti' a punta de goto's y enoooooooooooooooooooooooooooomes bucles serian muchisimo más rápido, el tener segmentos de codigo reutilizable es uno de nuestros grandes  retrazos en cuenato a rendimiento en un programa, pero sin lugar a dudas es un avance gigantesco en cunto a la legibilidad del codigo y el ahgorro de tiempo en nuevos desarrollos. Por otro lado en las maquinas de hoy en dia esos tiempos son casi que despreciables y solo se consideran importantes en cosas como por ejemplo crear un manejador de procesos, de memoria o de dispositivos para un sistema operativo o crear segmentos de codigo para trabajos multimedia a bajo nivel (codificacion y decodificacion de archivos (mp3, mpeg, divx... etc), filtros , convolulcion de imagenes etc.)

En fin, si yo creara un sistema operativo seguramente que si llegaria a usar el goto algunas veces por razones de mision critica asi mismo usaría segmentos de codigo repetido para evitar los tiempos que implican los cambios de contexto etc etc , pero en el 99.9999999% de los casos no lo usaria.  :smartass:

3588
C/C++ / Re: Programar Joystick
« en: Sábado 12 de Febrero de 2005, 15:55 »
ummmm,
demsiado complicado... taradaras un buen tiempo...
puedes hacerlo usando el DDK o la API.

Pero en tu lugar usaria algo como DirectX.DirectInput

3589
C# / Re: Acceso A Un Equipo Remoto
« en: Sábado 12 de Febrero de 2005, 15:45 »
umm no se ocn presicion
pero deberias crear un aplicativo ue trabaje a manbera d servicio y este debe pcnusltar el equipo remoto y enviar los datos al equipo desde el cual estas consultando.


Ahora windows trae formas de hacer eso en el administrador de dispositivos por lo cual intuyo que ese tipo de cosas se puede hacer desde la API.

3590
C# / Re: Librerías, No Entiendo
« en: Sábado 12 de Febrero de 2005, 15:43 »
Lo ideal sera que enmascararas las dll...
es decir haces unas clases que invoquen cada una lo que se necesite de cada dll en un momento de terminado pero las clases que creas pueden ser:

Código: Text
  1.  
  2. namespace Dlls
  3. {
  4.   public class dllPDA
  5.   {
  6.      [DllImport]...dll.TraerAlgo(...);
  7.      public void TraerAlgo()
  8.      {
  9.         dll.TraerAlgo();
  10.         ...
  11.         ...
  12.      }    
  13.   }
  14.  
  15.   public class dllPC
  16.   {
  17.      [DllImport]...dll.TraerAlgo(...);
  18.      public void TraerAlgo()
  19.      {
  20.         dll.TraerAlgo();
  21.         ...
  22.         ...
  23.      }    
  24.   }
  25. }
  26.  
  27.  

3591
C/C++ / Re: Goto
« en: Sábado 12 de Febrero de 2005, 15:35 »
Opino lo mismo, usar goto es anti profesional en los tiempos modernos, mejor usa un while o un for o un do-while.

3592
C# / Re: Como Atrapar Una Presion De Teclado C# De Consola
« en: Sábado 12 de Febrero de 2005, 15:30 »
Eso lo puedes lograr invocando rutinas de la API de windows, en el ejemplo que te he colocado puedes ver como usar la API desde C# (aunque algunas cosas obviamente no estan alli... tendras que preguntar sino lo logras hacer)  con estos ajemplos ya puedes hacerte una idea y utilizar la api para lo que quieres realizar...

<!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>XCODE </td></tr><tr><td id='XCODE'><!--exc1-->
using System;
using System.Runtime.InteropServices;

namespace Engine_Estados
{
    public class Entrada_class
    {
        #region Llamado a funciones de la API

            [DllImport("kernel32", SetLastError=true)]
            static extern IntPtr GetStdHandle(IntPtr whichHandle);
            [DllImport("kernel32", SetLastError=true)]
            static extern bool GetConsoleMode(IntPtr handle, out uint mode);
            [DllImport("kernel32", SetLastError=true)]
            static extern bool SetConsoleMode(IntPtr handle, uint mode);

        #endregion

        #region Variables para manejo de la API

            static readonly IntPtr STD_INPUT_HANDLE = new IntPtr(-10);
            private IntPtr hConsoleHandle;
            const uint ENABLE_LINE_INPUT = 2;
            const uint ENABLE_ECHO_INPUT = 4;
            uint modo, nmodo;
        #endregion


        public Entrada_class()
        {
            hConsoleHandle = GetStdHandle(STD_INPUT_HANDLE);
            GetConsoleMode(hConsoleHandle, out modo);
            nmodo = modo & ~(ENABLE_LINE_INPUT |ENABLE_ECHO_INPUT);
            SetConsoleMode(hConsoleHandle, nmodo);
        }

        ~Entrada_class()
        {
            SetConsoleMode(hConsoleHandle, modo);
        }
        
        public int Leer()
        {
            return Console.Read();
        }
    
        public void Leer(char  car)
        {
            while(Console.Read() != car);
        }

        public int Leer(bool modoNormal)
        {
            int ret;
            if(modoNormal)
            {
                SetConsoleMode(hConsoleHandle, modo);
                ret = Console.Read();
                SetConsoleMode(hConsoleHandle, nmodo);
            }
            else
                ret = Console.Read();
            return ret;
        }
    }
}
<!--xc2--></td></tr></table><div class='postcolor'><!--exc2-->
Ahora si yo fuera tu usaria mejor alguna libreia como DirectX, especificamente DirectInput para poder hacerlo más facilmente y porque ademas incorporan muchas otras funcionalidades que te pueden ser de utilidad.

3593
Java / Re: Juego
« en: Jueves 10 de Febrero de 2005, 03:50 »
no entendi

3594
C/C++ / Re: Una Pregunta De Graficos
« en: Lunes 7 de Febrero de 2005, 01:56 »
claro
1- has tu proia libreria accediendo a la api de windows
2- Usa un emulador  ( como el djgpp) y crealas usando assembler
3- Usa directX
4- Usa allegro
5- Usa cualquiera

3595
C/C++ / Re: Funciones Recursivas
« en: Lunes 7 de Febrero de 2005, 01:53 »
Es mentira,
de hecho su filosofi es precisamente generar codigo corto...
lo que pasa es que sino s eutiliza adecuadamente puede llegar a ocasionar un stack overflow, lo cual es tan solo que no queda espacio en la pila para seguir almacenando contextos y direccionamientos.

3596
C/C++ / Re: Como Leer Los Haeders?
« en: Viernes 4 de Febrero de 2005, 17:58 »
con fopen
fread
fwrite

Pero hay cosas que no se pueden quitar aunque quieras como por ejemplo los flags que usa el sistema operativo para saber si es nu archivo o un directorio-

Lo que tu dices no tiene porblema pero tampoco tiene sentido..


Por ejemplo para que le qutarias los headers a nu bmp file....
simplemente el archivo no se podria leer de ninguna manera.

3597
Software / Re: Entrar A Una Pc De Cualquier Lado
« en: Viernes 4 de Febrero de 2005, 04:47 »
pues si solo quieren compartir archivos porque no montan cada uno un servidor de ftp?
es mas facil no?
y ademas viene con el IIS que traen los windows-

3598
C/C++ / Re: Necesito Ayuda Con Cadena De Caracteres
« en: Jueves 3 de Febrero de 2005, 15:55 »
ejemplo 1:

strcat(cadena,"S");

ejemplo2

cadena[ultimo_car+1]='S';

Por supuesto en el segundo caso debes estar seguro de que tienes memoria reservada para alvergar el siguiente caracter.

3599
C# / Re: Dudas Sobre Input Type=file
« en: Jueves 3 de Febrero de 2005, 15:45 »
No,
Me refiero a que envies el contenido del formulario al servicio a traves de un parámetro , de tal manera que cuando el servicio cargue la pagina  asigne el valor del parametro recibido al campo html .

3600
Programación de Videojuegos / Re: Vesa
« en: Jueves 3 de Febrero de 2005, 15:40 »
http://www.wotsit.org

Busca por vesa, svga, super vga

 :hola:

Páginas: 1 ... 142 143 [144] 145 146 ... 231