elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Media
| |-+  Diseño Gráfico
| | |-+  Dibujar asteroides mediante programación.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Dibujar asteroides mediante programación.  (Leído 849 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.554


Hackentifiko!


Ver Perfil
Dibujar asteroides mediante programación.
« en: 20 Abril 2025, 07:40 am »

Tengo estos dibujos simples:


Un circulo rojizo y un circulito cuyo color es irrelevante creo.

Tengo este código, lo que hace es insertar circulitos en el grande, de modo que tengan tamaños y otros aspectos un poco al azar:
Código
  1. function VariarMeteoro () {
  2. Diametro = 44;
  3. Radio = Diametro/2;
  4. // Insertarle imágenes:
  5. Imagen = 0;
  6. do {
  7. Imagen++;
  8. Name = "Imagen"+Imagen;
  9. Meteor.attachMovie("sCirculo", Name, Imagen);
  10. Name = "Meteor."+Name;
  11. // Para los tamaños y rotación:
  12. setProperty (Name, _xscale, 400*Math.random());
  13. setProperty (Name, _yscale, 400*Math.random());
  14. setProperty (Name, _rotation, 360*Math.random());
  15. // Para las posiciones:
  16. X = Math.random()*Diametro - Radio;
  17. setProperty (Name, _x, X);
  18. MaxY = Math.sqrt(Radio*Radio - X*X);
  19. Y = Math.random() * (MaxY*2) - MaxY;
  20. setProperty (Name, _y, Y);
  21. // Para los colores:
  22. ColorDeName = new Color(Name);
  23. Brillo = 0.2 + 0.8 * Math.random();
  24. Rojo = Math.round(MaxRojo * Brillo);
  25. Verde = Math.round(MaxVerde * Brillo);
  26. Azul = Math.round(MaxAzul * Brillo);
  27. ColorElegido = (Rojo << 16) | (Verde << 8) | Azul;
  28. ColorDeName.setRGB(ColorElegido);
  29. } while (Imagen < 1000);
  30. }
Nota: MaxRojo, verde, etc, están definidos antes, son igual al color más brillante del circulo grande.

Ejemplos de los resultados posibles (ignoren lo naranja de abajo):


No me gustan ¿cómo podrían mejorar?

El problema de las imágenes de asteroides en Internet es que ponen la sombra en un lado, y yo quiero que el objeto rote, así que la sombra mejor en el medio, como puse al inicio. Pero tiene que tener algo asimétrico para que se note que está rotando, y para que parezca un asteroide. Pensé en poner puntos negros, simulando cráteres. Los varié pero ya vieron el resultado. También había probado un asteroide más gris.

Ah, eso también, la idea es que puedan tener colores distintos, o sea, uno que sea rojo, otro verde...

Es para un juego:
https://youtu.be/tNznYLbcV1U

Acá les dejo un rar:
https://drive.google.com/file/d/1gmUKRd5hD86KtXJBlR8gUfliItkZ38dQ/view?usp=sharing
que lo tiene como exe, como swf y tiene el fla totalmente editable. Algunos objetos con código son invisibles no porque los haya querido esconder sino porque pesarían más si son visibles, tengo que anotar al principio donde están, pero básicamente dibujen algo en el objeto Vacío y así lo verán mejor.


« Última modificación: 20 Abril 2025, 07:44 am por Tachikomaia » En línea

Mr.Byte


Desconectado Desconectado

Mensajes: 320



Ver Perfil
Re: Dibujar asteroides mediante programación.
« Respuesta #1 en: 20 Abril 2025, 09:36 am »

No has pensado en usar algún tipo de motor gráfico, tipo Godot (libre, código abierto), con múltiples tutoriales ??.
Existen ejemplos de código y videos , para juegos como Arkanoid
https://godotengine.org/es/


En línea

Tachikomaia


Desconectado Desconectado

Mensajes: 1.554


Hackentifiko!


Ver Perfil
Re: Dibujar asteroides mediante programación.
« Respuesta #2 en: 21 Abril 2025, 05:46 am »

No sabía que existía esa opción ni sé bien en qué consiste. Había oído de RPG Maker y Unity o algo así, pero quiero saber cómo hacer las cosas con lo que tengo ¿no alcanza para hacerlas?
En línea

KarnelJei

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Dibujar asteroides mediante programación.
« Respuesta #3 en: 21 Abril 2025, 13:14 pm »

No sabía que existía esa opción ni sé bien en qué consiste. Había oído de RPG Maker y Unity o algo así, pero quiero saber cómo hacer las cosas con lo que tengo ¿no alcanza para hacerlas?
¡Godot está realmente infravalorado! Funciona en muchas plataformas, tiene su propio lenguaje GDScript (muy similar a Python), y con la versión 4.0, el soporte 3D ha mejorado. Si ya has oído hablar de Unity, Godot puede ser llamado «Unity de código abierto», pero es más fácil y sin suscripciones   Lo principal es utilizar aquello con lo que te sientas cómodo y entiendas. Es como en otras áreas: para cultivar peces en acuicultura, no necesitas el complejo más caro - es importante tener el equipo adecuado para tus objetivos y presupuesto, como en agrotook. Lo mismo ocurre con el desarrollo: es mejor empezar con algo sencillo que esperar al momento perfecto.
« Última modificación: 24 Abril 2025, 07:41 am por KarnelJei » En línea

Mr.Byte


Desconectado Desconectado

Mensajes: 320



Ver Perfil
Re: Dibujar asteroides mediante programación.
« Respuesta #4 en: 21 Abril 2025, 18:54 pm »

Existen multitud de tutoriales, y codigos de ejemplo. Y foros con gente que realiza proyectos como el tuyo. https://godotspain.foroactivo.com/ por ejemplo...
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Ayuda] Juego de nave (Rutina de asteroides)
Programación C/C++
Zodiak98 2 4,172 Último mensaje 7 Septiembre 2013, 23:47 pm
por eferion
Apple enseñará programación a los niños mediante talleres
Noticias
wolfbcn 0 1,425 Último mensaje 5 Diciembre 2014, 21:41 pm
por wolfbcn
Juego de naves y asteroides
Programación C/C++
cNoob 1 2,699 Último mensaje 29 Junio 2016, 01:08 am
por cNoob
'Fiebre del oro' espacial: los asteroides traerían Tn de metales a la Tierra
Foro Libre
Machacador 3 2,257 Último mensaje 19 Junio 2018, 20:57 pm
por Orubatosu
Cinco asteroides se acercan a la Tierra por segunda semana sucesiva
Foro Libre
El_Andaluz 0 1,759 Último mensaje 10 Junio 2020, 23:58 pm
por El_Andaluz
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines