ProdutosNewsComprarDownloadsDownloadsDownloadsTutoriaisSuporteNão disponívelGaleriaForumContato  

DarkBASIC Pro
Versão de Avaliação
Patch 5.4
USB Dongle
Forum
Indique
Lista de Email
  Diário Antigo
Outros Produtos
Cartography Shop
DarkMatter
Curso 3D Studio
Combinados
Local DBPro Sites
Italy
UK

Proposta: Mostrar como carregar e posicionar sons 3D.

Em nosso último tutorial nós mostramos a você como criar e atirar um projétil de arma. Este tutorial adicionará efeitos de som para tornar o seu tiro mais dinâmico. Pelo fato de nós estarmos usando as variáveis "CameraAngle" com grande freqüência, nós abreviamos seus nomes para tornar mais fácil a leitura do código.

Load sound "crickets.wav",1
Loop sound 1

Antes de nós explicarmos o som 3D nós iremos adicionar um som de ambiente ao jogo. O comando "Load Sound" carregar um som para o seu programa mas não o executa. O primeiro parâmetro neste comando é o nome do arquivo de som que você deseja carregar. Como com qualquer comando onde arquivos são carregados, você deve colocar o nome do arquivo entre aspas ("Nome do arquivo"). O segundo parâmetro no comando é o número do som. O DarkBASIC usa este número da mesma maneira usada quando você carrega objetos ou imagens. Este número será um identificador único para o som. O comando "Loop Sound" usa um parâmetro: o número do som que você deseja executar. Este comando executa o som especificado de forma contínua. Usando estes comandos você escutará o som de grilos e cigarras.

Load 3Dsound "fireball2.wav",2

O comando "Load 3DSound" carrega o som que nós desejamos usar para o nosso tiro. O primeiro parâmetro neste comando é o nome do arquivo que nós queremos carregar (entre aspas) e o segundo parâmetro é o número que nós queremos usar para identificar o som. Quando nós carregamos um som como 3D, nós estamos informando ao DarkBASIC que nós desejamos colocar o som em um ponto específico do espaço 3D.

Rem Rotaciona câmera
if cAX#>270

if cAX#-270 > 90 then cAX#=270
else
if cAX# > 90 and cAX#-270<270 then cAX#=90
endif

YRotate camera CurveAngle(cAY#,oldcAY#,24)
XRotate camera CurveAngle(cAX#,oldcAX#,24)	

Esta seção é adicionada ao jogo para manter o jogador do lado superior da rotação da câmera. Os ângulos da câmera também são necessários para guardar a posição correta do ouvinte para o som 3D.

Rem Posição do ouvinte
Position Listener X#,Y#+50,Z#
Rotate Listener 0,cameraAngleY#,0

O comando "Position Listener" é usado para posicionar o seu som 3D. Os três parâmetros após o comando são usados para designar as posições X, Y e Z onde você deseja colocar o ouvinte. Nós iremos usar a mesma posição que a câmera. O comando "Rotate Listener" é usado para rotacionar o ouvinte. Este comando usa três parâmetros: os ângulos X, Y e Z que você deseja rotacionar o ouvinte. Para manter a direção do ouvinte a mesma da câmera, nós mantemos os ângulos X e Z como 0 e só lidamos com o eixo Y. Para o valor Y nós usamos a variável "CameraAngleY#".

Rem Tiro da bala
if Mouseclick()=1 and BulletLife=0
Position object 2,X#,Y#+43,Z#
Set object to camera orientation 2
BulletLife=25
show object 2
Loop sound 2
Endif

No código onde nós checamos se o botão do mouse foi pressionado nós adicionamos o comando "Loop sound" para iniciar a execução do som. Este com será executado até que ele seja parado pelo código que controla o tempo de vida da bala.

If BulletLife > 0
Dec BulletLife
Move object 2,20
bX#=Object position X(2)
bY#=Object position Y(2)
bZ#=Object position Z(2)
Position sound 2,bX#,bY#,bZ#
if BulletLife = 0
Hide object 2
stop sound 2
Endif
Endif

No código de tiro da bala, nós adicionamos dois comandos para manipular a posição e o fim do nosso som. O comando "Position Sound" é usado para colocar o nosso som na coordenada 3D. O primeiro parâmetro deste comando é o número do som que nós queremos posicionar. Os 3 parâmetros restantes designam onde nós queremos posicionar o som. Nós pegamos as posições X, Y e Z da bala e as armazenamos nas variáveis "'bX#", "bY#" e "bZ#". Estes são os valores que usamos para posicionar o som da bala. Quando o valor da variável "BulletLife" alcançar o valor 0, nós usamos o comando "Stop Sound" para parar a execução do som da bala.

Promoção de Lançamento

Clique aqui para comprar o 
DBPro R$220,00

Clique aqui para comprar o 
DBPro para Universitários R$150,00


clique aqui para comprar o Upgrade a partir da versão clássica por R$150,00

Nova pagina 1

Esta é a barra de navegação para explorar todos os tutoriais da série "A Caça Aos Monstros" 

1.1   1.2   1.3   1.4   1.5   2.1   2.2   2.3   2.4   2.5   3.1   3.2   3.3   3.4   3.5   3.6   3.7   3.8   3.9   3.10   3.11   3.12   3.13   3.14