miércoles, 3 de enero de 2024

Godot3d 4.2 un breve resumen de lo conseguido en unos 60 dias ;

 

Siguiendo con Godot3d 4.2 un breve resumen de lo conseguido en unos 60 dias de investigarlo y estudiarlo y practicarlo, e conseguido varios scripts en Gdscript para godot a fuerza de hacer pruebas y horas de practicas, me ayudado mucho el chatIA Microsoft Edge, no son perfectos y todos son muy simples pero me sirven para mover los gráficos borrarlos rotarlos etc etc …


E conseguido entender lo suficiente en tema de animación, de momento animo personajes en Blender y los paso de fbx al formato Glb que acepta Godot3d 4.2.



E conseguido hacer disparos pero por animación, no se instanciar de momento….de todas formas combinando animaciones y scripts para ellas e conseguido también derribar enemigos y cambiarles la animación, no exactamente la animación del personaje que recibe el disparo, pero e echo un clon del mismo que no se ve porque esta debajo del que sale en el terreno de juego, al recibir un disparo el que se ve da un giro inapreciable a la vista y asoma el que estaba dentro del suelo, el de dentro del suelo tiene una animación de desmayo y derribo y de encima del terreno de atacar, pues e conseguido darle la vuelta y no se aprecia el cambio, cuando se ejecuta el juego parece el mismo personaje que a cambiado sus movimientos……...al haber recibido un disparo o un golpe,


Podre cambiar la animación del mismo personaje con el tiempo, también cuesta mucho animar huesos desde el propio Godot3d 4.2 pero al apretar con el ratón botón derecho los puntos que señala la animación aparece unas orden de insertar clave o llave y entonces parece que si graba la animación de huesos y funciona……...bueno son muchas cosas, cuando consiga combinarlo con algún script sera mas correcto….



extends Area3D


# 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):
$AnimationPlayer.play("PELICULA180")
pass # Replace with function body.





----------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------

el script de abajo solo anima los huesos del personaje el script de arriba anima un giro de los personajes pegados por los pies--------que salen del mismo nodo....

-----------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------

extends Node3D


# 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):
$AnimationPlayer.play("Game_engineAction")
pass


domingo, 31 de diciembre de 2023

Script para godot destruye un CollisionShape3D pero la señal sale desde un area3d y se asigna al CollisionShape3D;

 extends CollisionShape3D



# 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_3d_body_entered(body):

queue_free()

pass # Replace with function body.


Script para godot3d 4.2 cuando entra en area3d un objeto el contenido aumenta de tamaño en los 3 ejes y,z,x;

 extends Area3D



# 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):

scale.y+=2.2

scale.x+=2.2

scale.z+=2.2

pass # Replace with function body..


viernes, 29 de diciembre de 2023

Script para Godot3d 4.2 cuando algo entra en area 3d se borra el objeto, cuando sale no gira nada porque nada hay;

 extends Area3D


func _ready():


pass # Replace with function body.


func _process(delta):


pass


func _on_area_entered(area):


queue_free()


pass # Replace with function body.


func _on_area_exited(area):


rotate_x(180)

pass

  

Script para Godot3d 4.2 cuando entra en el area3d gira 180 grados cuando sale otros 180 grados mas;

 extends Area3D


func _ready():


pass # Replace with function body.


func _process(delta):


pass


func _on_area_entered(area):


rotate_x(180)


pass # Replace with function body.


func _on_area_exited(area):


rotate_x(180)

pass

  


Script para godot3d 4.2 cuando entra en el area gira 180 grados cuando sale del area borra esa area3d;

 extends Area3D


func _ready():


pass # Replace with function body.


func _process(delta):


pass


func _on_area_entered(area):


rotate_x(180)


pass # Replace with function body.


func _on_area_exited(area):


queue_free()

pass

  


Script para godot cuando entra en el area3d un objeto rota , cuando sale se traslada;

 extends Area3D



# 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):

rotate_x(180)


pass # Replace with function body.



func _on_area_exited(area):

translate(Vector3(2, 0,0))

pass