Antes de que empezemos a crear nuestro primer addon deberiamos de tener todos los programas listos. Debemos crear la carpeta del addon y dentro de ella deberia de estar los archivos de texturas. tambien necesitaremos un archivo con la configuracion (config.cpp) que mas adelante veremos. El programa para crear PBO tambien necesitaremos.
Aqui esta todo lo que necesitas:
- OFP por supuesto instalado, O2 y Bulldozer instalado.
- Basicos conocimientos sobre la interfaz de O2.
- Descargar las texturas y el config.cpp Lección 1
- TexView que lo instalaste junto con O2 y Bulldozer.
Todas las texturas estan en formato .pac Los formatos .pac y .paa son estandar y son usados por ArmA. La imaen originalmente venia en :jpg y tuve que usar TexView para convertirla a .pac Ahora no tienes que preocuparte en convertir las texturas ya que vienen por defecto en este tutorial en formato .pac
- Ahora ve a la unidad virtual que se instalo (tendria que ser P:\ u otra) y crea una carpeta con el nombre de "Container" (sin las comillas), pone las texturas y el config.cpp dentro de esa carpeta.
Cuando estes listo con eso estaras listo para empezar a modelar en O2.
Creando la estructura.
Ahora abre O2 y empezaremos a crear el container. Realmente esto es simple. Si has mirado las texturas (Necesitas TexView para poder mirarlas ya que estan en formato .pac) te daras cuenta como se veria la estructura del container. Aqui esta lo que tienes que hacer.
- Empieza con un nuevo archivo en blanco.
- Has click sobre la ventana frontal (dice front en la ventana).
- Presiona F7 (o anda al menu "Create" > "Box") y una ventana de dialogo tendria que aparecer.
- Setea el tamaño en X a 8; el tamaño en Z & Y a 4. Click en OK.
Ahora tienes el cuerpo basico del container. Pero te daras cuenta que vemos un lado del container en la vista frontal siendo que por logica deberiamos de ver la cara frontal de el o la trasera (para hacer el texturizado mas logico). Bueno, vamos a rotar el container.
- Asegurate de que este seleccionado (deberia de estarlo si creaste la estructura, si no presiona F4 y dibuja un cuadrado alrededor de toda la estructura para seleccionarla (o presiona CTRL + A)).
Ve a "Points" > "Transform 3d" > "Rotate". Una ventana aparecera, digita 90 para el eje Y y presiona OK.
Ok, ahora ve en la vista 3d. mira en las cuadriculas, te daras cuenta que el container esta al centro de la ventana. Tambien la mitad del container esta debajo del nivel. Esto esta mal, porque en un objeto simple como este ArmA usa el nivel de la cuadricula como el nivel de la tierra. Entonces, si no queremos que neustro container este enterrado en la tierra tendremos que moverlos hacia arriba.
- Ve a la vista frontal de nuevo, asegurate que toda la estructura este seleccionada nuevamente y que la vista este activa con lineas en rojo.
- Antes de que lo movamos deberiamos de asegurarlo en el eje "Y" (con esto solo permitimos el movimiento de arriba hacia abajo) Presiona "Y" una vez para hacerlo.
- Ahora has click con el boton derecho y mantienelo presionado y mueve hacia arriba el container. Suelta el boton derecho cuando la parte inferior del container este en la linea roja oscura (indicando el nivel del piso). Esto no tiene que ser exactamente al nivel de la tierra, pero puedes acercarlo para tener una mejor vision con el boton "+" del teclado numerico.
Nota : Si no puedes ver algunos vertices en la vista 3d, intenta de activar "Facing Culling" OFF desde el menu "view" (o presiona la tecla "F").
Bueno, el cuerpo basico esta hecho, ahora veremos algo llamado Geometria "Geometry LOD (Nivel de detalle).
Geometria de Nivel de detalle (Geometry LOD)
Entender que significa LOD (Level of detail) es algo dificil, bueno, no iremos en detalles acerca de cada descripcion para cada tipo. Solo hablare de 1 LOD, la geometria LOD. Basicamente LOD es una estructura invisible creada por vertices que le dice al motor grafico de ArmA como tiene que trabajar con el addon. Como probablemente sabes un container es solo una caja grande. Pero el motor del juego no sabe que es y tenemos que decirle qque es. Y eso es el significado de la geometria LOD. Sin esa cosa soldados y tanques pasarian por encima del container. La colision de deteccion no es posible sin eso. Bueno, vamos a hacer eso ahora. Primero fijate que "View background LOD" y "View bgrnd LOD in 3d preview" debajo de "File > Options" este marcado.
Encuentra la ventana "LOD" (usualmente en la parte superior derecha con solo un item llamado "0.000". Si no puedes encontrarlo , presiona ALT + L) y haz click derecho. Selecciona "New" y una nueva entrada en la ventana LOD aparecera (llamada "1.0000").
Con la nueva entrada seleccionada, click derecho de nuevo y en "Propierties". Encuentra "Geometry" y hazle click.
Ahora deverias de ver que nuestro container se volvio amarillo. Si haces doble click sobre el LOD "0.0000" deberias de ver que volvio a la normalidad, eso es porque nuestro container no esta en la geometria LOD "0.0000". Pero si activamos "View background LOD" y "View bgrnd LOD in 3d view" debajo de "File > Options" un fantasma de nuestro container aparecera en nuestro nuevo LOD, de Geometry LOD. Esto es util porque necesitamos saber exactamente la estructura original del container durante los siguientes pasos. Ahora doble click en "Geometry" LOD y continuamos. Vamos a crear otra estructura del container (sera de alrededor del 95% del tamaño original) que pueda detectar la deteccion de colision en ArmA. La razon de porque vamos a crear otra estructura del container para esta Geometria LOD es que es invisible y no puede ser texturisada. - En la vista frontal, presiona F7 y una ventana de dialogo aparecera. Para el eje X le das 7.9, al Y 3.9 y a Z tambien 3.9. - Ahora sigue el paso anterior donde rotabamos el container y lo movimos hacia arriba. El nuevo container deberia de quedar dentro de el otro. Es importante que no se rompa el original.
Ahora ArmA sabe com trabajar con la deteccion de colision. Pero no puede estar seguro que tan pesado es el container. Si es de 1000 Kg o solo de 1/8 kg . y es mas pesada la parte trasera que el frente?. Ahora coloquemosle algo de peso a nuestro container
- Encuentra la aplicacion de masa, si no puedes verla, presiona ALT + M y deberia de aparecer en el panel de vistas. - Todavia en "Geometry" LOD, presiona CTRL + A para seleccionar toda la estructura y el campo para ingresar el peso sera visible. - Anota "200" kg y presiona "apply" , unas pequeñas cajitas grises apareceran en los vertices de la estructura.
Como probablemente has adivinado, las cajas grises indican que tan pesado es un vertice. Dado que el peso de la caja es balanceado, todas la cajas deberian de ser del mismo tamaño. Para dar un determinado peso a un vertice , presiona F4 (modo solo seleccionar vertices) selecciona el vertice y entra su peso. Pero de eso no es este tutorial. Tambien tenemos que guardar la seleccion para que este LOD funcione (no se por que, pero si no hacemos esto, la Geometry LOD no funcionara) Haz esto : - Presiona CTRL + A para seleccionar la Geometry LOD. - Encuentra la ventana de seleccion de nombres debajo de la ventana menu. Click derecho del raton y selecciona "New". Tu seleccion sera guardada. Ponele el nombre de "Component01"
Ahora cada vez que hagas click sobre "Component01" en la ventana de seleccion, la Geometry LOD deberia de estar seleccionada. Asegurate que cada LOD tenga su propia seleccion guardada. Por tanto "Component01" solo estara disponible cuando estes en "Geometry" en la ventana de los LOD.
Ahora el container esta casi terminado, pero si lo viste en el visor externo (Bulldozer) el container se ve muy feo, pero no te preocupes, en el siguiente paso le colocaremos unas texturas mas bonitas.
Ahora vamos a hacer que nuestro container sea mas bonito. En tu carpeta del container hay 2 texturas, red_side.pac y red_door.pac. Nuestro objetivo es colocar la textura red_door en el frente y la parte trasera del container, y red_side en las partes de los lados, arriba y abajo.
red_door.pac red_side.pac
Trabajaremos con una textura a la vez. Empezemos con la textura red_door. - Doble click sobre el LOD 0.000 y presiona F4 (modo seleccion de vertices). - En la vista superior, dibuja una caja sobre el container (ver foto). La cara del frente estaria seleccionada ahora.
- En la vista frontal (Nota:Para hacer una vista "activa", click derecho del raton con ALT presionado). Ahora aqui hay un buen consejo, mira en la vista frontal y vas a ver que los 4 vertices estan seleccionados. Ahora, tu sabes que la cara esta seleccionada, pero como sabes si es la cara frontal o la trasera?. Estas mirando la cara que tienes seleccionada? Para estar seguro de esto, activa "Solid Fill Faces" en el menu "view". Si la cara esta de color rojo sabras que estas con la cara correcta. Si no, estas seleccionando la cara opuesta. Usa este consejo para estar seguro que estas en la vista correspondiente. Nota : Tengo "Solid Fill Faces" activado en la siguiente imagen).
- Presiona la tecla A para entrar al modo textura. - Ahora click derecho el raton y selecciona "load texture". Selecciona "red_door.pac" desde tu carpeta del proyecto container y presiona "OK".
- Dibuja una caja de alrededor el mismo tamaño de la cara seleccionada. Acerca con el boton "+" del teclado numerico para tener una mejor vision. No es el fin del mundo si no puedes hacer que el tamaño sea el exacto. Si presionas el click izquierdo del raton despues de dibujarlo, deberias de estar listo. Si la dibujaste y la quieres cambiar de posicion, usa las teclas "arriba, abajo, izquierda y derecha" del teclado. Usa las mismas teclas mientras mantienes apretado "Shift" para cambiar el tamaño.
- Cuando estes feliz, presiona "B" para dejar la textura en la cara, presiona F2 para retornar al modo de vertices nuevamente. Si haz activado "Solid Fill Faces" en el menu "view" desactivalo para ver la textura. Si lo ves en bulldozer, la textura tendria que estar en su lugar (si no lo logra tendra que hacerlo nuevamente).
Nota : Si cuando tratas de texturizar te dice "Null" entonces tendras que hacer lo siguiente para arreglarlo: - Baja este archivo que contiene unas DLL. O2PE_files1.3.rar - Copialas y pegalas en tu unidad virtual (P:\), si ya hay otras entoncces sobre-escribelas. - Modifica la direccion de las DLL en O2, anda a File > Options y en "DLL Folders" cambiala a tu unidad virtual (P:\).
Ahora tienes que hacer la misma cosa con la parte de atras. La textura "red_door.pac" se aplica aqui tambien. esto hay que hacer. - Asegurate de que la vista frontal este activa, ahora cambiaremos a la vista trasera, ve al menu "view" y selecciona "back". Recuerda lo que hable acerca de mirar la cara y "Solid Fill Faces". Para texturizar la parte trasera tenemos que cambiar la camara hacia atras. - En la vista superior, dibuja una caja en la parte superior del container. La cara posterior estaria seleccionada ahora.
- Sigue los mismo pasos de arriba para texturizar la cara. Revisa en bulldozer y asegurate que la cara se vea bien. Ahora, si todo funciono tendras las texturas de las puertas listas. Para los restantes 4 lados, superior, inferior, izquierda y derecha.Si terminaste de texturizar las puertas, deberias ser capaz de texturizar los lados por ti solo. Solo recuerda cargar la textura "red_side.pac" en lugar de la puerta. Selecciona un lado a la vez y texturizalo. Probablemente necesitaras cambiar de vista solo este seguro que estas viendo la cara correcta y que "Solid Fill Faces" este activado. Aqui les dejo unas imagenes del proceso:
Eventualmente, el container tiene que verse como este en el visor externo:
Una cosa mas, tenemos que estar seguro que O2 tiene acceso a las texturas. Si estan malas su addon quedara mal texturizado en el juego aunque se vean bien en bulldozer. La mayoria de las texturas de ArmA estan en "data.pbo". Pero la mayoria de los addons no oficiales tienen sus propias texturas (como el de nosotros). Para estar seguros que la direccion de las texturas estan en la carpeta del container y no en otro lado, haremos lo siguiente: - Encuentra la ventana de las librerias de texturas (presiona ALT +T si no la encuentras). Deberia estar como esta imagen.
- Si ambas texturas se leen "container\nombredelatextura.pac" (como en la imagen de arriba) entonces todo esta bien. pero si la direccion no es la correcta, como "data\" en vez de "container\", debes seguir los siguientes pasos - Doble click mientras mantienes presionado "CTRL" en el primer nombre de la textura. Todas las caras que esten usando esta textura se seleccionaran. - Ahora haz que una ventana de active (cualquiera) presionando ALT + Click derecho del raton. - Presiona "E" para que se abra esta ventana.
- Si no esta igual que en la imagen, cambiala, cuando este todo igual presiona "OK". - Recuerda hacer lo mismo con las otras texturas si se necesita.
El Archivo de Configuracion.
Abre tu archivo de configuracion (ese que descargaste junto con las texturas y que deberia de estar en la carpeta container). Debe verse como esto.
No voy a ir a los detalles del config.cpp, Hay otro tutorial por ahy que describe los diferentes elementos del archivo de configuracion. Si conoces un poco de programacion orientada a objetos (como C++ o Java), te daras cuenta que nuestro container a sido clasificado como un objeto estatico. Pero aqui estan las cosas mas importantes que tenemos que conocer: - model = "\container\container" Le dice al OFP donde esta ubicado el archivo del modelo 3d del container. Si no puede encontrar el modelo en data3d.pbo (donde se encuentran los modelos 3d oficiales), este empieza a buscarlo en la carpeta del addon. "\container\container" eso le dice al ArmA que el modelo 3d se llama "container" y se encuentra en el PBO container (la cual es el nombre de la carpeta). - DisplayName = "Mi Querido Container" (My lovely crate). Es el nombre del objeto que sera llamado cuando lo empieses a buscar en Empty > Objects en el editor de OFP. Puedes cambiar el nombre por el que tu desees (pero asegurate que no sea usado por ningun otro addon).
Ya es tiempo de probar nuestro addon en el juego. Solo nos quedan unos pocos pasos. - Mira en la carpeta de tu addon. Esta deberia de tener los archivos, container.p3d, las 2 texturas y el archivo de configuracion.
- Now run the PBO Tool you downloaded at the beginning of the tutorial.
- Select "Compress", select your folder and hit OK. Then type crate.pbo at the save dialog that pops up and save it in your OFP addon folder.
NOTE: For the PBO tool to save the file, you MUST enter the .pbo extension after your filename in the save dialog!!
- Copia el addon a la carpeta Addons donde esta instalado OFP. - Ahora entra al juego y vee al editor de misiones. Coloca un soldado para el jugador y luego vee a Empty (Vacio) y despues a Objects y encontraras el container. Si no te da ningun error entonces sientete orgulloso, has hecho tu primer addon para OFP.
Érase una vez una era oscura en la que los jugadores eran conducidos como ganado por rígidos caminos de juego. Bohemia Interactive fue la revolucionaria desarrolladora que los liberó.
No puede abrir nuevos temas en este Foro No puede responder a temas en este Foro No puede editar sus mensajes en este Foro No puede borrar sus mensajes en este Foro