Domingo 22 de Diciembre de 2024, 12:01
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
C#
(Moderador:
ProfesorX
) »
Ahora Si Mi Proyecto
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Ahora Si Mi Proyecto (Leído 2547 veces)
ibito
Miembro HIPER activo
Mensajes: 549
Nacionalidad:
Se mas de C++ que lo que se de ese CSS
Ahora Si Mi Proyecto
«
en:
Martes 14 de Junio de 2005, 03:22 »
0
Este fue un trabajo que nos dejaron en la universidad, no es mucho pero cada figura que se pinta, esta hecha desde cero, es decir, sin usar las funciones de drawline, drawcircle, fillcircle, etc etc... usando los algoritmos de bressenham etc etc, en el rar viene el codigo fuente, y el ejecutable (en la carpeta debug).
A ver que les parece
El mensaje contiene
1 archivo adjunto
. Debes
ingresar
o
registrarte
para poder verlo y descargarlo.
Tweet
______________________________________
www.hazjuegos.com
Una comunidad dedicada al desarrollo de videojuegos.
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Ahora Si Mi Proyecto
«
Respuesta #1 en:
Martes 14 de Junio de 2005, 05:02 »
0
Hola esta muy bueno y me parece muy bien que te intereses por el C# y por el uso de GDI.
Lógicamente tiene muchas cosas por optimzar como control de excepciones (lo revente de tres maneras diferentes), rendimiento (es muy lento el pintado de las figuras), refresco de pantalla, estructua etc, etc..
pero eso no demerita tu trabajo, esta muy bien para comenzar.
muy bien ibito.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
ibito
Miembro HIPER activo
Mensajes: 549
Nacionalidad:
Se mas de C++ que lo que se de ese CSS
Re: Ahora Si Mi Proyecto
«
Respuesta #2 en:
Martes 14 de Junio de 2005, 05:48 »
0
es lento porque como dije antes, hace las cosas punto por punto (no lo dije asi
), o sea, cuando dibujas una linea, usa un fillrect de 1px de alto por 1px de ancho y asi dibuja TODA la linea, tambien el circulo, la elipse y el poligono, el circulo y elpise rellena pues imaginate, punto por punto (usando la linea que tambien es punto por punto
), el relleno como en el paint truena, porque no pude hacer el stack como se debe, entonces, por eso esta lento.
______________________________________
www.hazjuegos.com
Una comunidad dedicada al desarrollo de videojuegos.
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: Ahora Si Mi Proyecto
«
Respuesta #3 en:
Martes 14 de Junio de 2005, 14:19 »
0
para hacerlo más rapido usa la tecnica de doble buffer,
asi que en el buffer pintas la figura completa y una vez pintada copias el buffer completo a la pantalla, notaras asi un considerable aumento del rendimeinto, si adicionalmente controlas elk barrido de la pantalla obtendras una enorme calidad respecto a lo que tienes ahorita
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
Enko
Miembro de PLATA
Mensajes: 1562
Nacionalidad:
Re: Ahora Si Mi Proyecto
«
Respuesta #4 en:
Jueves 16 de Junio de 2005, 02:26 »
0
¿Que necesito para correrlo?
ibito
Miembro HIPER activo
Mensajes: 549
Nacionalidad:
Se mas de C++ que lo que se de ese CSS
Re: Ahora Si Mi Proyecto
«
Respuesta #5 en:
Jueves 16 de Junio de 2005, 04:31 »
0
el framework net
______________________________________
www.hazjuegos.com
Una comunidad dedicada al desarrollo de videojuegos.
niofis
Nuevo Miembro
Mensajes: 9
Re: Ahora Si Mi Proyecto
«
Respuesta #6 en:
Jueves 16 de Junio de 2005, 05:23 »
0
Hola, el programa no necesita utilizar doble buffer para correr mas rapido, de hecho eso lo haria mas lento y al ser un sistema para dibujo directamente lo haría un poco mas complicado de programar y por lo tanto aumentaría la cantidad de instrucciones para realizar el mismo trabajo. Si bien el doble buffer eliminaría el flickering, tambien se puede obtener ese efecto de otras maneras como utilizando máscaras XOR, pero como se ve en el código está utilizando las librerias GDI+ de .NET Framework por lo tanto no soporta esa función raster. Aunque bien podría utilizar SetPixel del GDI de windows, como está utilizando el GetPixel, y así aumentará el rendimiento. La mejor forma para aumentar el rendimiento del programa es utilizar la memoria directamente, pero eso es otro cuento...
niofis
Cronodragón
Nuevo Miembro
Mensajes: 19
Re: Ahora Si Mi Proyecto
«
Respuesta #7 en:
Viernes 17 de Junio de 2005, 05:57 »
0
Hola gente!!
La manera de acelerar el algoritmo es dibujando líneas horizontales enteras en vez de un punto a la vez. A bajo nivel es más veloz, pero incluso en alto nivel es rápido pues este trabajo generalmente está optimizado en los motores gráficos (como la API de Windows).
Espero haber ayudado. Lamento no entrar en más detalle pero tuve un día muy pesado, me voy a dormir
Saludos!!
Comunidad de desarrolladores de vjuegos
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
C#
(Moderador:
ProfesorX
) »
Ahora Si Mi Proyecto