Aula 2:Iniciando no Blitz3D
E de extrema importancia que você que você tenho um conhecimento em posições 3D
x, Y e Z

Esse sera o resultado final criando uma esfera 3D na room e visualizar

Toda engine do Blitz3D tem uma estrutura padrão de scripts
nessa primeira aula vou demonstrar essa estrutura simples
ja com um toque grafico. Abra o Blitz3D e é importante que você digite os scripts a seguir para melhor aprendizado ou copie e cole e tente entender depois.
Mas vale lembrar apenas nessa aula estarei mostrando detalhes por detalhes
mas para frente esplicarei mais direto porque se torna cansativo
ATENÇÃO APENAS COPIE OS SCRIPTS CASO COPIAR A EXPLICAÇÃO COLOQUE UM ; PARA QUE NÃO HAJA ERO NO PROGRAMA,nos tutos sempre tentarei deixar bem formatado para não ocasionar nenhum tipo desses eros, porem podem haver.
Abra o Blitz agora e siga essa aula a seguir flows boa aula

Bom nessa aula 2 ja vou me aprofundar bem mais ja criando um aplicativo jogavel
nesse games vamos aprender a:
importar arquivos de pastas
adicionar objetos 3D
adicionar transparencia
criar gravidade
movimentar o player com direcionais
Antes de tudo baixe os arquivos para essa aula clicando AQui
estraia o arquivo .rar e vamos criar o projeto dentro da pasta jogo
obs: salve o arquivo do blitz sempre nessa pasta, sendo a pasta do jogo
então vamos la!
x, Y e Z
Esse sera o resultado final criando uma esfera 3D na room e visualizar
Toda engine do Blitz3D tem uma estrutura padrão de scripts
nessa primeira aula vou demonstrar essa estrutura simples
ja com um toque grafico. Abra o Blitz3D e é importante que você digite os scripts a seguir para melhor aprendizado ou copie e cole e tente entender depois.
Mas vale lembrar apenas nessa aula estarei mostrando detalhes por detalhes
mas para frente esplicarei mais direto porque se torna cansativo
ATENÇÃO APENAS COPIE OS SCRIPTS CASO COPIAR A EXPLICAÇÃO COLOQUE UM ; PARA QUE NÃO HAJA ERO NO PROGRAMA,nos tutos sempre tentarei deixar bem formatado para não ocasionar nenhum tipo desses eros, porem podem haver.
Abra o Blitz agora e siga essa aula a seguir flows boa aula
;Inicia o modo 3D e carrega script obrigatorio
;Onde que em graphics3D mostra como sera exibida a janela
;temos os seguintes argumentos comprimento e altura(ex:"640,480")
;profundidade de cores (ex:640,480",32",0)
;modo da janela : 0=janela,1=fullscreem (ex:640,480,32",1")
;veja:
Graphics3D 640,480,32,0
SetBuffer BackBuffer()
; cria uma camera para o jogo onde se visualiza na janela script obrigatorio
;criamos um nome para a camera "camera" e inserimos createcamera()
camera=CreateCamera()
;cria uma luz ao jogo script obrigatorio
;criamos um nome para a luz "light" e inserimos createlight()
light=CreateLight()
;de exemplo para mostrar algo na janela criei uma esfera chamada bola
;e inseri a função createsphere() q se cria uma esfera
;e determinei sua qualidade (32) e abaixo sua posição para visualizar na janela
;position entity determina onde tal objeto estara na room
;você determina que objeto estara sendo ultilidado q é a bola
;e apos aplica a posiçãp no cenario em x,y,z
;veja:
bola=CreateSphere ( 32 )
PositionEntity bola,0,0,5
;while iniciaria os comandos de ação como ultilização do teclado
While Not KeyDown( 1 )
;recarrega script obrigatorio
RenderWorld
;o script text faz uma mensagem aparecer na tela e isso é opcional
Text 0,15 ,"Essa é a Primeira aula sobre Blitz"
Flip
Wend
End
Aula 3: Inicie com um jogo 3D
Bom nessa aula 2 ja vou me aprofundar bem mais ja criando um aplicativo jogavel
nesse games vamos aprender a:
importar arquivos de pastas
adicionar objetos 3D
adicionar transparencia
criar gravidade
movimentar o player com direcionais
Antes de tudo baixe os arquivos para essa aula clicando AQui
estraia o arquivo .rar e vamos criar o projeto dentro da pasta jogo
obs: salve o arquivo do blitz sempre nessa pasta, sendo a pasta do jogo
então vamos la!
;damos um tamanho na tela e carregamos
Graphics3D 800,600,16,0
SetBuffer BackBuffer()
;novo, damos atributos para os objetos
;para se identificarem no momento de colisão
;no exemplo a sphere_col vai se colidir com o cube_col
Const CUBE_COL=1
Const SPHERE_COL=2
Const PIC=3
;criamos uma luz
light=CreateLight()
RotateEntity light ,0,0,0
;novo, cria uma pasta dentro da pasta game chamada path
;la é onde colocaremos os arquivos como imagens, sons, objetos...
;ex: quando carregamos imagens o comando é loadtexture
;quando carregamos obj3D é loadmesh
bolatex=LoadTexture ("path\metal.png")
chaotex=LoadTexture ("path\ground.bmp")
agua=LoadTexture ("path\water.bmp")
picinaobj=LoadMesh ("path\ss.3ds")
;adicionamos a picinaobj a room e definimos ela como tipo cube_col
PositionEntity picinaobj,8,-3,5
EntityFX picinaobj,1
EntityType picinaobj,CUBE_COL
;criamos a agua para a picina criando um cubo
;e adicionando uma textura de agua nela
;observe o comando entityalpha ela da transparencia
;na entidade dependendo do valor
picina=CreateCube ()
PositionEntity picina,8,-3,5
ScaleEntity picina,6,1,3
EntityTexture picina,agua
EntityAlpha picina ,.5
EntityFX picina,1
;criamos uma esfera para ser nosso personagem damos a ele a posição, a textura a ;escala da textura e o tipo que é sphere_col
bola=CreateSphere ( 32 )
PositionEntity bola,5,2,8
EntityTexture bola,bolatex
ScaleTexture bolatex,0.1,0.1
EntityType bola,SPHERE_COL
;criamos uma camera e adicionamos a ela a bola para ser seguida
;como assim? a camera simplesmente vai seguir o personagem! ual
camera=CreateCamera(bola)
PositionEntity camera,0,1.5,-6
;agora definimos a colisão do personagem com a picinaobj
Collisions SPHERE_COL,CUBE_COL,2,2
Collisions SPHERE_COL,PIC,2,2
;apartir do comando while keydown se inicia os comandos de ação
While Not KeyDown( 1 )
;definimos que quando a tecla para cima for precionada a bola ande para frente
If KeyDown (200) MoveEntity bola,0,0,0.1
;definimos que quando a tecla para baixo for precionada a bola ande para tras
If KeyDown (208) MoveEntity bola,0,0,-0.1
;definimos que quando a tecla para direita for precionada
;a camera gire sobre a bola para direita
If KeyDown (205) TurnEntity bola,0,-1,0
;definimos que quando a tecla para esquerda for precionada
;a camera gire sobre a bola para esquerda
If KeyDown (203) TurnEntity bola,0,1,0;esq
; e enfim quando precionamos espaço o personagem de um pulo
If KeyHit(57)=True MoveEntity bola,0,2,0
;definimos a gravidade para que a bola se mova para baixo
MoveEntity bola,0,-0.2,0
;recarregamos o jogo
UpdateWorld
;e de extrema importancia em colisões renderisamos os objetos
RenderWorld
Flip
Wend
End
Aula 4: Criando um Cêu e Chao
Bom vamos continuar o tuto anterior seguindo com a mesma engine
então abra o projeto e vamos criar primeiro um Cêu para o jogo.
primeiro pega essa imagem a baixo e salve dentro da pasta path.
verifique se o nome ficara "skya.jpg"

Agora adicione um comando para carregar a imagem no blitz, é bom que você adicione esse comando junto com os outros para manter uma organização
;carregando cêu, damos o nome de ceutex para a textura do cêu
ceutex=LoadTexture ("path\Skya.jpg")
;vamos criar uma esfera para q o horizonte seja realista, o 32 entre os parenteses
;significam a qualidade da esfera 3D sempre multiplacado por dois
;por exemplo: 4,8,16,32,64,128...
ceu=CreateSphere ( 32 )
PositionEntity ceu,0,30,0
;definimos onde a textura sera aplicada no caso no ceu
EntityTexture ceu,ceutex
ScaleTexture ceutex,1,1
ScaleEntity ceu,40,40,40
;usamos o comando FlipMesh..ele faz com que o objeto tenha forma por dentro.
FlipMesh ceu
;Agora preste atenção vamos fazer o cêu rotacionar dando um tom realista ao jogo
;Para isso insira a função turnentity() abaixo do comando While Not KeyDown( 1 )
;por ser uma função step caso o contrario a esfera não tera rotação.
TurnEntity ceu,0,-0.05,0
Veja como ficou

Agora vamos criar um chão para o jogo
salve a imagem a seguir e coloque na pasta path ela sera a textura do chao

;carregando chao, damos o nome de chaotex para a textura do chao
chaotex=LoadTexture ("path\chao.jpg")
;Crie um plano defina sua posição, textura e entidade de colisão.
chao=CreatePlane ()
PositionEntity chao,0,-3,0
EntityTexture chao, chaotex
EntityType chao,CUBE_COL

então abra o projeto e vamos criar primeiro um Cêu para o jogo.
primeiro pega essa imagem a baixo e salve dentro da pasta path.
verifique se o nome ficara "skya.jpg"
Agora adicione um comando para carregar a imagem no blitz, é bom que você adicione esse comando junto com os outros para manter uma organização
;carregando cêu, damos o nome de ceutex para a textura do cêu
ceutex=LoadTexture ("path\Skya.jpg")
;vamos criar uma esfera para q o horizonte seja realista, o 32 entre os parenteses
;significam a qualidade da esfera 3D sempre multiplacado por dois
;por exemplo: 4,8,16,32,64,128...
ceu=CreateSphere ( 32 )
PositionEntity ceu,0,30,0
;definimos onde a textura sera aplicada no caso no ceu
EntityTexture ceu,ceutex
ScaleTexture ceutex,1,1
ScaleEntity ceu,40,40,40
;usamos o comando FlipMesh..ele faz com que o objeto tenha forma por dentro.
FlipMesh ceu
;Agora preste atenção vamos fazer o cêu rotacionar dando um tom realista ao jogo
;Para isso insira a função turnentity() abaixo do comando While Not KeyDown( 1 )
;por ser uma função step caso o contrario a esfera não tera rotação.
TurnEntity ceu,0,-0.05,0
Veja como ficou
Agora vamos criar um chão para o jogo
salve a imagem a seguir e coloque na pasta path ela sera a textura do chao
;carregando chao, damos o nome de chaotex para a textura do chao
chaotex=LoadTexture ("path\chao.jpg")
;Crie um plano defina sua posição, textura e entidade de colisão.
chao=CreatePlane ()
PositionEntity chao,0,-3,0
EntityTexture chao, chaotex
EntityType chao,CUBE_COL
Aula 5: Pulando só no chão
Ae Galera agora vamos criar um game basico
essa aula pode ser usada para quem ainda não iniciou no blitz
Porem não estarei explicando tanto cada comando, duvidas só postar.
Aqui nessa aula o player apenas pula quando estiver no solo, deixando aquele leg que vimos nas aulas passadas de ele pular no ar.
pegue essa imagem abaixo que vai servir como nosso solo.

essa aula pode ser usada para quem ainda não iniciou no blitz
Porem não estarei explicando tanto cada comando, duvidas só postar.
Aqui nessa aula o player apenas pula quando estiver no solo, deixando aquele leg que vimos nas aulas passadas de ele pular no ar.
pegue essa imagem abaixo que vai servir como nosso solo.
;definimos o grafico
Graphics3D 800,600,0,0
SetBuffer BackBuffer()
;carregamos a textura
chaotext=LoadTexture ("chao.jpg")
ScaleTexture chaotext,.1,.1
;criamos um personagem e seus atributos
cube=CreateCube()
PositionEntity cube,0,25,5
EntityType cube,1
EntityColor cube,50,100,55
;criamos uma luz luz
luz=CreateLight()
LightRange luz,10
AmbientLight 255,255,255
LightColor luz,10,10,10
;criamos a camera que seguira o personagem
camera=CreateCamera(cube)
PositionEntity camera,0,3,-15
RotateEntity camera,0,0,0
;criamos o chao
Floorc=CreateCube()
PositionEntity Floorc,0,-2,0
ScaleEntity Floorc,20,0.1,20
EntityType Floorc,3
EntityAlpha Floorc,.6
EntityTexture Floorc,chaotext
;definimos a colisão onde 1 se colidira com 3
Collisions 1,3,2,2
;definimos gr# como a nossa gravidade que é igual a -1
gr#=-1
;definimos quando estamos no solo, onde 0 é no solo
j=0
While Not KeyHit(1)
;definimos a gravidade
MoveEntity cube,0,gr,0
If gr>(-1) Then gr=gr-0.05
;definimos os comando para movimentar o player
If KeyDown(17) Then MoveEntity cube,0,0,0.2
If KeyDown(31) Then MoveEntity cube,0,0,-0.2
If KeyDown(30) Then TurnEntity cube,0,1.5,0
If KeyDown(32) Then TurnEntity cube,0,-1.5,0
If KeyHit(57) And j=0
gr=0.5
j=1
EndIf
;definimos a colisão
If EntityCollided(cube,3) Then j=0
If Not EntityCollided(cube,3) Then j=1
UpdateWorld
RenderWorld
Flip
Wend
End



0 comentários:
Postar um comentário