GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Como colocar Sprites em jogos em 3D?

5 participantes

Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Como colocar Sprites em jogos em 3D?

Mensagem por M.F-Sasuke Qui 23 Dez 2010, 13:47

Eu aprendi a criar um jogo em 3D mas ele so ensinou a colocar um cubo, mas ai eu tento colocar sprites no logar do cubo ai o sprite do personagem se multiplica em cubo e fica 1 em cada lado do cubo!

Se puderem me ensinar a por sprites e a colocar objetos numa room em 3D ou me mandar uma engine (de preferência com o link direto pois o GMBR não ta funcionando bem aqui no meu PC!).

Agradeço!
M.F-Sasuke
M.F-Sasuke

Data de inscrição : 20/08/2010
Reputação : 0
Número de Mensagens : 167
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Jiraya Qui 23 Dez 2010, 13:59

caso esteja usando d3d_draw_block
vc pode modificar as vezes que a textura se repete nos ultimos 2 argumentos

a sprite age como uma textura nos modelos 3d
por tanto um modelo "bloco" tem seus devidos 6 lados cada lado com uma cordenada de textura semelhante ao do floor/wall
entao se vc quer aplicar uma textura uniforme no modelo voce precisar criar seu proprio modelo com suas proprias coordenadas
vc pode usar
Código:

d3d_model_primitive_begin(ind,tex);
e com o d3d_vertex_texture voce add vertices ao seu modelo com as coordenas xtex e ytex para modificar a posiçao da textura
voce tbm pode optar por usar modelos externos
como os do wavefront/x/md2/3ds
procure por scripts que carregam esses tipos de modelos para o game maker, pois assim vc pode criar seu modelo num editor 3d e fazer o uvmap dele e carregar no game maker.
;]


Última edição por Jiraya em Qui 23 Dez 2010, 14:06, editado 1 vez(es)
Jiraya
Jiraya

Games Ranking : Nota A

Notas recebidas : A+A
Data de inscrição : 20/03/2010
Reputação : 108
Número de Mensagens : 1134
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://www.facebook.com/seito.washiro.7

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por M.F-Sasuke Qui 23 Dez 2010, 14:04

não entendi?
M.F-Sasuke
M.F-Sasuke

Data de inscrição : 20/08/2010
Reputação : 0
Número de Mensagens : 167
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por M.F-Sasuke Qui 06 Jan 2011, 10:03

Me ajudem por favoooorrrr!!!!!!!!!!
M.F-Sasuke
M.F-Sasuke

Data de inscrição : 20/08/2010
Reputação : 0
Número de Mensagens : 167
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Henrique_GJ Qui 06 Jan 2011, 10:32

ps.: ó o flood e post duplo desnecessario (OO)


se eu entendi o jiraya não entendeu. seu o jiraya entendeu eu é que não entendi anh!

o jiraya pensou que vc simplesmente quer usar a sprite como textura, ou seja, vc tem um quadrado e ele pensa que vc quer colocar a sprite como imagem dos lados desse quadrado

mas na verdade acho que vc quer colocar um obj 3d que vc criou em outro soft pra dentro do gm certo?

existe um script, postado no forum de scripts e extensões, é o utilizado pra isso, mas eu tentei e não consegui pois o script que ta la ele ta errado, falta algumas coisas e talz intão eu to precisando da resposta tbm

a terceira dimensão do gm é muito limitada '--
Henrique_GJ
Henrique_GJ

Data de inscrição : 30/12/2009
Reputação : 4
Número de Mensagens : 1344
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Java
  • C ou C++


http://sitedosjogos.forumeiros.com

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por M.F-Sasuke Qui 06 Jan 2011, 11:15

ps.: ó o flood e post duplo desnecessario (OO)


se eu entendi o jiraya não entendeu. seu o jiraya entendeu eu é que não entendi anh!

o jiraya pensou que vc simplesmente quer usar a sprite como textura, ou seja, vc tem um quadrado e ele pensa que vc quer colocar a sprite como imagem dos lados desse quadrado

mas na verdade acho que vc quer colocar um obj 3d que vc criou em outro soft pra dentro do gm certo?

existe um script, postado no forum de scripts e extensões, é o utilizado pra isso, mas eu tentei e não consegui pois o script que ta la ele ta errado, falta algumas coisas e talz intão eu to precisando da resposta tbm

a terceira dimensão do gm é muito limitada '--
é isso msm.
M.F-Sasuke
M.F-Sasuke

Data de inscrição : 20/08/2010
Reputação : 0
Número de Mensagens : 167
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Henrique_GJ Qui 06 Jan 2011, 11:27

1° vc cria um script e nomeia ele de "createFromObj" ai vc coloca o seguinte script:

Código:
filename=argument0;
flipnormals = 1;
if (argument1>0) flipnormals=-1;
vertex_list1=ds_list_create();ds_list_clear(vertex_list1);ds_list_add(vertex_list1,0);
vertex_list2=ds_list_create();ds_list_clear(vertex_list2);ds_list_add(vertex_list2,0);
vertex_list3=ds_list_create();ds_list_clear(vertex_list3);ds_list_add(vertex_list3,0);
normal_list1=ds_list_create();ds_list_clear(normal_list1);ds_list_add(normal_list1,0);
normal_list2=ds_list_create();ds_list_clear(normal_list2);ds_list_add(normal_list2,0);
normal_list3=ds_list_create();ds_list_clear(normal_list3);ds_list_add(normal_list3,0);
texture_list1=ds_list_create();ds_list_clear(texture_list1);ds_list_add(texture_list1,0);
texture_list2=ds_list_create();ds_list_clear(texture_list2);ds_list_add(texture_list2,0);
faces_list=ds_list_create();ds_list_clear(faces_list);
fp=file_text_open_read(filename);

for (i=0;file_text_eof(fp)==false;i+=1) {

row=file_text_read_string(fp);row=string_replace_all(row," "," ");

if (string_char_at(row,1)=="v" && string_char_at(row,2)==" ") {
row=string_delete(row,1,string_pos(" ",row));
vx=real(string_copy(row,1,string_pos(" ",row)));
row=string_delete(row,1,string_pos(" ",row));
vy=real(string_copy(row,1,string_pos(" ",row)));
row=string_delete(row,1,string_pos(" ",row));
vz=real(string_copy(row,1,string_length(row)));
ds_list_add(vertex_list1,vx);
ds_list_add(vertex_list2,vy);
ds_list_add(vertex_list3,vz);
}

if (string_char_at(row,1)=="v" && string_char_at(row,2)=="n") {
row=string_delete(row,1,string_pos(" ",row));
nx=real(string_copy(row,1,string_pos(" ",row)));
row=string_delete(row,1,string_pos(" ",row));
ny=real(string_copy(row,1,string_pos(" ",row)));
row=string_delete(row,1,string_pos(" ",row));
nz=real(string_copy(row,1,string_length(row)));
ds_list_add(normal_list1,nx);
ds_list_add(normal_list2,ny);
ds_list_add(normal_list3,nz);
}

if (string_char_at(row,1)=="v" && string_char_at(row,2)=="t") {
row=string_delete(row,1,string_pos(" ",row));
tx=real(string_copy(row,1,string_pos(" ",row)));
row=string_delete(row,1,string_pos(" ",row));
ty=real(string_copy(row,1,string_length(row)));
ds_list_add(texture_list1,tx);
ds_list_add(texture_list2,ty);
}

if (string_char_at(row,1)=="f" && string_char_at(row,2)==" ") {
row=string_replace_all(row," "," ");
row=string_delete(row,1,string_pos(" ",row));
if (string_char_at(row,string_length(row))==" ") row=string_copy(row,0,string_length(row)-1);
face_num=string_count(" ",row);
face_division=1;
temp_faces[0]=0;

for (fc=0;fc
f=string_copy(row,1,string_pos(" ",row));
row=string_delete(row,1,string_pos(" ",row));
temp_faces[face_division]=f;
face_division+=1;
}

f=string_copy(row,1,string_length(row));temp_faces[face_division]=f;
if (face_division==3) {
f1=temp_faces[2];
f2=temp_faces[3];
f3=temp_faces[1];
ds_list_add(faces_list,f1);
ds_list_add(faces_list,f2);
ds_list_add(faces_list,f3);
} else {
f1=temp_faces[2];
f2=temp_faces[3];
f3=temp_faces[1];
ds_list_add(faces_list,f1);
ds_list_add(faces_list,f2);
ds_list_add(faces_list,f3);
for (t=0;t
f1=temp_faces[4+t];
f2=temp_faces[1];
f3=temp_faces[3+t];
ds_list_add(faces_list,f1);
ds_list_add(faces_list,f2);
ds_list_add(faces_list,f3);
}
}
}

file_text_readln(fp);
}
file_text_close(fp);

tm=d3d_model_create();
tsn=0;
d3d_model_primitive_begin(tm,pr_trianglelist);

for (fc=0;fc

sub_face=ds_list_find_value(faces_list,fc);

if (string_count("/",sub_face)==0) {
f_index=sub_face;
t_index=-1;
n_index=-1;
}

if (string_count("/",sub_face)==1) {
f_index=string_copy(sub_face,1,string_pos("/",sub_face)-1);
sub_face=string_delete(sub_face,1,string_pos("/",sub_face));
t_index=string_copy(sub_face,1,string_length(sub_face));
n_index=-1;
}

if (string_count("/",sub_face)==2 && string_count("//",sub_face)==0) {
f_index=string_copy(sub_face,1,string_pos("/",sub_face)-1);
sub_face= string_delete(sub_face,1,string_pos("/",sub_face));
t_index=string_copy(sub_face,1,string_pos("/",sub_face)-1);
sub_face= string_delete(sub_face,1,string_pos("/",sub_face));
n_index=string_copy(sub_face,1,string_length(sub_face));
}

if (string_count("/",sub_face)==2 && string_count("//",sub_face)==1) {
sub_face=string_replace(sub_face,"//","/");
f_index=string_copy(sub_face,1,string_pos("/",sub_face)-1);
sub_face= string_delete(sub_face,1,string_pos("/",sub_face));
t_index=-1;
n_index=string_copy(sub_face,1,string_length(sub_face));
}

vx=ds_list_find_value(vertex_list1,floor(real(f_index)));
vy=ds_list_find_value(vertex_list2,floor(real(f_index)));
vz=ds_list_find_value(vertex_list3,floor(real(f_index)));

if (floor(real(n_index))!=-1 && ds_list_size(normal_list1)>=1) {
nx=flipnormals*ds_list_find_value(normal_list1,floor(real(n_index)));
ny=flipnormals*ds_list_find_value(normal_list2,floor(real(n_index)));
nz=flipnormals*ds_list_find_value(normal_list3,floor(real(n_index)));
} else {
nx=0;
ny=0;
nz=0;
}

if (floor(real(t_index))!=-1 && ds_list_size(texture_list1)>=1) {
tx=ds_list_find_value(texture_list1,floor(real(t_index)));
ty=ds_list_find_value(texture_list2,floor(real(t_index)));
} else {
tx=0;
ty=0;
}

d3d_model_vertex_normal_texture(tm,vx,vy,vz,nx,ny,nz,tx,ty);

tsn+=1;
if (tsn==999) {
tsn=0;
d3d_model_primitive_end(tm);
d3d_model_primitive_begin(tm,pr_trianglelist);
}
}

d3d_model_primitive_end(tm);
return tm;

depois cria um objeto e coloca no create

Código:
modelo = createFromObj("nomedoobjeto.obj"); //Seleciona um modelo do seu computador
textura = background_get_texture(back_textura); //Adiciona uma textura ao seu modelo

agora quando vc quizer desenhar o objeto vc digita no draw:

Código:
d3d_model_draw(modelo,x,y,z,textura); //Desenha o modelo na room

pronto, mas não deu certo aqui em casa '--

esse script é de claudio bruno e foi postado por TKNF1995
Henrique_GJ
Henrique_GJ

Data de inscrição : 30/12/2009
Reputação : 4
Número de Mensagens : 1344
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Java
  • C ou C++


http://sitedosjogos.forumeiros.com

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Markituh Qui 06 Jan 2011, 11:41

É de Claudio Bruno? Sei não hein, vi esse script na GMC, é chamado Mosaic Light. Mas há uma possibilidade de ele ter postado lá study
Markituh
Markituh

Games Ranking : Sem avaliações

Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Shadow10 Sáb 08 Jan 2011, 01:29

Se vocês querem fazer bonito,
Estudem isso aqui:
UV mapping

Só assim se aprende a fazer sprites no tamanho e formato ideal pra um modelo 3D.[spoiler][center


Última edição por Shadow10 em Qui 14 Abr 2011, 18:54, editado 1 vez(es)
Shadow10
Shadow10

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 07/11/2010
Reputação : 19
Número de Mensagens : 429
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por M.F-Sasuke Sáb 08 Jan 2011, 12:25

Po cara isso ñ funcionou aki tb!
M.F-Sasuke
M.F-Sasuke

Data de inscrição : 20/08/2010
Reputação : 0
Número de Mensagens : 167
Prêmios : Como colocar Sprites em jogos em 3D? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Como colocar Sprites em jogos em 3D? Empty Re: Como colocar Sprites em jogos em 3D?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos