Conectar-se
Quem está conectado
35 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 34 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 13/02/2010
Número de Mensagens : 430
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -2

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

[Super tuto] Como iluminar um cubo em 3D {AVANÇADO}

em Dom 30 Jan 2011, 13:37
Bem seguido da parte 1 do nosso Super tuto, de como criar um cubo em 3d

nós iremos agora, fazer com quer o nosso obj_Character seja a luz Suspect

Bem continuando...

abra o gm, e nós iremos tranformar o nosso obj_Character em um cubo em 3D

para isso, coloque o sprite ''spr_mask''

e depois crie a textura para ele, como a mask é 32x32, crie as texturas 32x32, (lembre-se que são 2 texturas, textura da parte de cima, e textura dos lados)

depois com as duas texturas do obj_Character em mãos

abra o obj_Character e bote

[right]Create

Spoiler:

xw=32;
yw=32;
z=32;
z1=0;

-> Como expliquei no tópico passado, essas variaveis servem para definir autura largura e entre outros...

bem e no draw carregem as texturas

Spoiler:
draw_set_color(c_white);
d3d_draw_block(x-xw/2,y-yw/2,z,x+xw/2,y+yw/2,z1,sprite_get_texture(spr_textura2,0),1,1);
d3d_draw_floor(x-xw/2,y-yw/2,z,x+xw/2,y+yw/2,z,sprite_get_texture(spr_texturaup2,0),1,1);
draw_set_color(c_black);

-> 3d3_draw_block, serve para construir o Cubo e dentre ''()'' são as sua configurações
entre elas a definição de texturas por exemplo '',sprite_get_texture()'' Serve para usar um sprite de textura, e se vc tiver um background ñ tem problema, basta mudar '',sprite_get_texture'' para ''background_get_texture()''
e perceba que no código carreguei minhas texturas, se tiver colocado com outro nome, basta mudar
( Vcs devem saber onde mudam as texturas não é !? Suspect )

agora, nós transformamos o nosso obj_Character em 3D ....

agora², nós iremos fazer com que ele seja a luz

para isso, basta ir no create do obj_Character e adicionar a linha

Spoiler:
height = 0;

no meio das outras linhas do create...

e esta linha é uma váriavel que eu criei, para facilitar a criação da luz.. tongue

bem.. e no draw basta adicionar a linha

Spoiler:
d3d_light_define_point("light1",x,y,height+8,500,c_white);
d3d_light_enable("light1",true)

-> A primeira linha serve para definir o ponto da luz, (usei a variavel ''Height'')
e a segunda serve apenas para ligar a luz... (caso vcs queiram q desligem, é só colocar false)

bem... a nossa luz ta feita ->''([{MAS}])''<- ainda falta nós ativala para isso,
vamos até o obj_camera

[left]e editar o codigo do create

ativando a linha
d3d_set_lighting(false);
para
d3d_set_lighting(true);

pronto...

Digam quaquer bug, ou outras coisas

sintam-se maravilhosos ao postarem alien

vlw
avatar
Ranking : Nota B
Notas recebidas : B-B
Data de inscrição : 28/02/2010
Número de Mensagens : 559
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 12

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://gsogaming.blogspot.com/

Re: [Super tuto] Como iluminar um cubo em 3D {AVANÇADO}

em Dom 30 Jan 2011, 14:23
Eu já tinha visto tutoriais sobre isso, mas não tinha entendido direito como funcionava a luz.
Mas agora sim eu entendi.
Parabéns pelo tutorial cara!
Você vai fazer mais tutoriais sobre 3D?
Se for, eu vou ficar louco pra lê-los e aperfeiçoar as minhas técnicas!
avatar
Data de inscrição : 13/02/2010
Número de Mensagens : 430
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -2

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: [Super tuto] Como iluminar um cubo em 3D {AVANÇADO}

em Dom 30 Jan 2011, 15:11
acho que sim... sobre cameras... Very Happy
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum