Godot, scripts para Godot estudios y aprendizajes, Creacion de videojuegos. Creacion y publicacion de videojuegos en internet. Como hacer videojuegos. C# unity. Animaciones unity blender. Personajes videojuegos graficos dibujos. Diseño grafico. Comic. Animaciones gif. Dibujo de retratos. Realidad virtual. Cine y realidad virtual.
sábado, 26 de octubre de 2024
GDScript ejemplo de codigo de animacion; al presionar "s" se para la animacion;
miércoles, 23 de octubre de 2024
Madre manicomium, ya a la venta;
martes, 22 de octubre de 2024
Videojuego de terror;
Pronto a la venta a partir del 28 de Octubre de 2024 en https://perico415.itch.io/
https://perico415.itch.io/lunes, 21 de octubre de 2024
martes, 15 de octubre de 2024
GDScript para manipular textos de titulos de videojuego en Godot 4.3 3d; dos ejemplos;
extends Label
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
if Input.is_action_just_pressed("escapedesalir"):
#rotation_degrees += 180
scale.x = 0
scale.y = 0
-----------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------
Este GDScript de arriba solo escala el texto asta 0 lo hace desaparecer de pantalla.
En el texto solo dice: VER INTRUCIONES "ESC" SALIR INSTRUCCIONES "ESC"
Este texto sale nada mas empezar el juego........... paso al segundo GDScript.........
---------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------
extends Label
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
if Input.is_action_just_pressed("escapedesalir"):
rotation_degrees += 180
--------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------
Este GDScript solamente rota el texto 180 grados y dice:
MOVER NIÑO -"W"-"A"-"S"-"D" --SALTAR "ESPACIO"- "BOTON DEL RATON IZQUIERDO"-¡¡NIÑO MUERDE!! Y GIRA IZQUIERDA CAMARA ,"BOTON DERECHO"¡¡NIÑO
MUERDE!! Y GIRA DERECHA CAMARA ,
"RUEDA DEL RATON" HACERCA ALEJA CAMARA.
MOVER LA CAMARA -
"U"-IZQUIERDA
"I"DERECHA-
" J"-ADELANTE-
"K"-ATRAS-
INCLINACION DE CAMARA-"O"-"P"
VER INTRUCIONES "ESC" SALIR INSTRUCCIONES "ESC"
Si te fijas veras que estas constantemente abisado para poder ver las instrucciones sin que te moleste el texto en pantalla, y poder jugar con toda la pantalla libre
domingo, 13 de octubre de 2024
Explicacion de la combinacion de dos GDScript, uno borra por tiempo el otro por colision;
extends Area3D
var Esferauno = preload("res://PERSONAJES/MADRE Y FINAL/camera_3d_2_enfoca_rostro_de_madre.tscn")
func _ready() -> void:
pass # Replace with function body.
func _process(delta: float) -> void:
pass
func _on_area_entered(area):
var Esferauno = Esferauno.instantiate()
add_child(Esferauno)
var parent = get_parent()
get_node("CollisionShape3D2").queue_free()
pass # Replace with function body.
func _on_area_exited(area):
pass # Replace with function body.
--------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
extends Camera3D
var tiempo_transcurrido = 0.0
# Llamado cuando el nodo entra en el árbol de escena por primera vez.
func _ready() -> void:
pass # Replace with function body.
# Llamado cada cuadro. 'delta' es el tiempo transcurrido desde el cuadro anterior.
func _process(delta: float) -> void:
rotate_x(0.00009)
tiempo_transcurrido += delta
if tiempo_transcurrido >= 19.0:
queue_free() # Elimina el nodo de la escena
---------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------
EXPLICACION:
Queria resolver un problema con mi actual juego en Godot 4.3 y en 3d, y lo resolví con estos dos GDScript, uno es para una simple cámara, muy sencillo simplemente tiene un GDScript para que rote unos grados en su eje “x” y un temporizador para que la cámara se borre alos pocos segundos 19 segundos. Esta cámara no esta en la escena del juego, va a a ser instanciada por el otro GDScript para un Area 3d; el de la cámara,tiene su propio GDScript para lo mencionado anteriormente rotación y borrado a los 19 segundos………
Pasemos al GDScript del Área 3d, cuando el player pasa por el Área 3d este toca un CollisionShape3D2 y produce la instacicion de la cámara, osea su aparición en la escena, como solo me interesa que esa cámara aga su función una sola vez el GDScript esta escrito para que a la vez que instancia la cámara que se borrara a los 19 segundos, borre también exclusivamente el CollisionShape3D2, así cuando el player vuelve a pasar por esa Área ya no vuelve a instanciar esa cámara,porque el CollisionShape3D2 lo provocaba, asi consigo jugar con dos cámara y distintos puntos de vista.
pronto este juego a la venta....................
Y un complemento una ampliacion del GDScript del Area3d para que borre tambien un techo.....
extends Area3D
var Esferauno = preload("res://PERSONAJES/MADRE Y FINAL/camera_3d_2_enfoca_rostro_de_madre.tscn")
func _ready() -> void:
pass # Replace with function body.
func _process(delta: float) -> void:
pass
func _on_area_entered(area):
var Esferauno = Esferauno.instantiate()
add_child(Esferauno)
var parent = get_parent()
get_node("CollisionShape3D2").queue_free()
get_node("CollisionShape3D3 de HIJO TIENE TECHO").queue_free()
pass # Replace with function body.
func _on_area_exited(area):
pass # Replace with function body.
viernes, 11 de octubre de 2024
Reflexiones, soluciones o trucos para aprobechar ciertos GDScript en Godot 4.3;
extends Area3D
var Esferauno = preload("res://PUERTAS Y PUERTAS REVENTADAS/PUERTAROTA.tscn")
var Esferauno2 = preload("res://PUERTAS Y PUERTAS REVENTADAS/PUERTAROTA2.tscn")
var Esferauno3 = preload("res://PERSONAJES/EL AHORCADO MUERTO/camera_3d_FENIX-100.tscn")
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass
func _on_area_entered(area):
var parent = get_parent()
var CollisionShape3Dcubo = parent.get_node("CollisionShape3D")
get_node("RigidBody3D PUERTA EMPUJO--INTENTARE BISAGRA").queue_free()
#get_node("RigidBody3D PUERTA EMPUJO--INTENTARE BISAGRA").queue_free()
get_node("CollisionShape3D2").queue_free()
get_node("Label3D").queue_free()
pass # Replace with function body.
func _on_area_exited(area):
var Esferauno = Esferauno.instantiate()
add_child(Esferauno)
var Esferauno2 = Esferauno2.instantiate()
add_child(Esferauno2)
var Esferauno3 = Esferauno3.instantiate()
add_child(Esferauno3)
pass # Replace with function body.
--------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------
Notas interesantes sobre programar con GDScript:
Desarrollando mi actual videojuego en Godot 4.3 me e dado cuenta que habeces hay soluciones que son sorprendentemente muy muy sencillas, cosas de novato, aun no llevo 1 año con Godot y en este GDScript que se trata de instanciar unos objetos y de borrar de pantalla otros la idea era de borrar una puerta de una habitacion, eso en un principio, pero luego la habitacion tiene un techo que necesitaba borrar al destruirse la puerta y me estaba devanando los sesos para escribir codigo que hiciese esa funcion, al igual que el pomo de la puerta, escribir codigo para que ese pomo se borrase al chocar algo en la puerta y escribir codigo para que se borrase el techo al tocar algo la puerta………...pues nada simplemente pòniendo esos objetos de hijos de la puerta principal que se borra cuando el playe pasa por ella , y ya esta¡¡¡¡¡¡¡¡¡ ahora puedo poner un timbre un decorado en la puerta un ojo de buey lo que se tercie……..y solo necesito la linea de codigo que destruye la puerta principal.¡¡¡¡¡¡¡