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

Páginas: [1] 2 3 ... 10
1
Preguntas y respuestas / Re:Dibujar efecto de agua!!!
« en: Abril 16, 2018, 06:55:24 pm »
Puedes utilizar algo como esto.
http://www.comunidadgm.org/desarrollo-de-scripts/distorsionar-sprites/
Tal vez debes ajustar algunos parámetros como la velocidad de las ondas y su amplitud. También puedes dibujar encima un sprite azul con baja opacidad.

En realidad es más eficiente usar shaders. En el marketplace hay muchos (por el momento el marketplace no está disponible :o).
Puedes basarte en estos ejemplos
http://xorshaders.weebly.com/tutorials/8-wind-shader
https://github.com/h3rb/gml-pro
Los siguientes usuarios dieron las gracias a este tema: Goganpis

2
Preguntas y respuestas / Re:Como trabajan los archivos???
« en: Abril 16, 2018, 06:40:19 pm »
En GM8 no se pueden usar buffers, solo son espacios de memoria donde puedes escribir datos byte por byte.

En Minecraft se utilizan varias técnicas avanzadas de optimización, hacer una réplica no es tan sencillo como parece.
Hay varios ejemplos de Minecraft hechos con GML. Por ejemplo: https://enigma-dev.org/edc/games.php?game=65

Para aprender sobre estructuras de datos puedes comenzar con el artículo de NiuWeb
http://www.comunidadgm.org/articulos/estructuras-de-datos-mapas-y-listas-(programacion)/
y con el manual traducio
https://bygdle.xyz/gamemaker/manual/Referencia/Estructuras_de_datos/
Aún no hay información sobre ds_grids, pero funcionan de forma parecida a las ds_lists.
Los siguientes usuarios dieron las gracias a este tema: Goganpis

3
Preguntas y respuestas / Re:Dudas sobre arrays
« en: Abril 16, 2018, 06:17:38 pm »
Sí, los arrays se pueden declarar como variables locales con var. Al terminar el bloque de código los valores se borran de la memoria.
Ejemplo:
// Create
var arr;
arr[0] = 1;
arr[1] = 4;

// Draw
// Lanzará error porque arr ya no existe
draw_text(x,y, arr[0]);

Otra forma de borrar el contenido de un array es asignar un valor como a una variable simple.
Ejemplo:
arr[0] = 1;
arr[1] = 4;
arr[1] = 5;
arr[1] = 9;
//arr continen 4 valores

arr = 0;
//los valores anteriores se borraron
Los siguientes usuarios dieron las gracias a este tema: getnoff

4
Preguntas y respuestas / Re:salto en plataforma 3d
« en: Abril 16, 2018, 06:03:14 pm »
Estoy pensando que el método con instance_position solo funciona bien en GM8. Una alternativa para encontrar la altura del suelo es esta:
ins1 = true; //para determinar si es la primera instancia que se revisa
with (obj_piso) {
    if place_meeting(x,y, other.id) {
        if (other.ins1) { //primera instancia
            other.gnd = id.z1; //altura de esa instancia
            other.ins1 = false; //ya se revisó
        }
        else{
            //si la altura es mayor, sustituye a la anterior
            other.gnd = max(id.z1, other.gnd);
        }
    }
}
Debe ser más segura en todas las versiones de GM.
Los siguientes usuarios dieron las gracias a este tema: Ares074

5
Preguntas y respuestas / Re:Dibujar efecto de agua!!!
« en: Abril 15, 2018, 08:29:11 pm »
No entendiendo bien cómo es el efecto, ¿tienes un ejemplo?
Los siguientes usuarios dieron las gracias a este tema: Goganpis

6
Preguntas y respuestas / Re:salto en plataforma 3d
« en: Abril 13, 2018, 03:35:28 pm »
¿El personaje se puede mover en las 3 dimensiones?
¿Cómo construyes el escenario?

He utilizado este método:
Los bloques se colocan en el plano XY y se dibujan a diferentes alturas dependiendo de su variable z.
El personaje revisa en cada step la variable z de los bloques que está tocando, el valor más grande es la altura del suelo.
Hay una variable de gravedad y una variable de velocidad en z, en cada step la gravedad se resta a la velocidad
zs -= g; //efecto de la gravedad
En cada step el personaje se desplaza y si su variable z es menor a la del piso su velocidad se hace cero y se coloca sobre el piso.
z += zs; //desplazamiento vertical
if (z<gnd) {zs=0; z=gnd;} //no se puede atravesar el suelo

Adjunto un editable, pero es posible que no funcione bien en GMS.
Los siguientes usuarios dieron las gracias a este tema: yokaiworld, getnoff

7
No se si sea el mismo código, pero intenta cambiar el código que aparece en en Game Options -> Android.
Los siguientes usuarios dieron las gracias a este tema: tristy3

8
Requiere conexión ocasional para mantener activa la licencia.

Cita de: GameMaker Manual
While GameMaker: Studio itself does not require an internet connection to be used, it will require occasional access to maintain the license activated. If there is no internet connection when requested, your copy of GameMaker: Studio will not work except as the "free" version until such time as this is resolved.

https://docs.yoyogames.com/source/dadiospice/000_using%20gamemaker/002_activation.html
Los siguientes usuarios dieron las gracias a este tema: LordSplynter

9
Preguntas y respuestas / Re:rastro de partículas usando sprites
« en: Marzo 22, 2018, 05:44:36 am »
Puedes modificar el código del evento step de esta forma
if (piso == false)
{
  // updating the lists
  ds_list_add(trail_x, x);
  ds_list_add(trail_y, y);

  // limiting the lists
  if ds_list_size(trail_x) > trail_limit
  {
    ds_list_delete(trail_x,0);
    ds_list_delete(trail_y,0);
  }
}
else //piso == true
{
  // reduce the lists
  if ds_list_size(trail_x) > 0
  {
    ds_list_delete(trail_x,0);
    ds_list_delete(trail_y,0);
  }
}
(el valor de piso debes asignarlo antes de ese bloque de código)

La sugerencia de 3dgeminis es buena, simplificaría mucho las cosas.
Los siguientes usuarios dieron las gracias a este tema: cristopher2545

10
Preguntas y respuestas / Re:Error con el draw_text
« en: Marzo 19, 2018, 04:37:50 pm »
El número de obj_humano se debe convertir a string
n = string(instance_number(obj_humano));
draw_text(view_xview[0] + 16, view_yview[0] + 16,"humanos: "+n);
Los siguientes usuarios dieron las gracias a este tema: Fa ._.

11
Preguntas y respuestas / Re:¿Existe grupo en Discord?
« en: Marzo 11, 2018, 03:29:45 pm »
Tenemos este
https://discord.gg/2qYmwHf
pero no es muy activo.

Otro más activo es el de GamedevES
https://discord.gg/YjzEfmG
Los siguientes usuarios dieron las gracias a este tema: WederGoned

12
Preguntas y respuestas / Re:Desacticando instancias
« en: Marzo 11, 2018, 02:49:59 am »
No es recomendable activar y desactivar en cada step, es mejor hacer el proceso en una alarma y/o hacer el proceso solo cuando la view cambie de posición.

En todos los casos es necesario dejar un margen fuera de la view para que no se vea el momento en que se activan o desactivan las instancias.

Una alternativa es dejar las instancias activas, pero hacer que no ejecuten código si están fuera de la view.
Los siguientes usuarios dieron las gracias a este tema: angel_33

13
Podrías usar estados, y en cada estado usar diferentes objetos como obstáculos.
Además, si el escenario está hecho sobre una rejilla, puedes utilizar las funciones mp_grid_* que requieren menos procesamiento que las funciones mp_potential_*, pero son más difíciles de configurar.
Los siguientes usuarios dieron las gracias a este tema: TheJaj

14
Preguntas y respuestas / Re:DETECTAR SI EL RATON SE MUEVE O NO
« en: Febrero 27, 2018, 07:21:11 am »
Para evitar el problema con la view, se puede obtener la posición del mouse respecto a la ventana
window_mouse_get_x()
window_mouse_get_y()
la capa GUI
device_mouse_x_to_gui
device_mouse_y_to_gui
o la pantalla
device_mouse_raw_x
device_mouse_raw_y
Los siguientes usuarios dieron las gracias a este tema: nonoroman, Yuzo

15
Puedes borrar el objeto al principio de la lista y agregarlo al final
objeto = lista[|0]; //objeto en la primera posición
ds_list_delete(lista, 0); //borrar objeto
ds_list_add(lista, objeto); //agregar al final
Los siguientes usuarios dieron las gracias a este tema: Yuzo, Ares074

Páginas: [1] 2 3 ... 10