1 [BLITZ3D] Iniciando no Blitz3D 21/10/11, 07:45 pm
Convidad
Convidado
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Olá, esse é meu primeiro tutorial nesse fórum e o segundo sobre Blitz3D.
De inicio, devo avisar que não sou nenhum experiente em blitz3d (e sua línguagem, blitzbasic), mas mexo faz um tempo com ele, e recomendo muitissimo a quem pretende iniciar na programação. A línguagem BlitzBasic não tem mistério, é super simples, fácil e poderosa. O que você faria com línguagens avançadas em algumas horas, você faz em alguns minutos.
Como o nome diz, Blitz3D foi feito exclusivamente para jogos em terceira dimensão, ou 3D. Mas também pode ser usada para desenvolvimento de aplicativos, jogos 2D, pois ela é uma línguagem completa.
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Se você não tem o Blitz3D, baixe no site oficial [Tens de ter uma conta e sessão iniciada para poderes visualizar este link]. A versão é Free, ou seja, limitada. Mas nada que vá prejudicar, por enquanto, o seu trabalho. Só não vai ser possivel criar um arquivo executavel, e passar de 15 kb's de tamanho, o arquivo de seu jogo. Claro que, você precisará criar algo GRANDE para passar de 15 kb's, se você só pretende usar o B3D por hobby (sem o objetivo de distribuição na internet, apenas para enriquecer seu conhecimento), isso não vai ser problema. Se você está a procura de uma línguagem para trabalhar com isso, recomendo baixar a versão free, testar ela e se gostar, comprar a versão completa.
Diferente do que, provavelmente, você está acostumado, o Blitz é programação pura. Ou seja, não existe um editor de cenário, drag and drop, só uma tela azul, com alguns menus. Então, vá se acostumando, pois no começo, erros é o que não vai faltar.
Para quem estava acostumado com o RPG Maker, ou até o Game Maker, pode parecer complicado (como pareceu para mim), mas depois de um tempo você vê que aquilo não é um bixo de 7 cabeças, basta um pouco de pratica e o conhecimento necessário e logo você tá criando algo de altissima qualidade.
Mas, terminando o papo sobre o que é blitz, vamos começar a programar. Abra o Blitz3D, crie um novo projeto, verifique em Program, se a opção "Debug Enabled?" está marcada.
Escreva isso:
Agora, execute o jogo e veja. Está escrito "Meu nome é Konnor, tenho 14 anos e 1.71 de altura."
Simples, definimos variáveis, e depois escrevemos algo na tela. Veja que, há uma soma de texto juntamente com as variáveis, escrevemos apenas o básico, o pré-programado, imaginando que o jogador definiu as variáveis. Agora perceba, os caracteres $, % e # nas variáveis, por que usei isso?
Simples, retire o $ da variável nome (e também abaixo, no comando print, para não dar erro), defina idade% como "14.4", e não 14, e retire o # da variável tamanho (lembrando de retirar também do comando print). Execute o jogo.
Ficou assim "Meu nome é 0, tenho 14 anos e 2 de altura."
Por que isso aconteceu? O blitz tem três tipos de variáveis, inteiras [%], com ponto flutuante [#](virgula, no Brasil) e string (ou escrito) [$]. Entendeu? Cada tipo de variável serve para uma situação especifica, então não cometa esse erro, pode dar dor de cabeça!
Agora vamos começar no 3D:
Esse é um código maior, mas basta o que vem depois do caractere ";" para entender. O caractere ; não será lido pelo Blitz, será ignorado, ele serve como o "//" do GM, para organizar e explicar algo.
Veja que, diferente de jogos 2D em que usamos apenas horizontal e vertical (X e Y), existe agora a profundidade (Z), que vem por ultimo sempre.
Criamos um cubo, esfera, definimos a camera e a posição dos objetos, cor.
Fizemos o movimento da esfera, e definimos que o cubo tem que girar em tais direções.
E por fim, criamos um texto (esse Text, diferente do Print, dá a liberdade de escolher a posição na tela).
(Pausa pra me cagar, sem querer sair do assunto do tuto, meu primo apareceu na minha janela sem avisar, e me da um cagasso)
Voltando ao assunto, não lembro aonde parei, mas acho que estou finalizando o tutorial... bom pessoal, por enquanto é só isso, próxima aula estaremos criando um simples cenário com os modelos primitivos, um sistema de colisão e o que me vier a mente.
Olá, esse é meu primeiro tutorial nesse fórum e o segundo sobre Blitz3D.
De inicio, devo avisar que não sou nenhum experiente em blitz3d (e sua línguagem, blitzbasic), mas mexo faz um tempo com ele, e recomendo muitissimo a quem pretende iniciar na programação. A línguagem BlitzBasic não tem mistério, é super simples, fácil e poderosa. O que você faria com línguagens avançadas em algumas horas, você faz em alguns minutos.
Como o nome diz, Blitz3D foi feito exclusivamente para jogos em terceira dimensão, ou 3D. Mas também pode ser usada para desenvolvimento de aplicativos, jogos 2D, pois ela é uma línguagem completa.
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Se você não tem o Blitz3D, baixe no site oficial [Tens de ter uma conta e sessão iniciada para poderes visualizar este link]. A versão é Free, ou seja, limitada. Mas nada que vá prejudicar, por enquanto, o seu trabalho. Só não vai ser possivel criar um arquivo executavel, e passar de 15 kb's de tamanho, o arquivo de seu jogo. Claro que, você precisará criar algo GRANDE para passar de 15 kb's, se você só pretende usar o B3D por hobby (sem o objetivo de distribuição na internet, apenas para enriquecer seu conhecimento), isso não vai ser problema. Se você está a procura de uma línguagem para trabalhar com isso, recomendo baixar a versão free, testar ela e se gostar, comprar a versão completa.
Diferente do que, provavelmente, você está acostumado, o Blitz é programação pura. Ou seja, não existe um editor de cenário, drag and drop, só uma tela azul, com alguns menus. Então, vá se acostumando, pois no começo, erros é o que não vai faltar.
Para quem estava acostumado com o RPG Maker, ou até o Game Maker, pode parecer complicado (como pareceu para mim), mas depois de um tempo você vê que aquilo não é um bixo de 7 cabeças, basta um pouco de pratica e o conhecimento necessário e logo você tá criando algo de altissima qualidade.
Mas, terminando o papo sobre o que é blitz, vamos começar a programar. Abra o Blitz3D, crie um novo projeto, verifique em Program, se a opção "Debug Enabled?" está marcada.
Escreva isso:
nome$="Konnor"
idade%=14
tamanho#=1.71
Print "Meu nome é " + nome$ + ", tenho " + idade% + " anos e " + tamanho# + " de altura."
WaitKey
Agora, execute o jogo e veja. Está escrito "Meu nome é Konnor, tenho 14 anos e 1.71 de altura."
Simples, definimos variáveis, e depois escrevemos algo na tela. Veja que, há uma soma de texto juntamente com as variáveis, escrevemos apenas o básico, o pré-programado, imaginando que o jogador definiu as variáveis. Agora perceba, os caracteres $, % e # nas variáveis, por que usei isso?
Simples, retire o $ da variável nome (e também abaixo, no comando print, para não dar erro), defina idade% como "14.4", e não 14, e retire o # da variável tamanho (lembrando de retirar também do comando print). Execute o jogo.
Ficou assim "Meu nome é 0, tenho 14 anos e 2 de altura."
Por que isso aconteceu? O blitz tem três tipos de variáveis, inteiras [%], com ponto flutuante [#](virgula, no Brasil) e string (ou escrito) [$]. Entendeu? Cada tipo de variável serve para uma situação especifica, então não cometa esse erro, pode dar dor de cabeça!
Agora vamos começar no 3D:
Graphics3D 800,600 ;Iniciar o 3D
SetBuffer BackBuffer()
AppTitle "CuboxEsfera" ;Título
camera=CreateCamera() ;Criar camera
CameraViewport camera,0,0,800,600 ;Defini o que vê
light=CreateLight() ;Criar luz
cube=CreateCube() ;Criar um cubo
PositionEntity cube,0,0,5 ;Posição do cubo
EntityColor cube,255,0,0 ;Cor do cubo
sphere=CreateSphere() ;Criar uma esfera
PositionEntity sphere,7,0,10 ;Posição da esfera
EntityColor sphere,0,255,0 ;Cor da esfera
While Not KeyHit(1) ;Enquanto a tecla ESC (1) não for pressionada
If KeyDown(200) Then ;Se tecla cima for pressionada
MoveEntity sphere,0,0.09,0 ;Mover 0.09 (para cima)
EndIf
If KeyDown(208) Then ; " " " baixo for pressionada
MoveEntity sphere,0,-0.09,0 ;Mover -0.09 (para baixo)
EndIf
If KeyDown(205) Then ; " " " direita for pressionada
MoveEntity sphere,0.09,0,0 ;Mover 0.09 (para direita)
EndIf
If KeyDown(203) Then ; " " " esquerda for pressionada
MoveEntity sphere,-0.05,0,0 ;Mover -0.09 (para esquerda)
EndIf
TurnEntity cube,1,3,1 ;Girar cubo em 1 horizontal, 3 na vertical e 1 em profundidade (x, y , z)
RenderWorld
UpdateWorld
Text 0,10, "Meu primeiro jogo"
Flip
Wend
End
Esse é um código maior, mas basta o que vem depois do caractere ";" para entender. O caractere ; não será lido pelo Blitz, será ignorado, ele serve como o "//" do GM, para organizar e explicar algo.
Veja que, diferente de jogos 2D em que usamos apenas horizontal e vertical (X e Y), existe agora a profundidade (Z), que vem por ultimo sempre.
Criamos um cubo, esfera, definimos a camera e a posição dos objetos, cor.
Fizemos o movimento da esfera, e definimos que o cubo tem que girar em tais direções.
E por fim, criamos um texto (esse Text, diferente do Print, dá a liberdade de escolher a posição na tela).
(Pausa pra me cagar, sem querer sair do assunto do tuto, meu primo apareceu na minha janela sem avisar, e me da um cagasso)
Voltando ao assunto, não lembro aonde parei, mas acho que estou finalizando o tutorial... bom pessoal, por enquanto é só isso, próxima aula estaremos criando um simples cenário com os modelos primitivos, um sistema de colisão e o que me vier a mente.