lunes, 12 de febrero de 2024

Script para godot4.2 3d Cuando presiono boton del mouse me instancia particulas, y cuando dejo de presionar las borra o deja de instanciar;

 extends Area3D


var Particulas = preload("res://GRAFICOS/TERRENO MONTAÑAS ETC/SOLOPARTICULASARMA.tscn")

var particulas_instanciadas: Node = null


func _ready():


pass # Replace with function body.


func _input(event):


if event is InputEventMouseButton:


if event.button_index == 1:

# Instanciar partículas al presionar el botón

if event.pressed:

particulas_instanciadas = Particulas.instantiate()

add_child(particulas_instanciadas)

# Eliminar partículas al soltar el botón

else:

if particulas_instanciadas:

particulas_instanciadas.queue_free()

particulas_instanciadas = null

Script para Godot4.2 3d cuando presiono boton del mouse me instancia particulas;

 extends Area3D


var Particulas = preload("res://GRAFICOS/TERRENO MONTAÑAS ETC/SOLOPARTICULASARMA.tscn")


func _ready():


pass # Replace with function body.



func _input(event):


if event is InputEventMouseButton:


if event.button_index == 1:


var particulas = Particulas.instantiate()



add_child(particulas)

Script para Godot 4.2 al presionar boton del mouse mantiene la rotacion si sigue presionado el boton;

 extends MeshInstance3D


# Speed of rotation (radians per second)

var rotation_speed: float = 90.0


# Stores button press state

var mouse_button_pressed: bool = false


# Called when the node enters the scene tree for the first time.

func _ready():

pass  # Replace with function body.


# Called every frame. 'delta' is the elapsed time since the previous frame.

func _process(delta):

# Rotate based on mouse button press and delta time

if mouse_button_pressed:

rotate_z(rotation_speed * delta)


# Called when a mouse button is pressed.

func _input(event):

if event is InputEventMouseButton:

# Handle left mouse button press and release events

if event.button_index == 1:

# Update button press state based on event type

mouse_button_pressed = event.pressed


Script para godot4.2 solo cuando presiono boton del mouse hace un giro;

 extends MeshInstance3D


# Called when the node enters the scene tree for the first time.

func _ready():

pass  # Replace with function body.


# Called every frame. 'delta' is the elapsed time since the previous frame.

func _input(event):

if event is InputEventMouseButton:

if event.button_index == 1:

rotate_z(90.149)

# Add an "else" block or remove the "if" if not needed

Script para rotacion constante de un MeshInstance3D; es de formato obj; un arma que lleva un Player;

 extends MeshInstance3D



# Called when the node enters the scene tree for the first time.

func _ready():

pass # Replace with function body.



# Called every frame. 'delta' is the elapsed time since the previous frame.

func _process(delta):

rotate_z(0.049)



pass


domingo, 11 de febrero de 2024

Resumen de lo que puedo hacer con Godot 3d 4.2 despues de unos 3 meses de aprendizaje autodidacta;

 -1-Instanciar proyectiles, y otros graficos, util para derribar enemigos y cambiarlos por duplicados derribados al suelo o muertos.

-2- poner sonidos y musica.

-3- poner un contador de puntos.

-4-poner un personaje Player por el escenario del juego que se pueda mover y girar de forma realista y añadirle un arma que lanze proyectiles.

-5- poner personajes propios personalizados con animaciones externas desde Mixamo o Deepmotion

-6- poner puertas animadas de diferentes formas, haciendo solamente una y consiguiendo colocarla en cualquier parte del escenario duplicados, sus du`licados me refiero.

-7- poner un cielo y cambiarle las luces y la ambientacion.

-8- poner luces y que tengan sombras.

-9- hacer particulas de llamaradas de fuego.

-10- Con estas primeras bases ya me veo capaz de hacer algun juego simple y entretenido, eso si con mucho esfuerzo porque ahora estos temas les falta que los realice con fluidez y rapidez.

-11-Me dejaba el apartado de Lod o Lood que sirve para que se dibujen menos poiligonos en los graficos o mas poligonos segun lo que se quiera hacer, muy importante para equilibrar la memoria y fluidez del juego.

¿y que me quedo en el tintero?

Me quede con las ganas de conseguir cambios de enfoques y perspectivas con las camaras, esto me custa mucho, algo e conseguido hacer pero esta tan flojo que de momento no lo aplicare con Godot3d 4.2

y ahora si a currar estos minimos conocimientos y explotar graficos guapos e imaginacion y a publicar en itch.io, cuando tenga algo respetablemente jugable¡¡¡¡¡

sábado, 10 de febrero de 2024

Script para godot instacia una camara y hace un cambio de plano de escena mientras esta dentro del Area3d;

 extends Area3D

var Extra = preload("res://CAMARAEXTRAPARASERINSTANCIADA.tscn")


# Called when the node enters the scene tree for the first time.

func _ready():

pass # Replace with function body.



# Called every frame. 'delta' is the elapsed time since the previous frame.

func _process(delta):

pass



func _on_area_entered(area):

var extra=Extra.instantiate()

add_child(extra)

pass # Replace with function body.



func _on_area_exited(area):

queue_free()

pass # Replace with function body.