From BlenderWiki

Jump to: navigation, search
Blender3D FreeTip.gif
IMPORTANT! Do not update this page!
We have moved the Blender User Manual to a new location. Please do not update this page, as it will be locked soon.

"Sensors" (Sensores)

Os "Sensors" (Sensores) são as causas da Lógica agir em algum sentido e fazer algo. Estes podem ser a fonte de um evento disparador como um Objeto próximo, uma tecla pressionada no Teclado, eventos temporizados, etc. Quando um Sensor é disparado, um pulso positivo é enviado para todos os controladores que estão ligados a ele.

Opções de Visualização dos "Sensor" (Sensores)

Os "Sensors" (Sensores) do Blender podem ser encontrados dentro do "Logic Panel" (Painel de Lógica). No topo do Sub-painel dos Sensores, existem quatro botões chamados "Sel" (Selecionado), "Act" (Ativo), "Link" (Ligação) e "State" (Estado). Existe também um Menu que é ativado quando se clica em "Sensors" (Sensores), em que há o título do Sub-Painel "Sensors" (Sensores). Isto é para esconder/revelar os Sensores, e isso é útil de uma maneira que os Sensores que não são necessários possam ser escondidos e somente os necessários fiquem visíveis e fáceis de alcançar. Os Sensores são agrupados por Objeto com cada Objeto selecionado aparecendo dentro de uma lista e abaixo de cada Objeto estão os seus Sensores.

O Menu marcado como "Sensors" (Sensores) se parece com um "Label" (Rótulo) mas é na verdade um Menu. Ele possui quatro opções:

  • "Show Objects" (Mostrar Objetos) → Expande todos os Objetos.
  • "Hide Objects" (Esconder Objetos) → Encolhe todos os Objetos para somente uma barra com o seu Nome.
  • "Show Sensors" (Mostrar Sensores) → Expande todos os Sensores.
  • "Hide Sensors" (Esconder Sensores) → Encolhe todos os Sensores para Barras com os seus Nomes.

Ambas opções podem ser controladas individualmente no Sensor ou no Objeto.

Também é possível filtrar quais Sensores são visualizados:

  • "Sel" (Selecionados) → Mostra todos os Sensores dos Objetos Selecionados.
  • "Act" (Ativos) → Mostra somente os Sensores do Objeto Ativo.
  • "Link" (Ligação) → Mostra os Sensores que possuem um(a) "Link" (Ligação) com um "Controller" (Controlador).
  • "State" (Estado) → Somente Sensores conectados a um controlador do estado corrente são mostrados.


Opções Gerais para Objetos

O Objeto antes da adição de um Sensor

Todos os Objetos possuem dois Botões, um que é rotulado com seus Nomes, e o outro rotulado de "Add" (Adicionar).

O Objeto depois da adição de um Sensor

O Botão Add serve para adicionar um novo Sensor para o Objeto.

Objeto com os Sensores encolhidos

O Botão com o Nome do Objeto, é para o encolhimento da lista do Objeto e para esconder os seus Sensores.

Objeto após a deleção de todos os Sensores

Um Objeto sem Sensores é automaticamente encolhido. A adição de um Sensor irá automaticamente mostrar o Objeto.

Opções Gerais dos Sensores

Todos os Sensores possuem um conjunto de botões e campos e um Menu em comum. Eles são organizados em duas linhas: o "Sensor header" (Cabeçalho do Sensor) e a "Sensor Pulses Bar" (Barra de Pulsos do Sensor).

O "Sensor Header" (Cabeçalho do Sensor)

Imagem do Sensor header


Botão em Cruz
Deleta o Sensor.
Menu Sensor type menu
Veja Tipos de Sensores.
Campo Sensor name
O Nome do Sensor. Ele é utilizado para acessar Sensores com a linguagem Python; Ele necessita ser único entre todos os Objetos selecionados.
Botão em Triângulo
Utilizado para o encolhimento do Sensor.


"Sensor pulses bar" (Barra de Pulsos do Sensor)

Os "Sensors" (Sensores) disparam Pulsos para os "Controllers" (Controladores). Os Pulsos podem ser "TRUE" (Verdadeiros) ou "FALSE" (Falsos). Eles resultam de parâmetros diferentes nos controles dos "Logic Blocks" (Blocos Lógicos) quando um Sensor dispara qual Pulso. Isto é extremamente importante pois possui uma influência direta na Lógica de Jogo e na Performance. É a função dos "Controllers" (Controladores) a maneira de reagir aos Pulsos do tipo "TRUE" (Verdadeiro) ou "FALSE" (Falso).

Imagem de Sensor pulses bar
"True level triggering" (Disparo de Nível verdadeiro (TRUE))
Caso isto esteja configurado, os "Controllers" (Controladores) recebem pulsos do tipo "TRUE" (Verdadeiro) conforme o "state" (estado) do Sensor seja positivo. O Sensor irá disparar pulsos do tipo "TRUE" (Verdadeiro) com a frequência marcada para a leitura do Sensor.
"False level triggering" (Disparo de Nível Falso (FALSE))
Caso isto esteja configurado, os "Controllers" (Controladores) recebem pulsos do tipo "FALSE" (Falso) conforme o "state" (estado) do Sensor seja positivo. O Sensor irá disparar pulsos do tipo "FALSE" (Falso) com a frequência marcada para a leitura do Sensor.
Nota sobre os Disparadores
Caso você não configure nenhum dos Disparadores (Triggers), O Sensor não disparará nenhum Pulso, pelo fato do estado do Sensor não ser alterado. Quando o sensor alterar o seu estado de negativo para positivo, o Sensor irá disparar um Pulso do tipo TRUE (Verdadeiro) para os Controladores. Quando o Sensor alterar o seu estado de positivo para negativo, e Sensor irá disparar um Pulso do tipo FALSE (Falso) para os Controladores.
Entre os Controladores, deverá ainda estar a requisição do estado do Sensor, mas se o controlador não obter Pulsos (do tipo TRUE ou FALSE) a partir de qualquer outro Sensor, ele não será ativado como um todo.


"Frequency" (Frequência) → (f)
Apesar do nome, "Frequency" (Frequência), é o parâmetro marcado como f, e configura o espaço de tempo entre repetidos Pulsos, medidos em "logic ticks" (tiques lógicos). O Valor padrão é 0 e significa nenhuma espera.
Os "Logic ticks" (Tiques Lógicos) possuem uma frequência de 60 Hz (ou 60 tiques por segundo). Por exemplo:
  • Para uma configuração de f=1, significa que o Sensor Pulsa uma vez a cada 60° (sexagésimo) de segundo. Uma configuração de f = 1, efetivamente significa uma razão de 1 para 1 entre os tiques, ou seja 1 tique = 1 Pulso.
  • Para uma configuração de f=30, significa que o Sensor Pulsa uma vez a cada 30 tiques que foram contados. Isso significa que o Pulso é emitido a cada meio segundo por que existem 60 tiques por segundo como padrão.
  • Para uma configuração de f=60, significa que o Sensor pulsa a cada 60 tiques, o que significa uma vez por segundo.
Aumentar o valor de f, é uma boa ideia para melhorar a performance, pelo fato de não fazer as coisas tantas vezes desnecessariamente dentro do segundo de atuação do Sensor.
"Level" (Nível)
Faz com que o Sensor trabalhe sobre uma condição de mudanças de estado. Veja esta página para o Sistema de "State" (Estado).
"Tap" (Punçar)
Envia um Pulso positivo uma única vez mesmo que o Sensor esteja permanecendo com o seu estado "TRUE" (Verdadeiro). Somente uma das opções de verificação de Sensor, "Tap" (Punçar) ou "Level" (Nível) podem ser ativadas.
Quando o parâmetro "Tap" (Punçar) é configurado o Sensor irá disparar um Pulso do tipo "FALSE" (Falso) dentro do próximo quadro, mesmo quando o evento só Sensor ainda estiver presente. Quando o evento do Sensor acabar, nenhum Pulso será disparado.
Caso a opção de "TRUE level triggering" (Disparo de Nível Verdadeiro) seja configurada, o par do Pulso do tipo TRUE/FALSE (alternância) será repetido até que o evento do Sensor tenha parado.
A opção de "FALSE level triggering" (Disparo de Nível Falso) será ignorada caso o parâmetro "Tap" (Punçar) esteja configurado.
Os Pulsos não serão invertidos caso o parâmetro "Inv" (Inverter) esteja configurado. Mas o par do Pulso TRUE/FALSE (alternância) será enviado quando o evento do Sensor não estiver presente.
"Inv" (Inverter)
Isto inverte a saída do Sensor.
Caso isto esteja configurado, o Sensor irá enviar Pulsos do tipo "FALSES" (Falsos) quando o Sensor deveria estar enviando Pulsos do tipo "TRUE" (Verdadeiro) e Pulsos do tipo "TRUE" (Verdadeiro) caso o sensor devesse estar enviando Pulsos do tipo "FALSES" (Falsos). Caso o parâmetro "Tap" (Punçar) esteja configurado, o Sensor terá uma ação diferente (refira-se à Seção prévia).
Nota sobre a opção de Inv e os Disparadores
Note que o alternador Inv inverte o Nível ANTES dos Disparadores, o que significa que os Disparadores agem no sinal que está saindo de Inv.

Como um teste, faça uma configuração dos "Logic Bricks" (Blocos Lógicos) como abaixo, em um Objeto de sua escolha.

GameEngine Sensor Pulses InvExample property.png

GameEngine Sensor Pulses InvExample logic.png
Inicie o Jogo e não pressione o W: dentro da Janela de informações de Debug, você deverá ver a propriedade chamada "click" rodando, mudando de estado a cada 15 tiques (um quarto de segundo). Isto é por que o Sensor é "FALSE" (Falso) nas ele é invertido para "TRUE" (Verdadeiro) com a opção Inv, a partir do momento em que a opção de "True level trigger" (Disparo de Nível Verdadeiro) esteja pulsando.


Para mais informações, veja também a :

GameLogic python API. (em inglês)