lunes, 4 de noviembre de 2024

Cambiar de escena presionando"1" con un mapa de entrada con nombre"PISO1" para un GDScript de Godot 4.3;

 extends WorldEnvironment


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

func _process(delta: float) -> void:

# Si se presiona la tecla 1 (mapa de entrada PISO1)

if Input.is_action_just_pressed("PISO1"):

# Cargar la siguiente escena

var siguiente_escena = preload("res://ESCENAS/world_environmentESCENA PRINCIPAL-6-.tscn")

# Cambiar a la escena cargada

get_tree().change_scene_to_packed(siguiente_escena)



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

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

Explicacion: Cambiar de escena presionando"1" con un mapa de entrada con nombre"PISO1" para un GDScript de Godot 4.3;

Ejercicio de animacion manual, echo con blender y pasado a godot 4.3;

 Es muy dificil hacer animaciones de caminar manualmente, pero yo lo estoy consiguiendo, y solo con dos poses una en tijera, y grabada al principio y la otra a la inversa en tijera tambien y grabada al final del video, solo dos puntos de referencia y luego se pasa la animacion a modo ping pong en godot, el resto es sencillisimo, balancear la caveza y la espalda  los brazos,,,,,,,fantastico¡¡¡


GDScript para por tiempo cambiar de escena, tambien salir del juego al presionar escape; version Godot 4.3; varia algo del 4.2;

 extends WorldEnvironment

var tiempo_transcurrido = 0.0  # Variable para almacenar el tiempo transcurrido


# 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




if Input.is_action_pressed("ui_cancel"):


get_tree().quit()






tiempo_transcurrido += delta




# Si han pasado 20 segundos, elimina el nodo


if tiempo_transcurrido >= 18.0:


#queue_free()



var siguiente_escena = preload("res://ESCENAS/world_environmentESCENA PRINCIPAL-5-.tscn")  # Precargar la escena




get_tree().change_scene_to_packed(siguiente_escena)  # Cambiar a la escena precargada (Godot 4.2)




#queue_free()  # Liberar este nodo después del cambio de escena


pass # Replace with function body.




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

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

Nota: los script de Godot 4.3  varian un poco de la version 4.2 , varian en estas lineas 

func _ready() -> void:

pass # Replace with function body.

func _process(delta: float) -> void:

#pass


---------------nota--------------------------------------------

arriba version Godot 4.3

debajo version Godot 4.2

------------------nota----------------------------------------



func _ready() 

pass # Replace with function body.

func _process(delta):

pass

viernes, 1 de noviembre de 2024

Escala un extends Label3D en eje -x- y en eje -y- con GDScript ;

 extends Label3D


var scale_speed = 0.2

var scale_direction = 1


func _ready() -> void:

pass  # Replace with function body.


func _process(delta: float) -> void:

# Escalado en los ejes X e Y

scale.x += scale_speed * scale_direction * delta

scale.y += scale_speed * scale_direction * delta


# Cambiar la dirección de escalado cuando alcance ciertos límites

if scale_direction == 1 and scale.x >= 0.3:

scale_direction = -1

elif scale_direction == -1 and scale.x <= 0.01:

scale_direction = 1


extends Label3D escalar un Label 3d mediante GDScript;

 extends Label3D


var scale_speed = 0.8

var scale_direction = 1


func _ready() -> void:

pass  # Replace with function body.


func _process(delta: float) -> void:

# Escalado en el eje X

scale.x += scale_speed * scale_direction * delta


# Cambiar la dirección de escalado cuando alcance ciertos límites

if scale_direction == 1 and scale.x >= 0.3:

scale_direction = -1

elif scale_direction == -1 and scale.x <= 0.01:

scale_direction = 1


GDScript camara rota en diversas direcciones, muy bueno;

 extends Camera3D


var target_rotation_x = PI / 2  # Ángulo de rotación objetivo en el eje X

var target_rotation_y = PI / 4  # Ángulo de rotación objetivo en el eje Y


var current_rotation_x = 0.0

var current_rotation_y = 0.0


var rotation_speed = 0.7  # Ajusta esta variable para cambiar la velocidad de rotación


var is_rotating_forward_x = true  # Indica si la rotación en X es en sentido horario

var is_rotating_forward_y = false  # Indica si la rotación en Y es en sentido horario


func _process(delta: float) -> void:

# Rotación en el eje X

if is_rotating_forward_x:

if current_rotation_x < target_rotation_x:

rotate_x(delta * rotation_speed)

current_rotation_x += delta * rotation_speed

if current_rotation_x >= target_rotation_x:

current_rotation_x = target_rotation_x

is_rotating_forward_x = false

else:

if current_rotation_x > -target_rotation_x:

rotate_x(-delta * rotation_speed)

current_rotation_x -= delta * rotation_speed

if current_rotation_x <= -target_rotation_x:

current_rotation_x = -target_rotation_x

is_rotating_forward_x = true


# Rotación en el eje Y

if is_rotating_forward_y:

if current_rotation_y < target_rotation_y:

rotate_y(delta * rotation_speed)

current_rotation_y += delta * rotation_speed

if current_rotation_y >= target_rotation_y:

current_rotation_y = target_rotation_y

is_rotating_forward_y = false

else:

if current_rotation_y > -target_rotation_y:

rotate_y(-delta * rotation_speed)

current_rotation_y -= delta * rotation_speed

if current_rotation_y <= -target_rotation_y:

current_rotation_y = -target_rotation_y

is_rotating_forward_y = true


jueves, 31 de octubre de 2024

Nuevo proyecto con Godot 4.3, videojuego de terror y misterio para publicar estas navidades u enero del 2025;

 

https://perico415.itch.io/

Arranque de desarrollo de un nuevo trabajo en el que intentare hacer efectos cinematograficos en este videojuego de terror y misterio, imitando al cine , que es mi principal fuente de inspiracion y de motivacion y entretenimiento, creo que estoy decantandome por un estilo personal de tipo comic en el que el jugador maneja al personaje, y cuenta una historia corta, me encanta muchisimo Stephen King, seguramente lo que hago tiene influencias del cine que veo, lector de libros no soy, la verdad, y Stephen King, tiene una coleccion grande de libros, pero su cine si lo devoro, lo que si leo ultimamente, son libros de historia del desarrollo de videojuegos que han tenido muchisimo exito, y esto me ayuda tambien a escribir este blog, el leido como se desarrollo Call of dutfy, ahora estoy leyendo Tomb Raider

ley Doom , y tengo para leer, Los Sims, Half-Life, Fifa, Grand Theft Auto, todos juegos que tengo del pasado y los e jugado en mayor o menor medida.