comecei a me interessar em programação recentemente, acredito que seu vídeo seria ótimo para pessoas já com base em programação, mas para iniciantes como eu, apenas copiar o código, não nos agrega em aprendizagem. Acho que seria muito interessante o senhor trazer um vídeo com uma didática para iniciantes, com o intuito de ensinar os comandos/códigos base para movimentação padrão de personagens 2D, sem necessidade de inicialmente usar sprits ou animações, só com a utilização de um simples cubo e cenário básico, para nos ensinar como funciona os scrpts de movimento top/down e plataforma. Espero que isso chegue até você e que pense um pouco em produzir esse vídeo. irei continuar acompanhando.
Se tu deseja não ficar tão perdido, usa o chatgpt para perguntar algumas coisas que não está compreendendo. Ele não é totalmente perfeito mas ajuda bastante a sanar minhas dúvidas e me ajuda bastante. Eu uso a doc e vejo outros vídeos sobre o assunto para ter uma base maior
Não sou religioso, mas considero você como um anjo na terra, no sentido de espalhar um conhecimento desse de graça. Isso pode realmente mudar a vida de uma pessoa, ao ponto de faze-la se interessar por programação
Bug do deslizamento... Olha, sabe aquelas setinhas? ">>" eu deixei apenas ">" abaixo do return com o espaço de uma linha, fricção e aceleracao botei no 0.2, é isso, espero ter ajudado
nao sei o caralho de motivo mas o meu personagem nao parava de andar, copiei o seu e deu tudo certo. Vou enviar o meu aqui caso voce possa me ajudar a analizar. extends CharacterBody2D @export_category("Variables") @export var _move_speed: float = 64.0 @export var _friction: float = 0.2 @export var _acceleration: float = 0.2 func _physics_process(_delta: float) -> void: _move() move_and_slide()
lerp é uma função que cria uma interpolação, ou seja, ele faz transições suaves entre dois valores + o valor interpolado. Por exemplo lerp(10, 100, 0.5), o lerp cria uma transição suave de 0.5 entre os valores 10 e 100, não fazendo eles chegarem a 10 ou 100 de forma instantânea, ele faz que esses números acelerem e desacelerem gradualmente. Isso é perfeito para efeitos de transição de cena, fricção e aceleração e assim vai. já o @export ele permite você alterar o valor de uma var sem a necessidade de ir para o código. O category serve mais para ordenar e organizar esses @export
@@yotao3147 Obrigado mn, eu já imaginava como oo category o lerp funcionvam pq já usei ele algumas vezes desde q fiz o comentário, mas vc confirmou meus palpites, obrigado imrão, tmj
@@antoniogaspar132 Uma dica é pergunta ao Chatgpt. Não é 100% útil porque pode dar respostas equivocadas, mas ele ajuda bastante para o cara ter uma base. Mas seria legal ele ensinar essas coisinhas aí num curso mais focado na lógica de programação para jogos usando a godot
cara voce poderia ensinar a criar uma movimentação por joystick e botoes de ataque para touch, porque eu quero fazer um game focado no celular mais não estou conseguindo implementar esses botões mesmo usando plugins, ainda da uns problemas tipo, eu nao sei como fazer i personagem dar o flip na hora de movimentar para as laterais, e tds os outros tutoriais que eu vi estao em uma versao da godot 3.5, ajuda ai nmrl professor 🙏
aqui tambem as vezes da erro e sempre é por conta de algum erro de caracteres no codigo, as evzes escrevo errado ou falta _ na frente. Sempre verifique se esta escrevendo corretamente os valores.
Oi DevBandeira, eu daiquiri o seu curso Do básico ao avançado, a meses atrás não deu para concluir na época, sabe disser se funciona na versão atua, também penso em daiquiris os outros 2 novo, estava estudando unity por questão do mercado, mais de pois do que ouve fiquei sem chão, se serve um conselho acho que vc deveria fazer outro curso focado no 3d dando foco como tipos de câmeras e efeitos e um pouco sobre física e gravidade.
Também tive esse problema apesar de esta tudo escrito como no video depois de refazer cada sintase , observei que estava na classe errada na arvore . de uma olhada se não é o mesmo caso. return tem que esta na mesma classe de ordem .
Meu personagem tá gigante por conta que eu tive que exportar do celular pro computador, pq não achei tutorial de como fazer uma tabela de sprites, tem como vc me ajudar?meu personagem ficou tão fofoo 😭 não quero perder ele
Maninho mim ajuda, Please. eu estava fazendo o seu tutorial de boas, até q os dois eixos y ficava dando erro, e toda vez q eu iniciava a cena o boneco NN andava, estou um pouco frustado por ficar 3 horas fazendo isso e no fim, NN por ele pra andar, mas NN desisto fácil, por isso estou aq pedindo a sua ajuda🙏
o void está dando erro no script, por causa do -> ele serve pra zerar a memoria? pois neste formato ele não responde mais e ao retirar o -> void: de ambas as linhas consegui executar normalmente.
o -> void é dizendo que vai ser uma função que não vai precisar retornar nada, você está usando o c# ou o gdscript? No c# pode ser diferente a nomenclatura, mas contanto que o seu código não esteja com algum return valor, é para funcionar com a tipagem, mas é algo completamente opcional.
alguem pode me dar uma dica, toda vez que executo a cena ela abre e minimiza sozinha, voltando para a godot no escript... ta incomodando já, pois deveria abrir e ficar na janela!
Escrevi o codigo e deu erro, copiei e colei aqui: extends CharacterBody2D @export_category("Variables") @export var _move_speed: float = 64.0 func _physics_process(_delta: float) -> void: _move()
Input ta em minusculo no inicio, você escreveu "input", quando precisa ser "Input", é algo mínimo, mas uma coisa escrita errada faz o projeto todo não funfar.
@@LuckxdArts Na epoca eu demorei umas boas horas para descobrir que era isso kk mais obrigado mesmo assim brother. A alguns meses migrei para a Unreal Engine, também é muito boa.
Eu to parado aqui, ja corrigir o meu alguns vezes e mesmo assim o script esta dando erro na parte de "direction != Vector2.zero" depois disso so fica em vermelho o resto do script, se alguem puder me ajudar acredito
é maravilhoso quando você não entende nada de programação, você escreve o exato mesmo código do tutorial, sem erros, usando a mesma versão do cara do tutorial e não funciona =D como você conserta, eis a questão XD kkkkkkkkkkk ficando preso na mesma etapa, lógico =D O vídeo tá legal, só to me t0rtur4nd0 um poquin, é divertido :)
@@patoraivoso sim, galera no inicio faz isso sem analisar, eu já fiz muito quando comecei a 7 anos atrás, hoje construí uma boa base de programação, só tenho preguiça de ler o manual kkkkkk, por isso opto por vídeo! só olho o manual quando não existem vídeo sobre, eu planejo criar minha game engenhe para fins de dânticos.
@@WeslhyAlves Pse, eu comecei a 1 ano atrás e graças a esses erros, eu consegui aprender a ler meus códigos e entender oque estou fazendo. (Porém te. Uma galera que só quer copiar e colar o código, aí depois fala que o cara que ensinou que esta errado) kkk
@@patoraivoso Estou pensando em montar um grupo para estudos de programação e desenvolvimento de projetos se vc se quiser fazer parte só avisar, sei python aranho um pouco em c#, c++ já vi lua e um pouco de js, :)
voce explica muito mal mano nao fala o que cada coisa faz nao explica que codigo voce ta fazendo só sai escrevendo coisa mano esse tutorial é pra quem ja sabe algo pq quem nao sabe só vai poder copiar
comecei a me interessar em programação recentemente, acredito que seu vídeo seria ótimo para pessoas já com base em programação, mas para iniciantes como eu, apenas copiar o código, não nos agrega em aprendizagem. Acho que seria muito interessante o senhor trazer um vídeo com uma didática para iniciantes, com o intuito de ensinar os comandos/códigos base para movimentação padrão de personagens 2D, sem necessidade de inicialmente usar sprits ou animações, só com a utilização de um simples cubo e cenário básico, para nos ensinar como funciona os scrpts de movimento top/down e plataforma. Espero que isso chegue até você e que pense um pouco em produzir esse vídeo. irei continuar acompanhando.
Se tu deseja não ficar tão perdido, usa o chatgpt para perguntar algumas coisas que não está compreendendo. Ele não é totalmente perfeito mas ajuda bastante a sanar minhas dúvidas e me ajuda bastante. Eu uso a doc e vejo outros vídeos sobre o assunto para ter uma base maior
Não sou religioso, mas considero você como um anjo na terra, no sentido de espalhar um conhecimento desse de graça. Isso pode realmente mudar a vida de uma pessoa, ao ponto de faze-la se interessar por programação
Bug do deslizamento...
Olha, sabe aquelas setinhas? ">>" eu deixei apenas ">" abaixo do return com o espaço de uma linha, fricção e aceleracao botei no 0.2, é isso, espero ter ajudado
OBRIGADO!
Galera, aqui funcionou de boa, mudei só pra 0.3 porque acho que fica melhor
"extends CharacterBody2D
@export_category("Variables")
@export var _move_speed: float = 64.0
@export var _friction: float = 0.3
@export var _acceleration: float = 0.3
func _physics_process(_delta: float) -> void:
_move()
move_and_slide()
func _move() -> void:
var _direction: Vector2 = Vector2(
Input.get_axis("move_left", "move_right"),
Input.get_axis("move_up", "move_down")
)
if _direction != Vector2.ZERO:
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _acceleration)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _acceleration)
return
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _friction)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _friction)"
nao sei o caralho de motivo mas o meu personagem nao parava de andar, copiei o seu e deu tudo certo. Vou enviar o meu aqui caso voce possa me ajudar a analizar.
extends CharacterBody2D
@export_category("Variables")
@export var _move_speed: float = 64.0
@export var _friction: float = 0.2
@export var _acceleration: float = 0.2
func _physics_process(_delta: float) -> void:
_move()
move_and_slide()
func _move() -> void:
var _direction: Vector2 = Vector2(
Input.get_axis("move_left", "move_right"),
Input.get_axis("move_up", "move_down")
)
if _direction != Vector2.ZERO:
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _acceleration)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _acceleration)
return
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _friction)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _friction)
@@pelumo2624 Dois tabs ao invés de um antes de velocity.x e velocity.y.
ao apertar duas direcoes opostas o personagem fica girando , como resolvo isso ?
🤔
Like garantido, show
cara pfv me ajuda na parte do input.get_axis("move_up," "move down"). fica dando erro, e a ")" também da erro.
A vírgula está dentro do aspas, mas deve ficar fora separando as duas strings: "move_up", "move_down"
Ótimo conteúdo! você acha que deve ser difícil fazer um jogo nesse estilo mas multiplayer? talvez um RPG multiplayer, ou até mesmo um MMORPG ?
o meu so fuucionou com o seguite script
"extends CharacterBody2D
@export_category("Variables")
@export var _move_speed: float = 64.0
@export var _friction: float = 0.3
@export var _acceleration: float = 0.3
func _physics_process(_delta: float) -> void:
_move()
move_and_slide()
func _move() -> void:
var _direction: Vector2 = Vector2(
Input.get_axis("move_left", "move_right"),
Input.get_axis("move_up", "move_down")
)
if _direction != Vector2.ZERO:
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _acceleration)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _acceleration)
return
velocity.x = lerp(velocity.x, _direction.normalized().x * _move_speed, _friction)
velocity.y = lerp(velocity.y, _direction.normalized().y * _move_speed, _friction)
valeu cara, o codigo do cara n parava de deslizar dai eu coloquei o seu e ficou perfeito
@@Lancamissill Sério?
Pode usar o código do vídeo para nossos projetos, pois estou querendo participar de uma game jam mais nao sei de muita coisa de criar jogos
Ótimo video mn, mas poderia ensinar oq é essa função lerp
e oq é o export categorys?
lerp é uma função que cria uma interpolação, ou seja, ele faz transições suaves entre dois valores + o valor interpolado. Por exemplo lerp(10, 100, 0.5), o lerp cria uma transição suave de 0.5 entre os valores 10 e 100, não fazendo eles chegarem a 10 ou 100 de forma instantânea, ele faz que esses números acelerem e desacelerem gradualmente. Isso é perfeito para efeitos de transição de cena, fricção e aceleração e assim vai.
já o @export ele permite você alterar o valor de uma var sem a necessidade de ir para o código. O category serve mais para ordenar e organizar esses @export
@@yotao3147 Obrigado mn, eu já imaginava como oo category o lerp funcionvam pq já usei ele algumas vezes desde q fiz o comentário, mas vc confirmou meus palpites, obrigado imrão, tmj
@@antoniogaspar132 Uma dica é pergunta ao Chatgpt. Não é 100% útil porque pode dar respostas equivocadas, mas ele ajuda bastante para o cara ter uma base. Mas seria legal ele ensinar essas coisinhas aí num curso mais focado na lógica de programação para jogos usando a godot
Essa função serve para categorizar as variáveis que tu tá exportando e deixar organizado no inspetor
cara voce poderia ensinar a criar uma movimentação por joystick e botoes de ataque para touch, porque eu quero fazer um game focado no celular mais não estou conseguindo implementar esses botões mesmo usando plugins, ainda da uns problemas tipo, eu nao sei como fazer i personagem dar o flip na hora de movimentar para as laterais, e tds os outros tutoriais que eu vi estao em uma versao da godot 3.5, ajuda ai nmrl professor 🙏
meu personagem não anda, da erro nessa parte do script
" func _physics_process(_delta: float) -> void:
_move()
func _move() -> void:" ambas as duas não são reconhecidas, eu n consegui resolver nem com o chatgtp, alguém me ajuda, please
Também não consegui.
Man, no meu caso ficou faltando uma vírgula, eu fiquei procurando o erro e levei um tempo pra achar
aqui tambem as vezes da erro e sempre é por conta de algum erro de caracteres no codigo, as evzes escrevo errado ou falta _ na frente. Sempre verifique se esta escrevendo corretamente os valores.
Oi DevBandeira, eu daiquiri o seu curso Do básico ao avançado, a meses atrás não deu para concluir na época, sabe disser se funciona na versão atua, também penso em daiquiris os outros 2 novo, estava estudando unity por questão do mercado, mais de pois do que ouve fiquei sem chão, se serve um conselho acho que vc deveria fazer outro curso focado no 3d dando foco como tipos de câmeras e efeitos e um pouco sobre física e gravidade.
meu boneco simplesmente nao anda dps de seguir o tutorial kkkk ele fica la travadao e eu li letra por letra do codigo pra ver mas nada ta diferente
Também tive esse problema apesar de esta tudo escrito como no video depois de refazer cada sintase , observei que estava na classe errada na arvore . de uma olhada se não é o mesmo caso. return tem que esta na mesma classe de ordem .
ta dando erro pede para declarar a variavel velocity
Meu personagem ele está andando, porém não para de deslizar kkjjkk como faz pra ele parar de andar???
Meu personagem tá gigante por conta que eu tive que exportar do celular pro computador, pq não achei tutorial de como fazer uma tabela de sprites, tem como vc me ajudar?meu personagem ficou tão fofoo 😭 não quero perder ele
Porque você usa _ antes das variaveis?
Semântica
Boa tarde! Meu personagem não está aparecendo, estou na #2 aula.
como resolveu?
Esse código funciona em mobile?
Sei que é difícil mas em um futuro teria como ensinar pelo celular também?
Maninho mim ajuda, Please. eu estava fazendo o seu tutorial de boas, até q os dois eixos y ficava dando erro, e toda vez q eu iniciava a cena o boneco NN andava, estou um pouco frustado por ficar 3 horas fazendo isso e no fim, NN por ele pra andar, mas NN desisto fácil, por isso estou aq pedindo a sua ajuda🙏
Mn você colocou os botões invertidos? Exemplo cima fica baixo
@@Areuskk na vdd nao, eu errei, quando eu fui por a variavel velocity, mas depois de um bom tempo estudando eu finalmente consegui
qual é a linguagem de programação usada?
GDScript, linguagem nativa da Godot
@@DevBandeira ok ok, vlw mano! muito com seu conteúdo!
o void está dando erro no script, por causa do ->
ele serve pra zerar a memoria?
pois neste formato ele não responde mais e ao retirar o -> void: de ambas as linhas consegui executar normalmente.
o -> void é dizendo que vai ser uma função que não vai precisar retornar nada, você está usando o c# ou o gdscript? No c# pode ser diferente a nomenclatura, mas contanto que o seu código não esteja com algum return valor, é para funcionar com a tipagem, mas é algo completamente opcional.
alguem pode me dar uma dica, toda vez que executo a cena ela abre e minimiza sozinha, voltando para a godot no escript... ta incomodando já, pois deveria abrir e ficar na janela!
tem erro no seu script ... refaça.
eu testei e esse código não funciona, eu testei e ficou dando erro toda hora
E qual o erro que você está tendo?
@@DevBandeira estou copiando exatamente igual e o programa fica relatando algo de errado, então se eu deixar o código assim não vai funcionar
@@fireko284 Manda um print do seu código lá no discord do canal, para eu poder ver o erro que você está tendo.
@@DevBandeira ok, mas antes vou ver se ecrevi errado ou se eu deveria ter deixado de adcionar algo
@DevBandeira consigo fazer seu curso pelo celular,já que lançou a Godot para Android?
Escrevi o codigo e deu erro, copiei e colei aqui:
extends CharacterBody2D
@export_category("Variables")
@export var _move_speed: float = 64.0
func _physics_process(_delta: float) -> void:
_move()
func _move() -> void:
var _direction: Vector2 = Vector2(
input.get_axis("move_left", "move_right"),
input.get_axis("move_up", "move_down")
)
velocity = _direction.normalized() * _move_speed
move_and_slide()
Input ta em minusculo no inicio, você escreveu "input", quando precisa ser "Input", é algo mínimo, mas uma coisa escrita errada faz o projeto todo não funfar.
@@LuckxdArts Na epoca eu demorei umas boas horas para descobrir que era isso kk mais obrigado mesmo assim brother.
A alguns meses migrei para a Unreal Engine, também é muito boa.
@@lhscoderch Boa, unreal é mesmo muito boa!
Eu to parado aqui, ja corrigir o meu alguns vezes e mesmo assim o script esta dando erro na parte de "direction != Vector2.zero" depois disso so fica em vermelho o resto do script, se alguem puder me ajudar acredito
Bota o Z do zero em letra maiúscula
Estou seguindo seu tutorial porém com C# pois pra mim é melhor ja que venho da unity, até o momento com cosias básicas consegui traduzir tudo :)
eu venho da unreal eestou fazendo a mesma coisa so que em c++, voce nao imagina o trampo que da pra traduzir kkk
@@PixelEmber ai tu é doido kkkkkkkkk
é maravilhoso quando você não entende nada de programação, você escreve o exato mesmo código do tutorial, sem erros, usando a mesma versão do cara do tutorial e não funciona =D
como você conserta, eis a questão XD kkkkkkkkkkk ficando preso na mesma etapa, lógico =D
O vídeo tá legal, só to me t0rtur4nd0 um poquin, é divertido :)
Sei como é, já passei por isso a 2 anos atrás , por experiência de uma olha que provável mente vc errou uma coisinha de nada :)
@@WeslhyAlvessim, 99% das vezes o erro é de quem tá copiando o código e colando kkk
@@patoraivoso sim, galera no inicio faz isso sem analisar, eu já fiz muito quando comecei a 7 anos atrás, hoje construí uma boa base de programação, só tenho preguiça de ler o manual kkkkkk, por isso opto por vídeo! só olho o manual quando não existem vídeo sobre, eu planejo criar minha game engenhe para fins de dânticos.
@@WeslhyAlves Pse, eu comecei a 1 ano atrás e graças a esses erros, eu consegui aprender a ler meus códigos e entender oque estou fazendo. (Porém te. Uma galera que só quer copiar e colar o código, aí depois fala que o cara que ensinou que esta errado) kkk
@@patoraivoso Estou pensando em montar um grupo para estudos de programação e desenvolvimento de projetos se vc se quiser fazer parte só avisar, sei python aranho um pouco em c#, c++ já vi lua e um pouco de js, :)
Tem como fazer eu fazer pra Mobile?
Cara, A godot de mobile é exatamente a mesma de PC, então dá sim. Só vai ter que se acostumar msm
@@SPEEDYTHEDOG-OCPra mim o único problema é a tela que dificulta dms em quase tudo por exemplo na hora de fazer o mapa com os tiles
Para mim n funcionou
voce explica muito mal mano nao fala o que cada coisa faz nao explica que codigo voce ta fazendo só sai escrevendo coisa mano esse tutorial é pra quem ja sabe algo pq quem nao sabe só vai poder copiar
desculpa
@@nicollas2740
Calma amigo
Eu fiz igual ele mostrou e tava dando erro🤡 eu perguntei pro chat gbt e ele me ajudou 🤡🤡🤡🤡🤡🤡🤡
@@Solidaunzeradaque erro deu?
@@Camelianoo1 não pegava nada kakakak