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

Tutorial de um prop simples

Ir em baixo

Tutorial de um prop simples Empty Tutorial de um prop simples

Mensagem por EduRenesto Sab Set 13, 2014 4:33 pm

Oe pessoas, blz?
Meu primeiro tpc no forum, vou ensinar a compilar models pra serem usados como props em qualquer jogo Source, mas aqui faremos para o Gmod. Eu fiz meu addon de Whey mais ou menos desta maneira :3

Comecemos.

Requisitos:

  • Blender (ou outro app de modelling, mas o tuto é com o blender)
  • Tools da Source para o Blender
  • VTFEdit
  • GUI StudioMDL
  • Source SDK, disponível na Steam gratuitamente
  • Conhecimento básico de modelagem e texturização.


Etapa 1: Instalar os Source Tools
É provavelmente a etapa mais simples :v
Depois de baixar o Blender Source Tools do site da Válvula, no Blender vá em File -> User Preferences. Na janela que aparecer, clique em "Addons" e depois em "Install From File..." e selecione o arquivo que você baixou.
GG IZI.

Etapa 2: Modelar e arrumar os materiais
Essa é a etapa mais difícil, e você já deveria saber fazer isso neste tutorial. Se você não sabe, tem MUITOS tutoriais disso na Internet, em português e inglês.
Aqui está o meu prop que usaremos nesse tutorial, uma "estante" pra cozinha do Leo Stronda:
Tutorial de um prop simples 2L5WQGn

Preste atenção nos materiais - cada material que você fez no Blender será um par de .vtf's e .vmt's.

Etapa 3: Exportando para a Source Engine e o .QC
Antes de começar esse passo, você precisa entender a estrutura dos arquivos(e diretórios) de um jogo Source:
.../SteamApps/common/GarrysMod/garrysmod/models = a pasta em que os modelos irão;
.../SteamApps/common/GarrysMod/garrysmod/materials/models = a pasta dos materiais do nosso prop;

Também, um modelo(em sua forma mais inofensiva) é composto de dois arquivos:

  • nomedomodel.smd: o modelo em si;
  • nomedomodel.qc: o arquivo que "descreve" o model pra Source.


O .smd é o mais fácil: com o seu modelo pronto, vá na aba "Scene" no lado direito do Blender, selecione o formato "SMD" e arrume o caminho de exportação, depois mande ele exportar. Difícil? É só seguir a imagem:
Tutorial de um prop simples A4yXz6d

Agora, vá na pasta de exportação e renomeie o arquivo para algo diferente, começando com uma letra minúscula. OU NEM MUDE O NOME

Vamos para o .qc. Na mesma pasta do .smd, crie um arquivo nomedomodel.qc com um editor de texto(não processador de texto, é bem diferente). Pode ser qualquer um, como o Bloco de Notas, o Notepad++ ou outros. Aqui, estou usando o Sublime Text(uma delícia de editor).

Primeiramente, cole isso no arquivo:
Código:

$modelname "pasta_destino\modelo.mdl"
$scale 1.00
$staticprop
$cdmaterials "models\pasta_destino"

$body "Body" "modelo.smd"

$sequence seq-name "modelo.smd" loop fps 30 ACT_IDLE 1

$surfaceprop "plastic"

$collisionmodel "modelo.smd" {
 $concave
 $mass 02.27
}

Agora vamos editando:
Código:
$modelname "pasta_destino\modelo.mdl"
: aonde o modelo vai ficar. por exemplo, "cozinha\estante.mdl" ficaria em .../SteamApps/common/GarrysMod/garrysmod/models/cozinha/estante.mdl

Código:
$scale 1.00
: é a escala do blender para a source. Eu geralmente escalo 10 vezes no Blender, mas você pode fazer o modelo normalmente e colocar a $scale 10.00.

Código:
$staticprop
: é meio óbvio :v A Valve diz que isso é pra questões de performance

Código:
$cdmaterials "models\pasta_destino"
: a mesma coisa que o $modelname, só que pros materiais. Ex: "$cdmaterials "models\cozinha" significa que os materiais estão em .../SteamApps/common/GarrysMod/garrysmod/materials/models/cozinha".

Código:
$body "Body" "modelo.smd"
: define o modelo em si. o "modelo.smd" é o nome do arquivo que o Blender exportou, lembre-se disso!

Código:
$sequence seq-name "modelo.smd" loop fps 30 ACT_IDLE 1
: define a animação. Já que estamos fazendo um static prop, sem animações, podemos definir a animação como o próprio modelo!

Código:
$surfaceprop "plastic"
: é uma das coisas mais legais pra mim da Source. Você pode escolher qualquer um desses!

Código:

$collisionmodel "whey.smd" {
 $concave
 $mass 02.27
}
Bom, aí nós declaramos o modelo de colisão do prop. O $collisionmodel, novamente, é o nosso próprio model; $concave diz que é côncavo e o $mass declara o peso do prop, em kilos.

Acabamos o QC! Agora...

Etapa 4: .VMTs e .VTFs

Vamos resumir:

  • VMT: Valve Material, declara o material;
  • VTF: Valve Texture File, declara a textura em si.

    Primeiro, abra o VTFEdit e clique em Options e marque o "Auto Create VMT file".
    Tutorial de um prop simples 4TRvG05

    Agora, vá em File -> Import e selecione o arquivo de textura que você usou. Na janela seguinte, apenas clique em OK.
    Tutorial de um prop simples Is8AmKB
    Perfeito.

    Agora, salve em algum lugar. Repita o processo para o Normal Map, se você estiver usando.
    OBS: Lembra o nome do material lá no Blender? Esse arquivo representará a textura, entao seu nome deve ser o mesmo do material! No caso da minha estante, vou chamá-lo de wood.vtf. Também, repita o processo para todos os materiais do seu prop.

    Agora, abra o .vmt que o VTFEdit criou. Modifique-o para algo assim:
    Código:
     
    "vertexlitgeneric"
    {
     "$basetexture" "models/pasta_destino/material"
    }
    Por exemplo, o material "wood" da minha estante ficaria
    Código:

    "vertexlitgeneric"
    {
     "$phong" "1"

     "$basetexture" "models/cozinha/wood"
     "$bumpmap" "models/cozinha/wood_n"

     "$phongboost" "1.0"
     "$phongfresnelranges" "[0 0.5 1]"
    }
    Tem coisa a mais, mas foque no $basetexture. Agora....

    Compilando!
    É a parte final. Abra o GUIStudioMDL, e na primeira vez ele pedirá o caminho dos binários do Orange Box e do EP1, só siga as instruções. Então, em "Target mod or "GameInfo" path" clique em "Add" e navegue até ...SteamApps/common/GarrysMod/garrysmod/gameinfo.txt.
    Tutorial de um prop simples EuHWlX1

    Agora, carregue o .qc em File -> Load .qc File. Clique em Compile e....

    PRONTO
    Desculpe, ainda não

    Copie os .vmt's e .vtf's para a pasta que você colocou no $cdmaterials. Agora sim, pronto!

    Resultado:
    Tutorial de um prop simples AOTy3Kr

    Agradecimentos especiais:

    • M4n0Cr4zy - ele me ajudou a entender os materials na Source Engine
    • Equipe Null - ah Null, minha querida Null Very Happy


EduRenesto
EduRenesto
Usuário
Usuário

Inscrição : 13/09/2014

Voltar ao Topo Ir em baixo

Tutorial de um prop simples Empty Re: Tutorial de um prop simples

Mensagem por Xalalau Ter Dez 16, 2014 9:05 pm

Puxa!! Belo tutorial!! Não sei como eu deixei de ver isso... Indexei no blog. Muito obrigado.
Xalalau
Xalalau
Admin
Admin

Inscrição : 07/05/2012
Idade : 28
Localização : Rio de Janeiro

http://mrxalalau.blogspot.com.br/

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

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