1) O documento discute conceitos básicos de inteligência artificial em jogos, como planejar o comportamento de inimigos automatizados e representá-los como máquinas de estados.
2) É apresentado um exemplo detalhado de como implementar o comportamento de patrulha e ataque de um inimigo usando estados e regras de transição entre eles no Unity.
3) O comportamento é dividido em estados como "patrulha", "vê jogador", "ataca" e "foge", e regras programadas para determinar a mudança entre
O documento discute as câmeras no Unity3D para jogos, incluindo tipos de câmera como primeira e terceira pessoa, posicionamento, ângulo, códigos para movimentação da câmera e outros controles como campo de visão. É explicado como configurar câmeras fixas ou em movimento em relação aos jogadores usando trigonometria.
A Ciência da Computação e os Jogos EletrônicosIngrid Mendes
O documento discute as principais disciplinas necessárias para o desenvolvimento de jogos eletrônicos, incluindo programação, inteligência artificial, redes de computadores, engenharia de software e computação gráfica. Também aborda técnicas comumente usadas em cada área, como máquinas de estado finito em inteligência artificial e os tipos de clientes-servidores em redes.
O documento discute a criação e edição de terrenos em Unity3D, incluindo como adicionar alturas, texturas, árvores, grama e outros detalhes ao terreno para criar cenários naturais realistas.
O documento discute a implementação de sons e música em jogos usando Unity3D. Ele explica os formatos de arquivo de áudio suportados, como importar e reproduzir clips de áudio, configurar sons 3D e propriedades do AudioSource como volume e rolloff. Também mostra como reproduzir sons por código usando variáveis AudioClip e verificando o estado de reprodução.
O documento discute técnicas para renderização de céus e ambientes em Unity3D, incluindo esferas e cubos texturizados para o céu, mudança dinâmica da cor de fundo da câmera e configuração de propriedades como neblina e iluminação ambiente.
O documento descreve os componentes e propriedades do sistema de partículas no Unity3D. Partículas são objetos leves usados para efeitos visuais como fumaça, fogo e explosões. O sistema inclui um emissor, animador e renderizador de partículas para controlar onde e como as partículas são emitidas, animadas e exibidas.
O documento discute a importação e utilização de modelos 3D no Unity3D. Ele explica os principais formatos de arquivo de modelo compatíveis, o processo de importação direta que converte automaticamente os arquivos e importa elementos como materiais, texturas e animações. Também aborda ajustes como escala e colisores, e recomenda organizar bem os materiais e texturas na criação dos modelos.
O documento descreve como criar interfaces gráficas de usuário (GUI) em Unity 3D usando texturas 2D (GUITexture) e menus. Ele explica como importar imagens, definir propriedades como posição, escala e cor, criar botões interativos e menus de navegação usando eventos do mouse.
O documento discute as câmeras no Unity3D para jogos, incluindo tipos de câmera como primeira e terceira pessoa, posicionamento, ângulo, códigos para movimentação da câmera e outros controles como campo de visão. É explicado como configurar câmeras fixas ou em movimento em relação aos jogadores usando trigonometria.
A Ciência da Computação e os Jogos EletrônicosIngrid Mendes
O documento discute as principais disciplinas necessárias para o desenvolvimento de jogos eletrônicos, incluindo programação, inteligência artificial, redes de computadores, engenharia de software e computação gráfica. Também aborda técnicas comumente usadas em cada área, como máquinas de estado finito em inteligência artificial e os tipos de clientes-servidores em redes.
O documento discute a criação e edição de terrenos em Unity3D, incluindo como adicionar alturas, texturas, árvores, grama e outros detalhes ao terreno para criar cenários naturais realistas.
O documento discute a implementação de sons e música em jogos usando Unity3D. Ele explica os formatos de arquivo de áudio suportados, como importar e reproduzir clips de áudio, configurar sons 3D e propriedades do AudioSource como volume e rolloff. Também mostra como reproduzir sons por código usando variáveis AudioClip e verificando o estado de reprodução.
O documento discute técnicas para renderização de céus e ambientes em Unity3D, incluindo esferas e cubos texturizados para o céu, mudança dinâmica da cor de fundo da câmera e configuração de propriedades como neblina e iluminação ambiente.
O documento descreve os componentes e propriedades do sistema de partículas no Unity3D. Partículas são objetos leves usados para efeitos visuais como fumaça, fogo e explosões. O sistema inclui um emissor, animador e renderizador de partículas para controlar onde e como as partículas são emitidas, animadas e exibidas.
O documento discute a importação e utilização de modelos 3D no Unity3D. Ele explica os principais formatos de arquivo de modelo compatíveis, o processo de importação direta que converte automaticamente os arquivos e importa elementos como materiais, texturas e animações. Também aborda ajustes como escala e colisores, e recomenda organizar bem os materiais e texturas na criação dos modelos.
O documento descreve como criar interfaces gráficas de usuário (GUI) em Unity 3D usando texturas 2D (GUITexture) e menus. Ele explica como importar imagens, definir propriedades como posição, escala e cor, criar botões interativos e menus de navegação usando eventos do mouse.
O documento discute a utilização de mapas e cenas no Unity3D para dividir um jogo em diferentes níveis e menus. Ele explica como criar novas cenas, adicioná-las ao build do jogo e trocar entre elas usando a classe Application e os métodos LoadLevel. Também aborda a geração de builds para web, desktop e como configurar parâmetros do jogador.
O documento discute a utilização de inteligência artificial em jogos no Unity3D, especificamente sobre como controlar animações de modelos 3D usando código de IA. Ele explica como importar e animar modelos, criar regras baseadas em estados e velocidade para ativar animações, e a importância de criar regras de IA automatizadas e reutilizar elementos por meio de prefabs.
O documento descreve como criar interfaces gráficas de usuário (GUI) em Unity 3D usando a classe GUI. A classe GUI fornece elementos como caixas, menus, rótulos, campos de texto e imagens que podem ser usados para criar interfaces de menu. A renderização GUI ocorre após a renderização do mundo 3D e permite personalizar o estilo dos elementos usando GUISkins.
1) O documento descreve como criar um sistema de tiros em Unity 3D, incluindo a criação de balas como prefabs, adicionar física e códigos de colisão, e usar instantiation para disparar balas a partir de um objeto atirador.
2) É explicado como adicionar efeitos visuais e sons para tiros e explosões, além de implementar um temporizador de tiros para evitar disparos constantes.
3) As técnicas descritas também podem ser aplicadas para criar inimigos com capacidade de atirar.
1) O documento descreve como criar um sistema de tiros em Unity 3D, incluindo a criação de balas como prefabs, adicionar física e códigos de colisão, e disparar balas de personagens controlados pelo jogador ou inimigos controlados pela IA.
2) É explicado como calcular a posição correta para criar as balas para evitar colisões, adicionar efeitos sonoros e visuais, e temporizar os disparos para balancear o jogo.
3) A lógica básica para criar tiros control
O documento discute a importação e configuração de modelos animados no Unity3D, incluindo formatos de arquivo comuns, importação de animações separadas, atribuição de animações e scripts para controlar a reprodução das animações de acordo com ações do jogador.
O documento discute animações em Unity3D, incluindo como criar e editar animações usando keyframes no Animation Window, controlar animações via código usando a classe Animation, e adicionar eventos a keyframes para acionar funções durante a animação.
O documento discute conceitos importantes de materiais, texturas e luzes no Unity 3D, incluindo como importar e aplicar texturas em materiais, configurar parâmetros de repetição de textura, usar mapas de deslocamento para simular relevo, e definir diferentes tipos de luz como direcional, pontual e em faixa para iluminar cenas.
O documento descreve como criar objetos e instâncias em Unity 3D através de scripts. É possível criar objetos primitivos como esferas e cubos usando GameObject.CreatePrimitive ou objetos vazios com new GameObject. Também é possível criar instâncias de prefabs existentes com Instantiate, definindo a posição e rotação do objeto. A rotação é especificada por um Quaternion.
O documento descreve como implementar movimento realista em Unity 3D usando variáveis para controlar velocidade, aceleração e fricção. Ele explica como criar essas variáveis, aplicar aceleração e desaceleração com base na fricção, limitar a velocidade máxima e converter a velocidade em um vetor para levar em conta a rotação do objeto. Também discute como incorporar controles básicos de rotação e como a velocidade pode ser afetada por colisões.
O documento discute colisões em Unity 3D, especificamente o Character Controller e triggers. Explica as diferenças entre o Character Controller e RigidBody para controlar personagens e como usar funções como OnControllerColliderHit e OnTriggerEnter para tratar colisões e ativar eventos.
O documento discute colisões em Unity, descrevendo diferentes tipos de colliders (box, sphere, capsule, etc.), como adicioná-los aos objetos, e como usar rigidbodies e códigos para controlar o comportamento físico dos objetos com base em colisões e forças.
O documento discute como depurar e exibir textos em Unity 3D usando a classe Debug e elementos GUI. A classe Debug permite exibir mensagens e valores de variáveis na janela Console para depuração, enquanto elementos GUI como GUI Text podem exibir texto na tela do jogo. O documento fornece exemplos de como usar essas ferramentas para depuração e exibição de informações.
O documento discute scripts em Unity 3D, cobrindo tópicos como:
1) Como criar e editar scripts;
2) Como usar funções como Update() para controlar ações no jogo;
3) Como capturar input do jogador e usar variáveis para controlar valores como velocidade.
O documento discute conceitos importantes em Unity 3D como Parenting e Prefabs. Parenting permite agrupar objetos de forma que as alterações no objeto principal (Parent) afetem os objetos relacionados (Childs). Já os Prefabs permitem a criação de objetos complexos reutilizáveis, de modo que alterações no Prefab se aplicam a todas as suas instâncias. O documento fornece exemplos práticos destes conceitos para facilitar a compreensão.
O documento introduz o Unity 3D, uma ferramenta de desenvolvimento de jogos 2D e 3D. Ele descreve os principais recursos e conceitos do Unity, incluindo layouts, edição de cenas, adição de objetos, scripts e a criação de um projeto básico de exemplo.
O documento discute a utilização de mapas e cenas no Unity3D para dividir um jogo em diferentes níveis e menus. Ele explica como criar novas cenas, adicioná-las ao build do jogo e trocar entre elas usando a classe Application e os métodos LoadLevel. Também aborda a geração de builds para web, desktop e como configurar parâmetros do jogador.
O documento discute a utilização de inteligência artificial em jogos no Unity3D, especificamente sobre como controlar animações de modelos 3D usando código de IA. Ele explica como importar e animar modelos, criar regras baseadas em estados e velocidade para ativar animações, e a importância de criar regras de IA automatizadas e reutilizar elementos por meio de prefabs.
O documento descreve como criar interfaces gráficas de usuário (GUI) em Unity 3D usando a classe GUI. A classe GUI fornece elementos como caixas, menus, rótulos, campos de texto e imagens que podem ser usados para criar interfaces de menu. A renderização GUI ocorre após a renderização do mundo 3D e permite personalizar o estilo dos elementos usando GUISkins.
1) O documento descreve como criar um sistema de tiros em Unity 3D, incluindo a criação de balas como prefabs, adicionar física e códigos de colisão, e usar instantiation para disparar balas a partir de um objeto atirador.
2) É explicado como adicionar efeitos visuais e sons para tiros e explosões, além de implementar um temporizador de tiros para evitar disparos constantes.
3) As técnicas descritas também podem ser aplicadas para criar inimigos com capacidade de atirar.
1) O documento descreve como criar um sistema de tiros em Unity 3D, incluindo a criação de balas como prefabs, adicionar física e códigos de colisão, e disparar balas de personagens controlados pelo jogador ou inimigos controlados pela IA.
2) É explicado como calcular a posição correta para criar as balas para evitar colisões, adicionar efeitos sonoros e visuais, e temporizar os disparos para balancear o jogo.
3) A lógica básica para criar tiros control
O documento discute a importação e configuração de modelos animados no Unity3D, incluindo formatos de arquivo comuns, importação de animações separadas, atribuição de animações e scripts para controlar a reprodução das animações de acordo com ações do jogador.
O documento discute animações em Unity3D, incluindo como criar e editar animações usando keyframes no Animation Window, controlar animações via código usando a classe Animation, e adicionar eventos a keyframes para acionar funções durante a animação.
O documento discute conceitos importantes de materiais, texturas e luzes no Unity 3D, incluindo como importar e aplicar texturas em materiais, configurar parâmetros de repetição de textura, usar mapas de deslocamento para simular relevo, e definir diferentes tipos de luz como direcional, pontual e em faixa para iluminar cenas.
O documento descreve como criar objetos e instâncias em Unity 3D através de scripts. É possível criar objetos primitivos como esferas e cubos usando GameObject.CreatePrimitive ou objetos vazios com new GameObject. Também é possível criar instâncias de prefabs existentes com Instantiate, definindo a posição e rotação do objeto. A rotação é especificada por um Quaternion.
O documento descreve como implementar movimento realista em Unity 3D usando variáveis para controlar velocidade, aceleração e fricção. Ele explica como criar essas variáveis, aplicar aceleração e desaceleração com base na fricção, limitar a velocidade máxima e converter a velocidade em um vetor para levar em conta a rotação do objeto. Também discute como incorporar controles básicos de rotação e como a velocidade pode ser afetada por colisões.
O documento discute colisões em Unity 3D, especificamente o Character Controller e triggers. Explica as diferenças entre o Character Controller e RigidBody para controlar personagens e como usar funções como OnControllerColliderHit e OnTriggerEnter para tratar colisões e ativar eventos.
O documento discute colisões em Unity, descrevendo diferentes tipos de colliders (box, sphere, capsule, etc.), como adicioná-los aos objetos, e como usar rigidbodies e códigos para controlar o comportamento físico dos objetos com base em colisões e forças.
O documento discute como depurar e exibir textos em Unity 3D usando a classe Debug e elementos GUI. A classe Debug permite exibir mensagens e valores de variáveis na janela Console para depuração, enquanto elementos GUI como GUI Text podem exibir texto na tela do jogo. O documento fornece exemplos de como usar essas ferramentas para depuração e exibição de informações.
O documento discute scripts em Unity 3D, cobrindo tópicos como:
1) Como criar e editar scripts;
2) Como usar funções como Update() para controlar ações no jogo;
3) Como capturar input do jogador e usar variáveis para controlar valores como velocidade.
O documento discute conceitos importantes em Unity 3D como Parenting e Prefabs. Parenting permite agrupar objetos de forma que as alterações no objeto principal (Parent) afetem os objetos relacionados (Childs). Já os Prefabs permitem a criação de objetos complexos reutilizáveis, de modo que alterações no Prefab se aplicam a todas as suas instâncias. O documento fornece exemplos práticos destes conceitos para facilitar a compreensão.
O documento introduz o Unity 3D, uma ferramenta de desenvolvimento de jogos 2D e 3D. Ele descreve os principais recursos e conceitos do Unity, incluindo layouts, edição de cenas, adição de objetos, scripts e a criação de um projeto básico de exemplo.
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...Eró Cunha
XIV Concurso de Desenhos Afro/24
TEMA: Racismo Ambiental e Direitos Humanos
PARTICIPANTES/PÚBLICO: Estudantes regularmente matriculados em escolas públicas estaduais, municipais, IEMA e IFMA (Ensino Fundamental, Médio e EJA).
CATEGORIAS: O Concurso de Desenhos Afro acontecerá em 4 categorias:
- CATEGORIA I: Ensino Fundamental I (4º e 5º ano)
- CATEGORIA II: Ensino Fundamental II (do 6º ao 9º ano)
- CATEGORIA III: Ensino Médio (1º, 2º e 3º séries)
- CATEGORIA IV: Estudantes com Deficiência (do Ensino Fundamental e Médio)
Realização: Unidade Regional de Educação de Imperatriz/MA (UREI), através da Coordenação da Educação da Igualdade Racial de Imperatriz (CEIRI) e parceiros
OBJETIVO:
- Realizar a 14ª edição do Concurso e Exposição de Desenhos Afro/24, produzidos por estudantes de escolas públicas de Imperatriz e região tocantina. Os trabalhos deverão ser produzidos a partir de estudo, pesquisas e produção, sob orientação da equipe docente das escolas. As obras devem retratar de forma crítica, criativa e positivada a população negra e os povos originários.
- Intensificar o trabalho com as Leis 10.639/2003 e 11.645/2008, buscando, através das artes visuais, a concretização das práticas pedagógicas antirracistas.
- Instigar o reconhecimento da história, ciência, tecnologia, personalidades e cultura, ressaltando a presença e contribuição da população negra e indígena na reafirmação dos Direitos Humanos, conservação e preservação do Meio Ambiente.
Imperatriz/MA, 15 de fevereiro de 2024.
Produtora Executiva e Coordenadora Geral: Eronilde dos Santos Cunha (Eró Cunha)
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 11, Betel, Ordenança para exercer a fé, 2Tr24, Pr Henrique, EBD NA TV, 2° TRIMESTRE DE 2024, ADULTOS, EDITORA BETEL, TEMA, ORDENANÇAS BÍBLICAS, Doutrina Fundamentais Imperativas aos Cristãos para uma vida bem-sucedida e de Comunhão com DEUS, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Comentários, Bispo Abner Ferreira, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
1. Projeto de jogos RAD:
Inteligência Artificial
Parte 1
Augusto Bülow
2. Unity3D : IA
IA: Simular comportamento inteligente em
elementos autômatos no jogo
Planejamento básico:
• O que o “robô” deve fazer?
• Traduzir em estados
– Separar ações individuais / diferentes
– Criar mapa de estados
3. Unity3D : IA
• Elementos com IA = máquina de estados
Estados:
Partes do comportamento
Diferentes ações
Tratados com códigos (partes) separados
Controlar estados por variável *
Criar regras para mudança de estados
4. Unity3D : IA
Resumindo:
1o passo: planejar o comportamento desejado
2o passo: identificar estados – separar ações
diferentes (partes do comportamento)
3o passo: identificar mudança de estados – o que
faz o robô mudar de um estado a outro
Programar regras – testar - adaptar
5. Unity3D : IA
Patrulha
Vê player
Foge
Ataca
Morre
Inicializa
Visão Geral Estados
7. Unity3D : IA
Detalhando: Regras para mudança de estados
Patrulha
Distancia < 300
Vê player
Distancia
> 500
Decide
ataque
Random:
Random: 30%
70%
Ataque1 Ataque2
8. Unity3D : IA
• Conhecendo-se os estados e planejando-se as
regras para mudanças de estado inicia-se a
programação
- Traduzir o plano para código
- Estados = controle por variável
var estado = 0;
....
if (estado == 1) {
.....
}
9. Unity3D : IA
- Criar Cubo “inimigo”
- Criar Script Inimigo1.js
- Inimigo precisa cuidar de suas colisões, chão / cena
- Definir e adicionar Collider:
- RigidBody ou CharacterController
- Tipo collider = códigos específicos de movimento
- Nosso exemplo : CharacterController*
10. Unity3D : IA
Patrulha Patrulha
Vai
Ponto1 Observa Vai
Ataque1
Ponto2
Explodindo Bolhas:
Detalhando
Observa
11. Unity3D : IA
- Patrulhar detalhado = 4 estados
- Estados definíveis: 10, 11, 12, 13 = Patrulha
- Criar /Planejar regras de mudança de estados
- O que leva de um estado a outro?
- EX:
- Ir ponto1: checar distancia para o ponto
- Espera / Observa: timer simples (tempo)
- Inicia Ataque: player próximo inimigo (dist. min)
12. Unity3D : IA
- Plano determinado = implementar código
- Variáveis iniciais identificadas:
var estado = 10;
var distancia_ok = 1.0;
var distancia_atual = 0.0;
var ponto1 : Vector3;
var ponto2 : Vector3;
var velocidade : Vector3;
var tempo = 0.0;
13. Unity3D : IA
- Estado 10 : Ir ponto 1, perceber a chegada (distancia)
if (estado == 10) {
// virar / apontar para o ponto
transform.LookAt(ponto1);
transform.rotation.x = 0;
transform.rotation.z = 0;
// mover / andar = velocidade frente Z
velocidade.x = 0;
velocidade.y = 0;
velocidade.z = 0.1;
//Mudança de estado = distancia / chegou no ponto
distancia_atual = Vector3.Distance(transform.position, ponto1);
if (distancia_atual <= distancia_ok) {
estado = 11;
}
}
14. Unity3D : IA
- Centralizamos código de movimento: controle apenas por
velocidade nos estados
//transforma velocidade para direção atual
velocidade = transform.TransformDirection(velocidade);
//Movimento unificado : controla velocidade nos estados
pointer = GetComponent(CharacterController);
pointer.Move(velocidade);
15. Unity3D : IA
- Estado 11: aguarda tempo / observa, parado
if (estado == 11) {
// parar = sem velocidade
velocidade.x = 0;
velocidade.y = 0;
velocidade.z = 0;
// Timer básico
tempo += Time.deltaTime;
if (tempo >= 1) {
estado = 12;
}
}
16. Unity3D : IA
- Start: inicialização básica, estado, pontos - destinos
function Start() {
//estado inicial
estado = 10;
//ponto 1: ex. posicao atual + variação
ponto1 = transform.position;
ponto1.z += 20;
// ponto2:
ponto2 = transform.position;
ponto2.z -= 10;
}
- Criar estados 12 e 13 = Finalizar Patrulha Básica
17. Unity3D : IA
- Ataque básico: percebe player perto = distância
- (modo simplório)
- Entra em estado de ataque
- Regras adicionais atacando
- Persegue player (anda na sua direção)
- Distância mínima = tira saúde ( faz ataque)
- Distância máxima = fugiu, volta a patrulha
18. Unity3D : IA
- Implementando ataque:
var distancia_player = 0.0;
var distancia_ataca = 15;
var distancia_hit = 2;
var distancia_fugiu = 30; ....
//Encontra player - multi uso
player = GameObject.Find("Player");
//Ativa ATAQUE AUTO - POR DISTANCIA
if (estado >= 10 && estado <= 13) {
distancia_player = Vector3.Distance(transform.position,
player.transform.position);
if (distancia_player <= distancia_ataca) {
estado = 20;
}
}
19. Unity3D : IA
//20. ATAQUE
if (estado == 20) {
// virar / apontar para o player
transform.LookAt(player.transform.position);
transform.rotation.x = 0;
transform.rotation.z = 0;
// mover / andar = velocidade frente Z
velocidade.x = 0;
velocidade.y = 0;
velocidade.z = 0.1;
}
20. Unity3D : IA
- Implementando regras adicionais do estado
//20. ATAQUE – PERSEGUE PLAYER
if (estado == 20) {
....
distancia_player = Vector3.Distance(transform.position,player.transform.position);
//Distancia fugiu = volta a patrulha
if (distancia_player >= distancia_fugiu) {
estado = 10;
}
}
21. Unity3D : IA
- Implementando regras adicionais (2) do estado
//20. ATAQUE – PERSEGUE PLAYER
if (estado == 20) {
....
distancia_player = Vector3.Distance(transform.position,player.transform.position);
//Distancia hit = estado ataque real – tira energia, etc
if (distancia_player <= distancia_hit) {
estado = 21;
}
}
22. Unity3D : IA
//21. ATAQUE - REAL
if (estado == 21) {
// para de andar
velocidade = Vector3.zero;
//anima - (simula anima - FAZ GIRO BASICO)
aux_gira += 1 * Time.deltaTime;
transform.Rotate(Vector3(0, 3, 0));
if (aux_gira >= 1) { estado = 10; } // volta patulha tempo
//Criando efeito no player - acessa script dele, muda vars
//empurra trás, cima - única vez, uso var para controle
if (ataque_unico == 0) {
player.GetComponent("Player-anima").forca_move.y = 0.3;
player.GetComponent("Player-anima").forca_move.z = -2;
ataque_unico =1;
}
}