Es/Creating a Material: Difference between revisions
mNo edit summary |
m (Multipage removal) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LanguageBar}} | ||
{{toc-right}} | {{toc-right}} | ||
Este tutorial es una guía paso a paso para crear un | Este tutorial es una guía paso a paso para crear un {{L|material}} completamente nuevo, incluida la creación de la {{L|texture}} del material. | ||
== Creando una Textura == | == Creando una Textura == | ||
Line 8: | Line 9: | ||
Cualquier archivo de imagen se puede utilizar como textura, siempre que sus dos dimensiones (alto y ancho) sean una potencia de dos: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 y así sucesivamente. Para decidir cuál usar, examine las texturas existentes que cumplen la misma función que la suya. Las resoluciones más altas reducen el rendimiento pero hacen que la imagen sea más nítida cuando se ve de cerca. | Cualquier archivo de imagen se puede utilizar como textura, siempre que sus dos dimensiones (alto y ancho) sean una potencia de dos: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 y así sucesivamente. Para decidir cuál usar, examine las texturas existentes que cumplen la misma función que la suya. Las resoluciones más altas reducen el rendimiento pero hacen que la imagen sea más nítida cuando se ve de cerca. | ||
Las diferentes clases de objetos tienen diferentes resoluciones estándar (por ejemplo, los modelos de personajes usan resoluciones muy altas). Compruebe las opciones de Valve en <code>source materials.gcf</code> con | Las diferentes clases de objetos tienen diferentes resoluciones estándar (por ejemplo, los modelos de personajes usan resoluciones muy altas). Compruebe las opciones de Valve en <code>source materials.gcf</code> con {{L|GCFScape}} si alguna vez se confunde. | ||
{{note|Los archivos fuente de textura deben guardarse en un formato sin pérdidas como [[Wikipedia:Truevision TGA|TGA]] precompilado, para evitar pérdidas innecesarias en la calidad.}} | {{note|Los archivos fuente de textura deben guardarse en un formato sin pérdidas como [[Wikipedia:Truevision TGA|TGA]] precompilado, para evitar pérdidas innecesarias en la calidad.}} | ||
Line 15: | Line 16: | ||
=== Convirtiendo la Textura === | === Convirtiendo la Textura === | ||
Las texturas deben convertirse al | Las texturas deben convertirse al {{L|Valve Texture Format}} antes de que Source pueda usarlas. La herramienta que proporciona Valve para esto es {{L|Vtex (Source 1)|VTEX}}. Es una herramienta de {{L|command line}} con bastantes limitaciones, por lo que es preferible la herramienta de terceros {{L|VTFEdit}}: proporciona una interfaz gráfica de usuario, le permite cambiar las propiedades de una textura sin volver a compilarla desde cero , acepta una amplia gama de formatos de imagen y no requiere la creación de archivos de script para todas y cada una de las texturas. Hay un puñado de situaciones en las que necesitará recurrir a VTEX... pero solo un puñado. Además, si tiene texturas que usan transparencia, se recomienda que las guarde en formato TIFF antes de importarlas a VTFedit, ya que la transparencia PNG suele tener problemas. | ||
(Hay complementos VTF que le permiten guardar en el formato directamente desde [http://nemesis.thewavelength.net/index.php?p=39 Photoshop], [http://code.google.com/p/gimp-vtf/ GIMP] y [http://nemesis.thewavelength.net/index.php?p=50 Paint.NET], pero este tutorial no los cubrirá ya que no todos usan esas herramientas). | (Hay complementos VTF que le permiten guardar en el formato directamente desde [http://nemesis.thewavelength.net/index.php?p=39 Photoshop], [http://code.google.com/p/gimp-vtf/ GIMP] y [http://nemesis.thewavelength.net/index.php?p=50 Paint.NET], pero este tutorial no los cubrirá ya que no todos usan esas herramientas). | ||
Line 21: | Line 22: | ||
'''Para importa tu Textura con VTFEdit''', use <code>File > Import</code> o presione {{key|Ctrl+I}}. Seleccione su imagen y se le presentará la pantalla de importación: | '''Para importa tu Textura con VTFEdit''', use <code>File > Import</code> o presione {{key|Ctrl+I}}. Seleccione su imagen y se le presentará la pantalla de importación: | ||
[[ | [[File:Vtfedit importoptions.png|center|VTFEdit's import screen]] | ||
==== Opciones Generales ==== | ==== Opciones Generales ==== | ||
Line 38: | Line 39: | ||
==== Opciones de Mipmap ==== | ==== Opciones de Mipmap ==== | ||
{{L|MIP Mapping|Mipmaps}} son versiones de baja resolución de una textura que se intercambian cuando una superficie está lejos de la cámara. Reducen en gran medida la cantidad de cambios de tamaño de textura necesarios, mejorando tanto el rendimiento como la calidad de la imagen. Se requieren mips para que la textura LOD funcione. | |||
{{tip|Las texturas que aparecerán en el mundo 3D deben tener mipmaps. Para conservar memoria, las texturas que solo se usarán en una interfaz 2D no deberían hacerlo.}} | {{tip|Las texturas que aparecerán en el mundo 3D deben tener mipmaps. Para conservar memoria, las texturas que solo se usarán en una interfaz 2D no deberían hacerlo.}} | ||
Line 54: | Line 55: | ||
==== Opciones de Mapa Normal ==== | ==== Opciones de Mapa Normal ==== | ||
Estas opciones (mal etiquetadas) le permiten generar automáticamente un | Estas opciones (mal etiquetadas) le permiten generar automáticamente un {{L|bump map}} a partir de su imagen de entrada. Querrá hacer esto correctamente con un editor de imágenes para el material que envía, pero la opción automática está ahí si desea resultados rápidos o una base desde la que trabajar. | ||
=== Configurando y Guardando === | === Configurando y Guardando === | ||
Line 63: | Line 64: | ||
==Creando un Material== | ==Creando un Material== | ||
Source no accede a las texturas directamente. Todo pasa por un ''' | Source no accede a las texturas directamente. Todo pasa por un '''{{L|material}}'''. | ||
Los materiales son archivos de secuencias de comandos que se pueden crear en cualquier editor de texto, pero se recomienda que utilice [http://notepad-plus.sourceforge.net/ Notepad++] junto con las reglas de resaltado de sintaxis de | Los materiales son archivos de secuencias de comandos que se pueden crear en cualquier editor de texto, pero se recomienda que utilice [http://notepad-plus.sourceforge.net/ Notepad++] junto con las reglas de resaltado de sintaxis de {{L|Notepad++ VDF languages|syntax highlighting rules}}. Para que su material sea detectado, '''debe guardarlo en la carpeta <code>\materials</code> de su juego o mod con la extensión <tt>.vmt</tt>'''. | ||
{{note|Si está creando materiales y texturas exclusivamente para un mapa para un mod existente, considere usar | {{note|Si está creando materiales y texturas exclusivamente para un mapa para un mod existente, considere usar {{L|BSPZIP}}\{{L|Packbsp}}\{{L|Pakrat}}\{{L|Compile Pal}} para empaquetar los archivos de material y textura dentro el archivo de mapa en sí. Esto evitará que se pierdan.}} | ||
{{warning|Aunque su computadora le permitirá guardar un nombre de archivo que contenga el carácter <tt>%</tt>, y los | {{warning|Aunque su computadora le permitirá guardar un nombre de archivo que contenga el carácter <tt>%</tt>, y los {{L|VTF}} funcionan bien con el carácter en el nombre, Hammer no puede manejar {{L|VMT}}s cuyos nombres contienen el carácter <tt>%</tt>.}} | ||
===Sintaxis=== | ===Sintaxis=== | ||
Un archivo de material se ve así: | Un archivo de material se ve así: | ||
< | <{{L|shader}}> | ||
{ | { | ||
<parámetro> <valor> | <parámetro> <valor> | ||
Line 84: | Line 85: | ||
} | } | ||
Hay muchos | Hay muchos {{L|shader}}s para elegir, pero la mayoría de los materiales usarán {{ent|LightmappedGeneric}} ({{L|brush}}es) o {{ent|VertexLitGeneric}} ({{L|model}}s) . El tercer shader más común es {{ent|UnlitGeneric}}, que se usa para materiales {{L|VGUI2|UI}} y la ocasionalmente {{L|texture tools}}. | ||
===Parámetros=== | ===Parámetros=== | ||
:''Para obtener una lista de todos los parámetros de shaders documentados, consulte | :''Para obtener una lista de todos los parámetros de shaders documentados, consulte {{LCategory|List of Shader Parameters}}.'' | ||
Con un shader elegido, están los parámetros (también llamados comandos). Hay cientos de opciones sobre qué poner en un material, por lo que este artículo solo cubrirá las más comunes, que son aceptadas por más o menos todos los shaders. Ellos son: | Con un shader elegido, están los parámetros (también llamados comandos). Hay cientos de opciones sobre qué poner en un material, por lo que este artículo solo cubrirá las más comunes, que son aceptadas por más o menos todos los shaders. Ellos son: | ||
Line 105: | Line 106: | ||
==Ver También== | ==Ver También== | ||
* | * {{L|Material}} | ||
* | * {{L|Material Editor}} | ||
* | * {{L|Creating Reflective Materials}} | ||
* | * {{L|Adapting PBR Textures to Source}} | ||
* | * {{LCategory|List of Shader Parameters}} | ||
{{ACategory|Material System}} | |||
{{ACategory|Tutorials}} |
Latest revision as of 16:53, 12 July 2024
Este tutorial es una guía paso a paso para crear un material completamente nuevo, incluida la creación de la texture del material.
Creando una Textura
Cualquier archivo de imagen se puede utilizar como textura, siempre que sus dos dimensiones (alto y ancho) sean una potencia de dos: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 y así sucesivamente. Para decidir cuál usar, examine las texturas existentes que cumplen la misma función que la suya. Las resoluciones más altas reducen el rendimiento pero hacen que la imagen sea más nítida cuando se ve de cerca.
Las diferentes clases de objetos tienen diferentes resoluciones estándar (por ejemplo, los modelos de personajes usan resoluciones muy altas). Compruebe las opciones de Valve en source materials.gcf
con GCFScape si alguna vez se confunde.


Convirtiendo la Textura
Las texturas deben convertirse al Valve Texture Format antes de que Source pueda usarlas. La herramienta que proporciona Valve para esto es VTEX . Es una herramienta de command line con bastantes limitaciones, por lo que es preferible la herramienta de terceros VTFEdit : proporciona una interfaz gráfica de usuario, le permite cambiar las propiedades de una textura sin volver a compilarla desde cero , acepta una amplia gama de formatos de imagen y no requiere la creación de archivos de script para todas y cada una de las texturas. Hay un puñado de situaciones en las que necesitará recurrir a VTEX... pero solo un puñado. Además, si tiene texturas que usan transparencia, se recomienda que las guarde en formato TIFF antes de importarlas a VTFedit, ya que la transparencia PNG suele tener problemas.
(Hay complementos VTF que le permiten guardar en el formato directamente desde Photoshop, GIMP y Paint.NET, pero este tutorial no los cubrirá ya que no todos usan esas herramientas).
Para importa tu Textura con VTFEdit, use File > Import
o presione Ctrl+I. Seleccione su imagen y se le presentará la pantalla de importación:
Opciones Generales
Estos ajustes son los más importantes. Hay tres:
- Formato Normal
- El formato de color/compresión que debe usarse si la textura es opaca.
- Formato Alfa
- El formato de color/compresión que debe usarse si la textura tiene un canal alfa.
- Tipo de Textura
- Si importó más de una imagen, esto determina cómo se usarán (fotogramas de animación/caras de un cubemap/cortes de profundidad).
Si está creando una textura de mundo simple y simple, no necesitará cambiar ninguno de estos. Sin embargo, si está creando una textura con un detalle de degradado fino, deberá elegir un modo de compresión sin pérdidas.
Opciones de Mipmap
Mipmaps son versiones de baja resolución de una textura que se intercambian cuando una superficie está lejos de la cámara. Reducen en gran medida la cantidad de cambios de tamaño de textura necesarios, mejorando tanto el rendimiento como la calidad de la imagen. Se requieren mips para que la textura LOD funcione.

Las siguientes imágenes demuestran los diversos filtros mipmap disponibles en VTFEdit:
Opciones de Mapa Normal
Estas opciones (mal etiquetadas) le permiten generar automáticamente un bump map a partir de su imagen de entrada. Querrá hacer esto correctamente con un editor de imágenes para el material que envía, pero la opción automática está ahí si desea resultados rápidos o una base desde la que trabajar.
Configurando y Guardando
Cuando presiona Aceptar, el archivo de entrada se convierte (puede haber una pausa bastante larga para imágenes grandes) y aparece el VTF de salida. Ahora todo lo que queda es configurar la textura con las opciones en la lista de casillas de verificación en el lado izquierdo de la pantalla. Consulte Valve Texture Format#Image_flags para ver las descripciones de cada uno.
Finalmente, guarde el archivo en algún lugar dentro de la carpeta \materials
de su juego o mod.
Creando un Material
Source no accede a las texturas directamente. Todo pasa por un material .
Los materiales son archivos de secuencias de comandos que se pueden crear en cualquier editor de texto, pero se recomienda que utilice Notepad++ junto con las reglas de resaltado de sintaxis de syntax highlighting rules . Para que su material sea detectado, debe guardarlo en la carpeta \materials
de su juego o mod con la extensión .vmt.


Sintaxis
Un archivo de material se ve así:
<shader > { <parámetro> <valor> ... }
LightmappedGeneric { $basetexture coast\shingle_01 $surfaceprop gravel }
Hay muchos shader s para elegir, pero la mayoría de los materiales usarán LightmappedGeneric (brush es) o VertexLitGeneric (model s) . El tercer shader más común es UnlitGeneric, que se usa para materiales UI y la ocasionalmente texture tools .
Parámetros
- Para obtener una lista de todos los parámetros de shaders documentados, consulte Category:List of Shader Parameters .
Con un shader elegido, están los parámetros (también llamados comandos). Hay cientos de opciones sobre qué poner en un material, por lo que este artículo solo cubrirá las más comunes, que son aceptadas por más o menos todos los shaders. Ellos son:


mat_reloadallmaterials
, no se recomienda usarlo, ya que pueden aparecer varios artefactos. También se presenta mat_reloadtextures, pero parece tener muchos errores.
Por ejemplo:
mat_reloadmaterial combine_barricade_short01arecargará cada material en el sistema de archivos llamado combine_barricade_short01a, incluido todo el contenido personalizado. Por ejemplo: tanto materials/models/props_combine/combine_barricade_short01a.vmt como materials/models/props_metal_barricade/combine_barricade_short01a.vmt se volverán a cargar. Esto puede parecer muy útil al escribir proxies.