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.
Captura de video donde estoy haciendo pruebas para añadir exclusibamente la animacion que me interesa de Mixamo a mi personaje que uso para Godot4.2,
La clave del problema es añadirle el esqueleto, y esta en los circulitos que se ponen en las extremidades, del personaje personalizado, primero has de subir tu personaje a Mixamo en formatos fbx o obj yo los e probado los dos, y de hay desde Mixamo se elige una vez has subido tu personaje ,una animacion y cuando lo a admitido bien y has colocado los circulos en las extremidades del personaje, lo pasas a blebder y desde blender lo exportas a Godot en formato glb.......
En resumen, orden de los pasos que e trabajado yo.......
1- maquehuman.--formatos --obj o fbx--yo use esqueleto de tipo game generico....
2-exportar a Mixamo- colocar los circulitos nen las extremidades
3-exportar a blender---para que desde blender lo transforme todo a formato--- glb
Primero pondre dos ejemplos de script GDScript que sirven para que al pulsar las teclas de flecha se active la animacion dos ejemplos con dos teclas diferentes,,,,
extends Node3D
# Variable para controlar si la animación está activa
var is_animating = false
# Called when the node enters the scene tree for the first time.
func _ready():
pass
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
# Reproduce la animación al presionar la tecla "M"
if Input.is_action_pressed("ui_down"): # Reemplaza "ui_accept" con el código de acción real de la tecla "M"
A palo seco no sirven los archibos en fbx en godot4.2 sin manipular el godot4.2 y prepararlo para que los admita.
De mixamo e importado en fbx de diversas versiones y lo e tranformado a glb con blender y me a dado muchas dificultades, me funciona pero solo la escena aislada, a la que lo paso el personaje a la principal escena no funciona(ago algo mal sin duda).(DESPUES DE UNA HORA DE TRASTEAR............
FUNCIONA CON FBX BINARIO A LAPERFECCION PERO HAY QUE PASARLO A GLB CON BLENDER Y YA FUNCIONA..........
En cambio y no es publicidad para que se use DEEPMOTION, e pasado su formato de fbx con blender a glb y me funciona de maravilla, ahora e de aprender a mover la aninacion en si misma a personajes que yo modele...bueno a eso boy a ir estas semanas.
Para quien no conozca DEEPMOTION es un sofware que captura el movimiento de videos de personas que se mueven caminan corren lo que sea y telo pasa aun muñequito a 2 formatos uno de ellos fbx a apartir de hay.......a currarselo todo......
En el video muestro como se instancia un cubo que hace de proyectil, todo esta en la version de Godot 4.2, en la version 3.5 el tema de instanciar tiene diferencias por que parte del nodo Spatial ,que ya no existe en la version 4.2 , me volvia loco intentandolo en la version 4.2 y claro no podia por que hay diferencias, como que para empezar Spatial ya no se utiliza, tambien empiezo a mostrar intentos de gestionar la memoria con Godot, los proyectiles por ejemplo cuando dejo de presionar la tecla de disparar el proyectil se borra del juego y de la memoria, si no se hace algo que los borre, el juego se pararia porque no dejaria de dibujar los proyectiles y de consumir los recursos de la ram o la rom o de la memoria que use la targeta grafica,
Creo que con estos minimos conocimientos, ya se puede empezar a hacer algun juego divertido, porque al saber instanciar, puedes matar enemigos, cambiarles las animaciones ,al cambiar una copia del enemigo con una animacion diferente, crear explosiones, que salgan rayos de edificios destruidos, fuego de bidones , agua de depositos, humo de fuegos apagados, y al saber borrar objetos por colisiones de objetos que entran en su area3d mas de lo mismo....poco a poco ya me podre centrar mas en la parte artistica modelando y pintando mejores personajes, tambien e aprendido a hacer puertas animadas que se pueden mover por todo el escenario haciendo todas las copias que me vengan en gana....¡¡¡¡¡.viva Godot!!!!!
aqui en la version godot3.5 el video, no comento nada solo echo captura en video del estudio
otro video del tema en la version de godot 4.2 no comento nada solo es captura de video video de encima ahorra memoria en godot, menos poligonos menos gasto de recursos de tu maquina mas fluidez y es super sencillo...........
scripts fundamentales----------------
AVANCES MUY BUENOS
extends CharacterBody3D
const SPEED = 5.0
const JUMP_VELOCITY = 4.5
const FRICTION = 25
const HORIZONTAL_ACCELERATION = 30
const MAX_SPEED=5
# Get the gravity from the project settings to be synced with RigidBody nodes.
var gravity = ProjectSettings.get_setting("physics/3d/default_gravity")
@onready var camera = $Camera3D
func _ready():
Input.mouse_mode=Input.MOUSE_MODE_CAPTURED
func _unhandled_input(event):
if event is InputEventMouseMotion and Input.mouse_mode==Input.MOUSE_MODE_CAPTURED:
EXPLICACION: Dos semanas asta conseguir esto increible.......en fin , por fin consegui instanciar de diversas formas en godot3d version 4.2 , esta es muy buena para abatir enemigos y que los cambie por una copia con otra animacion o una explosion o lo que se tercie, en un area3d vacia cuando por ejemplo pasa un proyectil se instancia en este caso un personaje que tiene una animacion, tengo que seguir estudiando y trabajando, a partir de estos conocimientos no me sera complicado cambiar un enemigo vivo por uno muerto al ser impactado por una bala, y tambien podre cambiar escenas enteras espero, y jugar con camaras.............bueno hay estoy¡¡¡¡¡ (si alguien usa el script que recuerde usar el tema de "señales" de godot que elija func _on_area_entered(area): cuando sale la flechita verde ala izquierda de la linea del script sabreis que funcionara si o si y que lo mejor para que el personaje este en la ruta correcta es que lo arrastreis el ",tscn" en este caso res://calva.tscn desde el sistema de archivos al parentesis -----var Calva = preload("res://calva.tscn")---------asi lo tengais donde lo tengais funcionara.
Aunque todo es insistir probar insistir probar y trabajar, quizas ayude alguien mis anotaciones............).
Una pelicula vale mas que 1000 palabras, el sistema de LOOD o LOD sirve para reducir los poligonos que dibujan los objetos del juego, personajes, edificios, vegetacion, vehiculos, lo que sea.....cuando estas lejos pocos poligonos poca memoria necesita gana fluidez cuando estas mas cerca mas nitidez y mas poligonos, si se save jugar con la memoria de los desarrollos, importa un pimiento la que tengas en tu pc , .....claro que si puedes tener un buen pc aprobecha , pero es mas saber utilizar la maquina de la que se dispone, yo personalmente estoy muy entusiasmado con Godot quizas no es tan perfeccionista con los resultados pero, si no bas a ser profesional y trabajar para otro.....creo que no tienes nada que perder teniendo en cuenta que godot es totalmente gratuito y que encima hay posibilidares de ganar algo haciendo juegos con el,
y ahora que empiezo a comprender el tema de instanciar objetos en las escenas con Godot4.2, me boy a poner las botas haciendo virgerias con este estupendo motor de juegos gratuito........Godot.