Atualmente, estou aprendendo a Unity e trabalhando em um livro de texto sobre matemática para videogames.
Meu objetivo é criar um jogo de corrida para WebGL (usando Three.js e talvez Physic.js).
Estou ciente de que o programa Unity o protege de muito do que está acontecendo e de muito trabalho duro para desenvolver até mesmo um simples videogame, mas se eu passar por vários tutoriais do Unity, muitos habilidades que eu aprendo traduzir para outras estruturas / mecanismos?
Sou bastante proficiente em design de níveis com o WebGL e sou um bom modelador 3D. Minhas fraquezas são definitivamente AI e Física.
Enquanto estou rapidamente escorando na minha matemática, e enquanto a Física é inegavelmente interessante, há apenas muitas horas durante o dia e há uma abundância de motores por aí para cuidar desse tipo de coisa.
A IA me atrai muito mais e é muito mais necessária. A IA muda drasticamente de jogo para jogo, é aprimorada fortemente durante o desenvolvimento e a física é muito mais constante.
Os conceitos de IA inclinados no Unity me permitem transferir esse conhecimento praticamente para qualquer lugar? Ou vou apenas remar o Unity Creek com essas habilidades?
Respostas:
Falando de maneira muito ampla, existem dois tipos de habilidades:
Se você está aprendendo algoritmos, ou se está aprendendo quando e por que técnicas específicas devem ser usadas, está criando habilidades altamente transferíveis, relevantes para todos os jogos. Se você está apenas aprendendo a manipular a interface de um mecanismo, provavelmente está criando habilidades menos transferíveis.
fonte
Sim. Aprender algoritmos é aprender algoritmos. As implementações podem mudar, mas você ainda entenderá a estratégia geral.
No entanto, também é verdade que você aprenderá com um alto nível de abstração. Isso significa que mudar para outros mecanismos, ou nenhum mecanismo, pode exigir que você aprenda os detalhes mais refinados do algoritmo e os detalhes mais detalhados da implementação.
No geral, é sempre uma boa estratégia para aprender coisas novas. Mesmo que apenas melhore sua compreensão geral do tópico, ele facilita o aprendizado e a implementação em uma tecnologia diferente.
fonte
Depende.
Existem alguns aspectos que podem ser transferidos, como a capacidade de projetar um jogo coerente que funcione. Mas isso vem do aprendizado de usar qualquer mecanismo de jogo / SDK.
Mas tudo depende de:
-Seu nível de uso Se você está pegando emprestado scripts e, na maior parte das vezes, sabe apenas coisas visuais, é provável que a única coisa que continue sendo transportada seja a familiaridade com algumas das ferramentas.
-O software em que você criou algum tipo de experiência em relação ao novo software. Passando de algo como GameMaker para algo como CryEngine, UDK, Unity não funciona realmente bem, a menos que:
- Você tem experiência em várias linguagens de programação. O Unity usa o Unityscript, que é sua própria bastardização de c # e java.
Se você é novo, como você parecia ter indicado, eu começaria com o básico do GameMaker. Familiarize-se com a interface de arrastar e soltar e com uma programação muito básica de jogo, e aprenda como escrever seus próprios scripts com a linguagem GameMaker. Enquanto isso, comece a aprender linguagens de programação (java, C, C ++, C #, ... etc), cujos conceitos serão incrivelmente úteis para quando você começar a aprender a linguagem de mecanismo primária.
Se você realmente interessa a IA, não pode enfatizar o suficiente a importância de aprender linguagens de programação e a lógica por trás delas. As IAs são difíceis, realmente difíceis, e há muita coisa envolvida na escrita dos scripts para elas. Dito isto, esses conceitos por trás da escrita de boas IAs devem continuar, mas não necessariamente os métodos exatos de fazê-lo, já que todo mecanismo de jogo / SDK é diferente.
Sei que você provavelmente não quer ouvir isso e não estou tentando desencorajá-lo. Mas você tem um longo caminho pela frente. Olhando de fora, estudar o design de jogos parece muito divertido, e às vezes é, mas há muito a saber e ainda mais trabalho a ser feito.
Espero que isso ajude a orientá-lo na direção certa.
Fonte: Estudante de Design / Programação de Jogos de Vídeo com experiência em Unity, UDK e GameMaker. Experiência também útil: C, C ++, Java, Estruturas de dados OOP, Autodesk Maya, ProTools, Reaper, Audition, Photoshop, GIMP ... você entendeu.
Se seu conhecimento é muito limitado, comece com algo como GameMaker ou Project Spark. Isso realmente o ajudará a entender o básico.
fonte