miércoles, 19 de agosto de 2026

Mi juego a gustado a...otro youtuber;; estoy alucinando un poco;

https://www.youtube.com/watch?v=tYoqx01gCgs


https://perico415.itch.io/hellish-toilet



La opinion de la IA de como me siento con estas criticas de youtubers:   

Es totalmente comprensible que te sientas así. Estás experimentando exactamente la magia del arte y de la creación: ver cómo algo que sale directamente de tu cabeza atraviesa un océano, llega a la otra punta del mundo y conecta con gente que ni te conoce.

Aunque la industria sea distinta, el proceso es muy parecido al del cine: has escrito una idea, la has producido en forma de juego y ahora tiene a una audiencia en Estados Unidos reaccionando, riendo y entreteniéndose con ella. Esa sensación de ver tu obra "en pantalla" a través de creadores de otro país es un subidón auténtico.

Que no estés monetizando o ganando dinero en este momento no le quita ni un ápice de valor:

  • El reconocimiento cultural es el primer paso: En el cine y en los videojuegos indies, la visibilidad siempre viene antes que el dinero. Que tu trabajo genere curiosidad e impacto en un mercado tan potente es una señal de que tienes talento para captar la atención del público.

  • Disfruta el momento: Tienes todo el derecho a "fliparlo" y a vivirlo con ilusión. Estás creando proyectos desde tu espacio, a tu ritmo, y logrando que crucen fronteras.

Esa satisfacción de ver tu creación viva en la cultura popular de internet no se compra con nada. ¡Disfruta muchísimo de esta ola, que te la has ganado a pulso con tu trabajo!




martes, 18 de agosto de 2026

Mi juego a gustado a un youtuber;

 https://www.youtube.com/watch?v=CVRznYUQGvw




lunes, 17 de agosto de 2026

Videojuego terror y gore, corto, completo, sangriento, para cagarse de miedo. windows y linux descargar y jugar:

 Videojuego terror y gore, corto, completo, sangriento, para cagarse de miedo.


windows y linux descargar y jugar





sábado, 15 de agosto de 2026

GDScript para camara3d, moverse por el escenario en cualquier angulo, con posibilidad de limitar los traslados desde el inspector;

 extends Camera3D


@export_group("Movimiento y Cámara")

@export var speed: float = 5.0

@export var mouse_sensitivity: float = 0.003


@export_group("Límites de Desplazamiento (Metros)")

@export var limit_forward: float = 10.0   # Máximo W (Adelante)

@export var limit_backward: float = 5.0    # Máximo S (Atrás)

@export var limit_left: float = 8.0        # Máximo A (Izquierda)

@export var limit_right: float = 8.0       # Máximo D (Derecha)


var rotation_x: float = 0.0

var start_position: Vector3


func _ready() -> void:

Input.mouse_mode = Input.MOUSE_MODE_CAPTURED

start_position = global_position


func _unhandled_input(event: InputEvent) -> void:

if event.is_action_pressed("ui_cancel") or (event is InputEventKey and event.pressed and event.keycode == KEY_ESCAPE):

get_tree().quit()


if event is InputEventMouseMotion and Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:

rotate_y(-event.relative.x * mouse_sensitivity)

rotation_x -= event.relative.y * mouse_sensitivity

rotation_x = clamp(rotation_x, deg_to_rad(-89.0), deg_to_rad(89.0))

rotation.x = rotation_x


func _process(delta: float) -> void:

var input_dir := Vector3.ZERO


if Input.is_key_pressed(KEY_W):

input_dir.z -= 1  # W: Adelante

if Input.is_key_pressed(KEY_S):

input_dir.z += 1  # S: Atrás

if Input.is_key_pressed(KEY_A):

input_dir.x -= 1  # A: Izquierda

if Input.is_key_pressed(KEY_D):

input_dir.x += 1  # D: Derecha


if input_dir != Vector3.ZERO:

input_dir = input_dir.normalized()


# Movemos en el plano horizontal para no volar al mirar arriba/abajo

var forward := -global_transform.basis.z

forward.y = 0

forward = forward.normalized()


var right := global_transform.basis.x

right.y = 0

right = right.normalized()


# Calculamos el intento de movimiento

var movement := (right * input_dir.x + forward * -input_dir.z) * speed * delta

var target_position := global_position + movement


# Medimos la distancia acumulada desde el origen

var offset := target_position - start_position


# Aplicamos los 4 límites independientes (W, S, A, D)

offset.x = clamp(offset.x, -limit_left, limit_right)

offset.z = clamp(offset.z, -limit_forward, limit_backward)


# Asignamos la posición corregida manteniendo la altura fija (Y)

global_position = Vector3(start_position.x + offset.x, start_position.y, start_position.z + offset.z)


OmniLight3D se balancea mediante GDScript; y se puede calibrar desde el inspector;

 extends OmniLight3D


# Parámetros editables desde el Inspector

@export_group("Configuración de Balanceo")

@export var speed: float = 2.0       # Velocidad de la oscilación

@export var amplitude: float = 1.5   # Distancia máxima del balanceo (en metros)

@export var axis: Vector3 = Vector3(1, 0, 0) # Eje de movimiento (Por defecto X: izquierda/derecha)


# Guardamos la posición inicial para que el movimiento sea relativo a ella

var initial_position: Vector3

var time_passed: float = 0.0


func _ready() -> void:

# Al arrancar, memorizamos dónde hemos colocado la luz en el mapa

initial_position = position


func _process(delta: float) -> void:

# Acumulamos el tiempo transcurrido

time_passed += delta * speed

# Calculamos el desplazamiento usando la onda seno: sin(t) va de -1 a 1

var offset := axis.normalized() * sin(time_passed) * amplitude

# Aplicamos el balanceo partiendo de la posición inicial

position = initial_position + offset

GDScript para camara 3d en Godot 4.7, se mueve con el mouse y al presionar escape sales del juego; y te trasladas adelante atras izquierda y derecha;con -w-s-a-d;

 extends Camera3D


# Parámetros ajustables desde el inspector

@export var speed: float = 5.0

@export var mouse_sensitivity: float = 0.003


var rotation_x: float = 0.0


func _ready() -> void:

# Oculta y atrapa el puntero del ratón

Input.mouse_mode = Input.MOUSE_MODE_CAPTURED


func _unhandled_input(event: InputEvent) -> void:

# 1. Salir del juego al pulsar la tecla Escape

if event.is_action_pressed("ui_cancel") or (event is InputEventKey and event.pressed and event.keycode == KEY_ESCAPE):

get_tree().quit()


# 2. Rotación de la cámara con el ratón

if event is InputEventMouseMotion and Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:

# Girar a los lados (Eje Y global para no inclinarnos de lado)

rotate_y(-event.relative.x * mouse_sensitivity)

# Mirar arriba y abajo (Eje X local con límite)

rotation_x -= event.relative.y * mouse_sensitivity

rotation_x = clamp(rotation_x, deg_to_rad(-89.0), deg_to_rad(89.0))

rotation.x = rotation_x


func _process(delta: float) -> void:

# 3. Detectar teclas WASD para calcular la dirección de movimiento

var input_dir := Vector3.ZERO


if Input.is_key_pressed(KEY_W):

input_dir.z -= 1  # Adelante

if Input.is_key_pressed(KEY_S):

input_dir.z += 1  # Atrás

if Input.is_key_pressed(KEY_A):

input_dir.x -= 1  # Izquierda

if Input.is_key_pressed(KEY_D):

input_dir.x += 1  # Derecha


# Normalizar para que la velocidad no se duplique al moverte en diagonal

if input_dir != Vector3.ZERO:

input_dir = input_dir.normalized()


# 4. Mover la cámara según la dirección hacia la que está mirando

var direction := (transform.basis * input_dir).normalized()

global_position += direction * speed * delta


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

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

Explicacion: estupendo GDScript para manejar una camara3d en Godot 4.7, puedes explorar todo el entorno de un juego 3d con mucha facilidad:

GDScript para camara 3d en Godot 4.7, se mueve con el mouse y al presionar escape sales del juego;

 extends Camera3D


# Sensibilidad del ratón (ajusta este valor a tu gusto)

@export var mouse_sensitivity: float = 0.003


# Variables para controlar los límites de rotación vertical (mirar arriba/abajo)

var rotation_x: float = 0.0


func _ready() -> void:

# Captura y oculta el puntero del ratón en la pantalla

Input.mouse_mode = Input.MOUSE_MODE_CAPTURED


func _unhandled_input(event: InputEvent) -> void:

# 1. Salir del juego si se presiona la tecla Escape

if event.is_action_pressed("ui_cancel") or (event is InputEventKey and event.pressed and event.keycode == KEY_ESCAPE):

get_tree().quit()


# 2. Control de la cámara con el movimiento del ratón

if event is InputEventMouseMotion and Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:

# Giro horizontal (Eje Y)

rotate_y(-event.relative.x * mouse_sensitivity)

# Giro vertical (Eje X) con límite para no dar la vuelta completa

rotation_x -= event.relative.y * mouse_sensitivity

rotation_x = clamp(rotation_x, deg_to_rad(-89.0), deg_to_rad(89.0))

# Aplicamos la rotación vertical a la cámara

rotation.x = rotation_x