Conectar-se

Esqueci minha senha

Últimos assuntos
» [Duvida] O que aprender
Hoje à(s) 02:56 por Thiago Jaqueta

» [DÚVIDA] Colisão de objeto afetar apenas um
Hoje à(s) 02:48 por Thiago Jaqueta

» colisão de queda após outra colisão dando problema
Ter 27 Jun 2017, 20:18 por Willy

» BUILD FAILED: Cannot find BUILD.xml
Seg 26 Jun 2017, 14:50 por ReisBlender

» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Jogo Dengue HTML
Seg 30 Nov 2015, 16:17 por guga

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Ordenar variavel em ordem decrescente
Sex 28 Ago 2015, 21:09 por Kodained

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Problema com Colisão
Qui 27 Ago 2015, 12:30 por The_Game

» Quem quer Uma Engine, e de Quê?
Qui 27 Ago 2015, 09:22 por theguitarmester

» [RESOLV]Como adicionar 2 objetos na mesma posição?
Qua 26 Ago 2015, 11:38 por Bhryenno Kelvyn Carlson

» Sistema de porta!!!
Ter 25 Ago 2015, 21:29 por theguitarmester

» Venda de objetos em Inventário - Multiplicado
Seg 24 Ago 2015, 18:33 por AG Hydra

» Atirar na direção certa
Seg 24 Ago 2015, 09:03 por theguitarmester

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Problemas na compilação android
Dom 23 Ago 2015, 23:43 por Zero.

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Como estabilizar um som
Sab 22 Ago 2015, 19:03 por Isquilo_Roedor

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» Sobre instance Creation Code
Sab 22 Ago 2015, 08:39 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» Como fazer um temporizador
Sex 21 Ago 2015, 19:02 por Isquilo_Roedor

Quem está conectado
18 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 18 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36

[GM:S] Importar modelos .OBJ?

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

[GM:S] Importar modelos .OBJ?

Mensagem por gabrielsch em Sex 15 Fev 2013, 09:43

Faz algum tempo que o Game Maker Studio foi lançado e até agora não vi nenhuma maneira de importar um modelo 3D com a extensão .obj. O motivo pelo qual eu preciso importar esse tipo de modelo é que ele é facil de se encontrar em sites de modelos 3D gratuitos e a maioria dos modeladores aceitam esse tipo de extensão.

Há alguns scripts que eram usados nas versões anteriores do Game Maker e que não utilizam DLLs, esses conseguem importar os modelos em um jogo feito no GM:S mas as texturas ficam erradas, é como se não tivesse feito um UV Map nelas. Gostaria de saber se alguém conhece algum jeito de carregar esse tipo de modelo (por script ou por dll mesmo), nem que seja de forma um pouco lenta.

OBS: Tentei usar uma DLL que se não me engano foi feita pelo Jiraya mas ela não funcionou nas outras versões, já nas antigas elas é rápida e importa as texturas corretamente.
OBS²: Todos os modelos em que testei estavam com o UV Map correto.

Flw! sorrindo2
avatar
gabrielsch

Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por peixoto em Sex 15 Fev 2013, 11:15

Cara se houver como fazer isso só com uma extensão(e até agora não vi nenhuma para fazer tal coisa também).

OBS: Tentei usar uma DLL que se não me engano foi feita pelo Jiraya mas ela não funcionou nas outras versões, já nas antigas elas é rápida e importa as texturas corretamente.

Evite usar Dlls.Elas podem funcionar em um sistema, mas se você for exportar para mais um(por exemplo:Windows e android) ela pode não funcionar, e dar problemas no jogo.

Como o GMS ainda está engatinhando, por enquanto é melhor usar só extensões, ok? afro
avatar
peixoto

Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por gabrielsch em Sex 15 Fev 2013, 11:21

No meu caso vou exportar apenas para Windows, só quero utilizar o 3D no Game Maker: Studio porque é muito mais rapido que as outras versões, não quero ter que voltar para o GM 8 e enfrentar dificuldades com o desempenho.
avatar
gabrielsch

Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por peixoto em Sex 15 Fev 2013, 11:52

Bem acho que o melhor é esperar lançarem alguma Dll que ajude a importar os modelos .obj, ou pedir ao jiraya que atualize a dll Razz
avatar
peixoto

Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por Super Maker em Sex 15 Fev 2013, 12:20

Você já tentou usar o incluided files?
avatar
Super Maker

Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por Rodrigo Santiago em Sex 15 Fev 2013, 12:28

Gente e muito facil ler .obj!!!
A formatacao e basica, o problema com uv e pq o obj e em grupos e nao so uma textura, as uvs deveriam ficar somente na sua textura, mas como so exist uma elas erram.
Eu criei um programa que transforma varias em uma so! Vai no meu tutorial em Perguntas e respostas(errei o topico)k mas o problema e que a versao do meu programa que upei so le txt(que e quase obj) mas e so converter com o milkshape.
(obs o prog ta na apostila medium)
avatar
Rodrigo Santiago

Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

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

Prêmios
   : 3
   : 1
   : 3

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por gabrielsch em Sex 15 Fev 2013, 15:40

#Peixoto

É quem sabe o Jiraya possa dar uma ajuda...

#Super Maker

Os arquivos .obj estão nos Included Files assim como qualquer DLL que eu tentei utilizar, as texturas estão em background/sprites e eu apenas as defino como textura em uma variável.

#Rodrigo Santiago

Na realidade eu pretendo usar modelos com apenas uma textura, até onde sei só achei uma engine que conseguia importar múltiplas texturas usando o arquivo .mtl do modelo, mas era muito extenso e tinha alguns bug ao carregar alguns com muitos polígonos.

Flw! sorrindo2
avatar
gabrielsch

Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por Jiraya em Sex 15 Fev 2013, 16:55

vc pode converter o modelo .obj para .d3d nativo do game maker, assim carregara muito mais rapido...

Posso tentar fazer uma extensão compativel com todas plataformas, mas só no final de
semana...
avatar
Jiraya

Ranking : Nota A
Notas recebidas : A+A
Data de inscrição : 20/03/2010
Número de Mensagens : 1134
Insígnias de JAM :

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

Prêmios
   : 1
   : 0
   : 1

Ver perfil do usuário https://www.facebook.com/seito.washiro.7

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por JoaoVanBlizzard em Sex 15 Fev 2013, 18:14

Eu uso um programa chamado "Model creator for game maker" tipo eu importo para ele um modelo no formato obj. (eu conserto a textura nele mesmo) e depois exporto no formato" gmmod " ,para ler esse formato no gm é o mesmo sistema do" D3D ".
avatar
JoaoVanBlizzard

Ranking : Nota B
Notas recebidas : B+B
Data de inscrição : 04/03/2012
Número de Mensagens : 1925
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por gabrielsch em Sex 15 Fev 2013, 19:03

#JoaoVanBlizzard

Sim, eu tenho ele aqui e acabei de arrumar a textura de um barril para meu jogo e logo depois exportei como .gmmod, coloquei no jogo e funcionou perfeitamente!

#Jiraya

Sim, eu já tinha feito isso mas o problema é que vou comprar um pacote com mais de 100 modelos low-poly e eles vem em .obj com uma textura para cada modelo. Eu poderia muito bem pegar esses 100 modelos e ir arrumando o UV Map deles se necessário e exportar para .gmmod mas isso ia demorar bastante por isso pedi alguma forma de importa-los no Game Maker. Agradeço muito se fizer essa extensão, além de me ajudar nesse problema vai ajudar muitas outras que estão com o mesmo problema.

Flw! sorrindo2
avatar
gabrielsch

Ranking : Nota A
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Número de Mensagens : 1229
Insígnias de JAM :

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

Prêmios
   : 1
   : 2
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por Jiraya em Sab 16 Fev 2013, 14:27


Código:

//LoadWaveFront(filename)
var a=argument0,b=ds_list_create(),c,d=ds_list_create(),e=ds_list_create(),f=ds_list_create(),g=ds_list_create(),h=ds_list_create(),i=ds_list_create(),j=ds_list_create(),k=ds_list_create(),l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,E,F,G,H,I,J,K,L;
ds_list_add(b,0)ds_list_add(d,0)ds_list_add(e,0)ds_list_add(f,0)ds_list_add(g,0)ds_list_add(h,0)ds_list_add(i,0)ds_list_add(j,0)ds_list_clear(k)l=file_text_open_read(a)for(L=0;file_text_eof(l)==false;L++){m=file_text_read_string(l)m=string_replace_all(m,"  "," ")if(string_char_at(m,1)=="v" && string_char_at(m,2)==" "){
m=string_delete(m,1,string_pos(" ",m))n=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))o=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))p=real(string_copy(m,1,string_length(m)))ds_list_add(b,n)ds_list_add(d,o)ds_list_add(e,p)}
if(string_char_at(m,1)=="v" && string_char_at(m,2)=="n"){m=string_delete(m,1,string_pos(" ",m))q=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))r=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))s=real(string_copy(m,1,string_length(m)))ds_list_add(f,q)ds_list_add(g,r)ds_list_add(h,s)}
if(string_char_at(m,1)=="v" && string_char_at(m,2)=="t"){m=string_delete(m,1,string_pos(" ",m))t=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))u=real(string_copy(m,1,string_length(m)))ds_list_add(i,t)ds_list_add(j,u)}
if(string_char_at(m,1)=="f" && string_char_at(m,2)==" "){m=string_replace_all(m,"  "," ")m=string_delete(m,1,string_pos(" ",m))if(string_char_at(m,string_length(m))==" ")m=string_copy(m,0,string_length(m)-1)v=string_count(" ",m)w=1;A[0]=0;
for(H=0;H<v;H+=1){f=string_copy(m,1,string_pos(" ",m))m=string_delete(m,1,string_pos(" ",m))A[w]=f;w++}
f=string_copy(m,1,string_length(m))A[w]=f;if(w==3){K=A[2];J=A[3];I=A[1];ds_list_add(k,K)ds_list_add(k,J)ds_list_add(k,I)}else{K=A[2];J=A[3];I=A[1];ds_list_add(k,K)ds_list_add(k,J)ds_list_add(k,I)
for(t=0;t<w-3;t+=1){K=A[4+t];J=A[1];I=A[3+t];ds_list_add(k,K)ds_list_add(k,J)ds_list_add(k,I)}}}file_text_readln(l)}file_text_close(l)
B=d3d_model_create()C=0;d3d_model_primitive_begin(B,pr_trianglelist)for(H=0;H<ds_list_size(k)H++){F=ds_list_find_value(k,H)if(string_count("/",F)==0){G=F;D=-1;E=-1}
if(string_count("/",F)==1){G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=string_copy(F,1,string_length(F))E=-1}
if(string_count("/",F)==2 && string_count("//",F)==0){G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))E=string_copy(F,1,string_length(F))}
if(string_count("/",F)==2 && string_count("//",F)==1){F=string_replace(F,"//","/")G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=-1;E=string_copy(F,1,string_length(F))}
n=ds_list_find_value(b,floor(real(G)))o=ds_list_find_value(d,floor(real(G)))p=ds_list_find_value(e,floor(real(G)))
if(floor(real(E))!=-1 && ds_list_size(f)>=1){q=b*ds_list_find_value(f,floor(real(E)))r=b*ds_list_find_value(g,floor(real(E)))s=b*ds_list_find_value(h,floor(real(E)))}else{q=0;r=0;s=0;}
if(floor(real(D))!=-1 && ds_list_size(i)>=1){t=ds_list_find_value(i,floor(real(D)))u=ds_list_find_value(j,floor(real(D)))}else{t=0;u=0;}
d3d_model_vertex_normal_texture(B,n,o,p,q,r,s,t,u)C+=1;if(C==999){C=0;d3d_model_primitive_end(B)d3d_model_primitive_begin(B,pr_trianglelist)}}d3d_model_primitive_end(B)
ds_list_destroy(d)ds_list_destroy(e)ds_list_destroy(f)ds_list_destroy(g)ds_list_destroy(h)ds_list_destroy(i)ds_list_destroy(j)ds_list_destroy(k)
return B;
LoadWaveFront:

//LoadWaveFront(filename)
var a=argument0,b=ds_list_create(),c,d=ds_list_create(),e=ds_list_create(),f=ds_list_create(),g=ds_list_create(),h=ds_list_create(),i=ds_list_create(),j=ds_list_create(),k=ds_list_create(),l,m,n,o,p,q,r,s,t,u,v,w,A,B,C,D,E,F,G,H,I,J,K,L;
ds_list_add(b,0)ds_list_add(d,0)ds_list_add(e,0)ds_list_add(f,0)ds_list_add(g,0)ds_list_add(h,0)ds_list_add(i,0)ds_list_add(j,0)ds_list_clear(k)l=file_text_open_read(a)for(L=0;file_text_eof(l)==false;L++){m=file_text_read_string(l)m=string_replace_all(m," "," ")if(string_char_at(m,1)=="v" && string_char_at(m,2)==" "){
m=string_delete(m,1,string_pos(" ",m))n=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))o=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))p=real(string_copy(m,1,string_length(m)))ds_list_add(b,n)ds_list_add(d,o)ds_list_add(e,p)}
if(string_char_at(m,1)=="v" && string_char_at(m,2)=="n"){m=string_delete(m,1,string_pos(" ",m))q=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))r=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))s=real(string_copy(m,1,string_length(m)))ds_list_add(f,q)ds_list_add(g,r)ds_list_add(h,s)}
if(string_char_at(m,1)=="v" && string_char_at(m,2)=="t"){m=string_delete(m,1,string_pos(" ",m))t=real(string_copy(m,1,string_pos(" ",m)))m=string_delete(m,1,string_pos(" ",m))u=real(string_copy(m,1,string_length(m)))ds_list_add(i,t)ds_list_add(j,u)}
if(string_char_at(m,1)=="f" && string_char_at(m,2)==" "){m=string_replace_all(m," "," ")m=string_delete(m,1,string_pos(" ",m))if(string_char_at(m,string_length(m))==" ")m=string_copy(m,0,string_length(m)-1)v=string_count(" ",m)w=1;A[0]=0;
for(H=0;Hf=string_copy(m,1,string_length(m))A[w]=f;if(w==3){K=A[2];J=A[3];I=A[1];ds_list_add(k,K)ds_list_add(k,J)ds_list_add(k,I)}else{K=A[2];J=A[3];I=A[1];ds_list_add(k,K)ds_list_add(k,J)ds_list_add(k,I)
for(t=0;tB=d3d_model_create()C=0;d3d_model_primitive_begin(B,pr_trianglelist)for(H=0;Hif(string_count("/",F)==1){G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=string_copy(F,1,string_length(F))E=-1}
if(string_count("/",F)==2 && string_count("//",F)==0){G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))E=string_copy(F,1,string_length(F))}
if(string_count("/",F)==2 && string_count("//",F)==1){F=string_replace(F,"//","/")G=string_copy(F,1,string_pos("/",F)-1)F=string_delete(F,1,string_pos("/",F))D=-1;E=string_copy(F,1,string_length(F))}
n=ds_list_find_value(b,floor(real(G)))o=ds_list_find_value(d,floor(real(G)))p=ds_list_find_value(e,floor(real(G)))
if(floor(real(E))!=-1 && ds_list_size(f)>=1){q=b*ds_list_find_value(f,floor(real(E)))r=b*ds_list_find_value(g,floor(real(E)))s=b*ds_list_find_value(h,floor(real(E)))}else{q=0;r=0;s=0;}
if(floor(real(D))!=-1 && ds_list_size(i)>=1){t=ds_list_find_value(i,floor(real(D)))u=ds_list_find_value(j,floor(real(D)))}else{t=0;u=0;}
d3d_model_vertex_normal_texture(B,n,o,p,q,r,s,t,u)C+=1;if(C==999){C=0;d3d_model_primitive_end(B)d3d_model_primitive_begin(B,pr_trianglelist)}}d3d_model_primitive_end(B)
ds_list_destroy(d)ds_list_destroy(e)ds_list_destroy(f)ds_list_destroy(g)ds_list_destroy(h)ds_list_destroy(i)ds_list_destroy(j)ds_list_destroy(k)
return B;
Use isso como um quebra galho...

o código foi otimizado por mim para executar mais rápido...


Última edição por Jiraya em Sab 16 Fev 2013, 14:37, editado 2 vez(es)
avatar
Jiraya

Ranking : Nota A
Notas recebidas : A+A
Data de inscrição : 20/03/2010
Número de Mensagens : 1134
Insígnias de JAM :

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

Prêmios
   : 1
   : 0
   : 1

Ver perfil do usuário https://www.facebook.com/seito.washiro.7

Voltar ao Topo Ir em baixo

Re: [GM:S] Importar modelos .OBJ?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum