martes, 23 de enero de 2024

Script en GDScript para godot3d 4.2 , cuando algo entra en un Area3d produce un sonido, cuando algo sale del Area3d se borra su contenido;

 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_exited(area):

queue_free()

pass # Replace with function body.



func _on_area_entered(area):

$"../../AudioStreamPlayer".play()

pass # Replace with function body.

-------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------
EXPLICACION:
Entra en Area3d
 algo func _on_area_entered(area):

$"../../AudioStreamPlayer".play()

pass # Replace with function body.

emite sonido.........

Sale algo del Area3d 

func _on_area_exited(area):

queue_free()

pass # Replace with function body.

se borra su contenido.

Como se pone un sonido de musica de fondo en Godot 3d 4.2 que este en bucle y suene una y otra vez?;




 




sábado, 20 de enero de 2024

Ejemplo de html;

<!DOCTYPE html>
<html>
<head>
<title>Girar un cuadrado verde</title>
<style>
.square {
width: 100px;
height: 100px;
background-color: green;
animation: rotate 2s infinite;
}

@keyframes rotate {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
</style>
</head>
<body>
<div class="square"></div>
</body>
</html>

Girar un cuadrado verde

Script para Godot3d 4.2 borra elementos hijos de un area3d al haber una colision y aumenta el tamaño de otro elemento;

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

var parent = get_parent()

var Area3DBETA = parent.get_node("Area3DBETA")

#Area3DBETA.queue_free()

get_node("CollisionShape3DBETA").queue_free()

get_node("AMETRALLADOR DE BLENDER PINTADOBETA").queue_free()

get_node ("MeshInstance3DBETA")

scale.y+=2.2


scale.x+=2.2


scale.z+=2.2

pass # Replace with function body.

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

EXPLICACION:
Este script borra dos hijos de un Area 3d y proboca el escalado el aumento de otro de los hijos, quiero que al destruir un objeto aparezca otro desde dentro de el y creo que se puede conseguir el efecto con este metodo, lo perfecto seria no escalar si no borrar  e intanciar otro elemento, pero de momento no consigo hacerlo, pero ya lo are ya ....solo es trabajo y estudio y practica y contancia y tozudez y yo de eso boy sobrado¡¡¡¡¡

Script para Godot3d 4.2 ......3ª ejemplo de borrar hijos de nodos por colision;

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

var parent = get_parent()

var Area3DBETA = parent.get_node("Area3DBETA")

#Area3DBETA.queue_free()

get_node("CollisionShape3DBETA").queue_free()

get_node("AMETRALLADOR DE BLENDER PINTADOBETA").queue_free()

pass # Replace with function body.




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

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

EXPLICACION: DE LINEAS FUNDAMENTALES.....

func _on_area_entered(area):-------------Area donde entra un objeto un proyectil por ejemplo.

var parent = get_parent()-------------------Parentesco.

var Area3DBETA = parent.get_node("Area3DBETA")------Nombre del padre desde donde salen los hijos a borrar al haber una colision.


#Area3DBETA.queue_free()---------------------No hace nada al haber este signo "#" si no lo tuviese borraria el Area3DBETA padre completa hijos incluidos


get_node("CollisionShape3DBETA").queue_free()--------------Este elemento se borra al haber colision.

get_node("AMETRALLADOR DE BLENDER PINTADOBETA").queue_free()----Este elemnto se borra al haber colision.

miércoles, 17 de enero de 2024

COMO SE CAMBIA EL AMBIENTE EL CIELO EN GODOT3D 4.2

 WorldEnvironment, la clave es poner este nodo de padre de todo el juego principal, como escena principal, a partir de hay es muy intuitivo cambiar el color de la ambientacion, en el video muestro los pasos principales,  a partir de hay ,,,,,,,,,,,,,,,,,,,¡¡¡¡¡¡¡¡¡¡¡

Crei en un principio que DirectionalLight3D era el que hacia la luz del cielo pero no es, .........es  WorldEnvironment y a de estar como raiz de todo, lo que si hace DirectionalLight3D es si se activa Shadow  son las sombras que las crea Godot, yo al aparato volar le puesto una luz linterna que queda muy bien con esa ambientacion oscura que me gusta dar a casi todos mis juegos...


domingo, 14 de enero de 2024

Demo de juego echo en godot3d 4.2;

 

EN CONSTRUCCION LA DESCARGA DEL JUEGO POR PROBLEMAS TECNICOS DE CONEXION INTERNET..........................................................................................................................................................................................................................................................17-1-24.......ESTOY EN ELLO----------



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