+
+
+
\ No newline at end of file
diff --git a/.vitepress/theme/components/CardGrid.vue b/.vitepress/theme/components/CardGrid.vue
new file mode 100644
index 0000000..cdae0c4
--- /dev/null
+++ b/.vitepress/theme/components/CardGrid.vue
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vitepress/theme/index.js b/.vitepress/theme/index.js
new file mode 100644
index 0000000..792966d
--- /dev/null
+++ b/.vitepress/theme/index.js
@@ -0,0 +1,11 @@
+import DefaultTheme from 'vitepress/theme'
+import CardGrid from './components/CardGrid.vue'
+import Layout from './Layout.vue'
+
+export default {
+ extends: DefaultTheme,
+ Layout,
+ enhanceApp({ app }) {
+ app.component('CardGrid', CardGrid)
+ }
+}
\ No newline at end of file
diff --git a/es/guides/textures-101.md b/es/guides/textures-101.md
index 796cf61..da24ecc 100644
--- a/es/guides/textures-101.md
+++ b/es/guides/textures-101.md
@@ -125,7 +125,7 @@ Y en su lugar usar secciones [ShaderOverride] para especificar lo que estás bus
11. Ahora, vamos a crear esas texturas y agregarlas a la misma carpeta que el Banner.ini. Ten en cuenta que las 3 texturas tienen `BC7_UNORM` como su tipo, lo que corresponde a `BC7 Linear`.
- Para el banner, le daré un recolor y lo guardaré como `DendroBannerCard.dds` (detalles sobre cómo abrir y guardar archivos dds en el tutorial de [Eliminación del Sombrero de Mona](./mona-hat.md)).
+ Para el banner, le daré un recolor y lo guardaré como `DendroBannerCard.dds` (detalles sobre cómo abrir y guardar archivos dds en el tutorial de [Eliminación del Sombrero de Mona](./tutorials/mona-hat.md)).
diff --git a/es/guides/weapon-banana.md b/es/guides/weapon-banana.md
index 0894216..350ec8f 100644
--- a/es/guides/weapon-banana.md
+++ b/es/guides/weapon-banana.md
@@ -4,7 +4,7 @@
Este es un tutorial para importar modelos de armas personalizadas en Genshin Impact.
-Para este tutorial, asumo que estás familiarizado con los conceptos básicos de usar GIMI (cómo configurarlo/importar/exportar/cargar); si no, por favor lee [Eliminación del Sombrero de Mona](./mona-hat). También asumo conocimientos básicos de Blender – para preguntas sobre conceptos básicos de Blender como cambiar modos, seleccionar vértices y abrir ciertos menús, por favor busca el conocimiento que necesitas en Google/Youtube.
+Para este tutorial, asumo que estás familiarizado con los conceptos básicos de usar GIMI (cómo configurarlo/importar/exportar/cargar); si no, por favor lee [Eliminación del Sombrero de Mona](./tutorials/mona-hat). También asumo conocimientos básicos de Blender – para preguntas sobre conceptos básicos de Blender como cambiar modos, seleccionar vértices y abrir ciertos menús, por favor busca el conocimiento que necesitas en Google/Youtube.
Los mods de armas son más complicados que las ediciones básicas de mallas, pero menos complicados que importar personajes personalizados. ~90% de los pasos siguen siendo los mismos para personajes personalizados, pero los personajes implican estructuras de grupos de vértices/huesos mucho más complicadas que las armas.
diff --git a/es/guides/xxmi_tools.md b/es/guides/xxmi_tools.md
index c6a2d67..8bd33a3 100644
--- a/es/guides/xxmi_tools.md
+++ b/es/guides/xxmi_tools.md
@@ -35,7 +35,7 @@ This guide is currently under construction. Information is lacking but more will
The plugin is not designed to directly aid on the process of replacing, modifying or creating a mod. Simply on the import export process.
Check the other guides in the site to see examples of how to create and prepare your models for export.
-If you are a beginner, I recommend you starting at [Mona Hat](/guides/mona-hat.md) or [Weapon Banana](/guides/weapon-banana.md) guides.
+If you are a beginner, I recommend you starting at [Mona Hat](/guides/tutorials/mona-hat.md) or [Weapon Banana](/guides/tutorials/weapon-banana.md) guides.
## Exporting a mod
diff --git a/guides/basics/basics.md b/guides/basics/basics.md
new file mode 100644
index 0000000..7cae87a
--- /dev/null
+++ b/guides/basics/basics.md
@@ -0,0 +1,10 @@
+# Basics
+
+The Basics! Modding 101, Hunting 101, Textures 101, Shaders 101, 101 galore.
+
+## Sections
+
+- [Modding 101](./modding-101.md)
+- [Hunting & Dumping 101](./hunting.md)
+- [Textures 101](./textures-101.md)
+- [Shaders 101](./shaders-101.md)
\ No newline at end of file
diff --git a/guides/basics/hunting.md b/guides/basics/hunting.md
new file mode 100644
index 0000000..bb990e4
--- /dev/null
+++ b/guides/basics/hunting.md
@@ -0,0 +1,202 @@
+# 3DMigoto Hunting & Dumping Tutorial
+
+> Writen by: Satan1c
+
+This tutorial will go through the process of hunting & dumping.
+
+Learning to hunt for hashes and dump textures or shaders is useful if you want to create your own mod with resources that weren't published or to fix an outdated mod by yourself.
+
+This tutorial will provide a simple description of buffers/shaders and a walkthrough of character hunting & dumping, i.e. finding the correct buffer hashes for a character and dumping the resources for them.
+
+## Prerequisites
+
+You will need the latest versions of [XXMI launcher](getting-started.md) and [gui_collect](https://github.com/Petrascyll/gui_collect) installed.
+
+While hunting, it is recommended to disable all mods. For that, you have to press `F6` in game; however, some mods may remain enabled.
+In most cases these will be shader mods, so it is often better to rename the `Mods` folder or add `DISABLED` to it (or whichever is the highest folder with mods that would interfere with the dumping process).
+
+
+
+## Launcher settings
+
+By default, the ability to enter hunting mode may not be enabled. To enable hunting with XXMI, open the settings from the cog wheel in the top right of the UI, then go to the appropiate \*\*MI tab for the game you are using and check the "Enable Hunting" setting.
+If you need to modify shaders and not just get an updated hash for them, be sure to also enable "Dump Shaders".
+Please note that this needs to be done *before* you launch the game with XXMI; if the game is already running and these settings were not enabled, you can either quit the game and enable them then relaunch, or you will need to manually edit the corresponding values in `d3dx.ini`.
+
+
+
+## Controls
+
+After the game has been started, if this your first time launching the game with XXMI or you never pressed `F10` after the first time, you will see a popup with usage instructions. If you don't see it, press `F12` to bring it up.
+In those instructions it tells you how to view instructions specific to hunting with the hotkey `Ctrl` + `F12`. The hunting-specific instructions contain the default keyboard controls for hunting you will need to use.
+
+All of these controls can be changed in `d3dx.ini` under the `[Hunting]` section with valid [virtual key codes](https://learn.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes). This is useful if you are not using a keyboard with a numpad and have no access to one.
+
+
+
+## Performing the Actions
+
+### Getting hashes
+
+The first thing you need to do is enter hunting mode. By default this is done by pressing `numpad 0`. You should see green text appear on the top and bottom of the screen once you have entered hunting mode.
+At the top you will see a section that contains counters for the things we can hunt for. These are:
+- `VS` - Vertex Shader
+- `PS` - Pixel Shader
+- `IB` - Index Buffer
+- `VB` - Vertex Buffer
+- `CS` - Compute Shader
+
+The numbers after them display `current`/`total count`, that is, the index of the current buffer/shader out of the total number for the scene.
+The bottom of the screen should always display "Stereo disabled".
+
+The next section you will see comes up only after you have moved forward or backward through one of the above options. It displays the hash that is currently selected for each buffer or shader which can be "marked". If the setting "Dump Shaders" is enabled then it will also save the decompiled/disassembled shader to the `ShaderFixes` folder; "marking" a hash by default only copies the hash value to your system clipboard.
+
+
+
+---
+
+### Dumping
+
+Now that we are set up to hunt for the hashes we need, we can move on to dumping the resources for them.
+To get an extracted dump -- ready to import into blender -- start gui_collect with launch.bat.
+(You should already have this installed and know how to launch it from its own instructions).
+
+After the program has started, you will be met with the screen shown in the image just below. The numbered parts of this image are as follows:
+
+1. A button that opens a file chooser. It is used to tell gui_collect the path of the Frame Analysis dumped from the game.
+2. This is were you would enter the IB hash copied to your clipboard from hunting.
+3. Name of the thing the IB hash is responsible for.
+ - Use only ASCII letters and numbers; don't use spaces or non-ASCII symbols.
+ - The name is just for your and other modders' reference and does not affect anything for the dumping and extraction process, but it **should be unique**.
+ - If the Index Buffer is responsible for the whole object or the majority of it, then it may be blank; in GI there is usually an IB for the body that may be blank.
+4. Name of the extraction, usually whatever the whole object is or the character name.
+ - As before, use only ASCII letters and numbers; no spaces or non-ASCII symbols.
+ - Under the name, you can select where to create the extraction folder.
+5. Toggle button that controls whether model data *(ib, buf)* should be analyzed in the dump folder.
+6. Toggle button that controls whether model hashes should be included in the resulting `hash.json` file.
+7. Toggle button that controls whether textures should be analyzed in the dump folder.
+8. Toggle button that controls whether texture hashes should be included in the resulting `hash.json` file.
+9. A button that lets you choose from the history of frame dumps that you have done before.
+ - Tries to automatically select this value from the chosen MI folder and set it to the last frame dump done.
+10. Extract button. It opens a dialog to select assets to be included in the extracted dump from the selected frame-dump.
+
+
+
+---
+
+In order to properly show the dumping process, we will be dumping Qingyi's model as an example.
+
+::: warning
+If you're planning to use the dumped materials to create a mod, it is advised that you do not dump faces, or don't include their hashes/buffers in the resulting dump, as currently face modding is not fully supported. Changing the face model will usually result in it being broken in game (typically by lacking expressions); thus, only the face texture can be modded without any issue at the moment.
+:::
+
+When you're hunting for a hash, the object that it belongs to will disappear. This is the default marking method. If you wish to use an alternative method, you can change `marking_mode` in `d3dx.ini`. It contains comments on what the available options are and what they do.
+
+
+
+Through the hunting methods discussed earlier, we were able to get the following IB hashes, and paste them into gui_collect:
+
+- `3cacba0a` - Hair
+- `195857d8` - Body
+- `8e8426df` - Bottle
+
+Once the hashes are copied and pasted into gui_collect, we move on to the next step of performing the dump. To do a frame dump, you need to press `F8` while in hunting mode (i.e. while the green text is on screen). Again, please make sure that no mods which affect your target are enabled while doing this. After you press `F8`, the game will freeze to create the frame dump. Once it's done, select the resulting folder in gui_collect and press extract.
+
+
+
+---
+
+Once the Extract dialog comes up, you can select which textures, and texture hashes, will be contained in the extracted dump. There will typically be different formats in different games and between different objects in the same game.
+
+To select the type for each found texture, left click on it and pick from the available list. You need to do this for all of the objects and then click "Done".
+
+A small guide to identifying some types of textures:
+
+- Diffuse
+ - A fully colored texture.
+- Normal
+ - Gradient of only a couple colors; noticeable volume/bump effect.
+- Light
+ - A simple, colored texture.
+- Material
+ - A simple, colored texture, with some additional details compared to the LightMap.
+
+
+
+---
+
+### Result
+
+The final result once you are done assigning the types to the textures will be another folder with the selected textures and compiled ib/vb0 files ready for import into blender.
+
+
+
+## Targeted dump
+
+::: warning
+The following section is completely optional
+:::
+
+Targeted dumping is a technique to dump only targeted objects instead of the whole scene which allows for a much smaller dump folder size; it will go from gigabytes big to just hundreds of megabytes.
+
+### Targeted dump with gui_collect
+
+If you don't know how to do regular dumps with `gui_collect`, read [that tutorial](../guides/hunting.md) first.
+
+Enable targeted dumping in gui_collect by going to the settings cog wheel in the bottom left corner and selecting the "Targeted Frame Analysis (Advanced)" checkbox.
+
+
+
+After enabling that, you will see the following new options above the extract button on the normal page.
+
+
+
+1. This field is the location of the ini that will be used for the generated targeting code.
+ - it defaults to the one you can find at `gui_collect/include/auto_generated.ini`
+ - the file iteself can be completely blank inside
+2. The button to generate the above ini and fill with the targeting code.
+3. A button to completely clear the generated file (if you are reusing the same file for multiple targeted dumps).
+
+---
+
+To make sure this new ini is loaded by the \*\*MI of the game, you may do one of three things:
+
+1. Add an `include` call in `d3dx.ini` for the generated ini using a path relative to the location of `d3dx.ini`
+ - this is not recommended since it will currently be removed every time the game's \*\*MI is updated by XXMI
+2. Create an `ini` with overrides for `d3dx.ini`
+ - below is an example of what you would put in an ini for that using a relative path
+ - with override file located at: `Mods/Etc/d3dx overrides.ini`
+ - with generated target-dump ini located at: `XXMI Launcher/gui_collect-main/include/auto_generated.ini`
+3. Place a copy of the generated ini somewhere within your `Mods` folder if you did not disable the whole thing
+ - you may also set the path of the targeted frame analysis in gui_collect to a file already in this location
+
+```ini
+[Include]
+include = ..\..\..\gui_collect-main\include\auto_generated.ini
+```
+
+Before you generate the ini however, be sure to fill the IB hash sections. Afterwards, once the generated ini file is added somewhere the \*\*MI will need to load it; press `F10` to update the configs.
+
+::: info
+If you find yourself having to press `F10` a lot while dumping or making a mod, you may encounter a pretty long delay each time. To speed up the load time, if the slowness is due to many shaders being loaded, you can enable the shader cache in `d3dx.ini`.
+:::
+
+
+
+Now you should see a panel with targeted objects that will be included in the extracted dump.
+
+
+
+Press F8, and you're done. As an example of the size reduction, a regular dump on one person's system was 3.4GB, but when doing the targeted dump it became 840MB.
diff --git a/guides/modding-101.md b/guides/basics/modding-101.md
similarity index 83%
rename from guides/modding-101.md
rename to guides/basics/modding-101.md
index 4219173..f40e134 100644
--- a/guides/modding-101.md
+++ b/guides/basics/modding-101.md
@@ -6,6 +6,9 @@ In order to start making mods you will need the following:
- An [XXMI Launcher](/guides/getting-started.md) Install with developer mode enabled. This is required to test your mods in the game
- [XXMI Tools](/guides/xxmi_tools.md#installation) plugin for Blender. Plugin to export models for reinjection
+**Please note:**
+For Wuthering Waves modding, the following tool must be installed for blender:
+- [WWMI Tools](https://github.com/SpectrumQT/WWMI-TOOLS) plugin for Blender. Plugin to export models for reinjection
## Getting Started with Blender
Blender is quite a powerful and complete tool for 3D modeling, animations, rendering and even video edition. For this reason, it can be a bit overwhelming at first. Before diving into it and start pressing random buttons, it is recommended to go through some basic tutorials to get familiar with the interface and some keybinds.
@@ -16,8 +19,8 @@ The channel [Blender Guru](https://www.youtube.com/@blenderguru) on YouTube has
Here is a non-exhaustive list of easy tutorials to get started that can introduce you to modding concepts
-- [Mona Hat](/guides/mona-hat.md) - How to remove parts of a model
-- [Weapon Banana](/guides/weapon-banana.md) - A basic tutorial on weapon modding
+- [Mona Hat](/guides/tutorials/mona-hat.md) - How to remove parts of a model
+- [Weapon Banana](/guides/tutorials/weapon-banana.md) - A basic tutorial on weapon modding
- How to make GI Mods:
diff --git a/guides/shaders-101.md b/guides/basics/shaders-101.md
similarity index 100%
rename from guides/shaders-101.md
rename to guides/basics/shaders-101.md
diff --git a/guides/textures-101.md b/guides/basics/textures-101.md
similarity index 99%
rename from guides/textures-101.md
rename to guides/basics/textures-101.md
index 60deab7..f5048b9 100644
--- a/guides/textures-101.md
+++ b/guides/basics/textures-101.md
@@ -125,7 +125,7 @@ And instead using [ShaderOverride] sections to specify what you are looking for
11. Now, lets create those textures and add them to the same folder as the Banner.ini. Note that all 3 textures have `BC7_UNORM` as their type, which corresponds to `BC7 Linear`
- For the banner, I’ll give it a recolor and save it as `DendroBannerCard.dds` (details on how to open and save dds files in the [Mona Hat Removal](./mona-hat.md) tutorial)
+ For the banner, I’ll give it a recolor and save it as `DendroBannerCard.dds` (details on how to open and save dds files in the [Mona Hat Removal](./tutorials/mona-hat.md) tutorial)
diff --git a/guides/blender/blender-baking.md b/guides/blender/blender-baking.md
new file mode 100644
index 0000000..a07c52e
--- /dev/null
+++ b/guides/blender/blender-baking.md
@@ -0,0 +1,75 @@
+# Blender Materials and Baking
+
+This is an introduction to the blender UI. Please note that for more detailed information, you will need to look at the documentation or watch guides.
+
+## Table of Contents
+
+[[toc]]
+
+## Documentation and Note
+
+This page covers the basics of materials and baking.
+
+For materials, you can find the documentation here:
+https://docs.blender.org/manual/en/latest/render/materials/index.html
+
+For Baking, you can find the documentation here:
+https://docs.blender.org/manual/en/latest/render/cycles/baking.html
+
+For far more accurate GI/HSR/WW/ZZZ materials than those shown in the guides here, please take a look at the [Omatsuri Discord](https://discord.com/invite/omatsuri-894925535870865498).
+
+## Material Introduction
+
+In Blender, materials allow the user to use shaders, combined with textures, to preview a model. This can be useful for modding, as it allows the modder to preview their textures.
+
+This is a fairly basic blender material:
+
+
+
+Any node in blender, as well as any function, can be accessed by using the `F3` key and typing it in.
+
+### The Principled BSDF Node
+
+This node is the basic shader that will always be created with a default material in blender. It is vital for previews, and will be used in virtually all examples.
+
+Below are the important settings to remember in a PPrincipled BSDF:
+- `Base Color`: The base color of the shader. This is where a diffuse texture would be connected.
+- `Metallic`: How metallic the material is. For lightmaps, the Metallic channel would be connected here.
+- `Roughness`: How rough, or glossy, the material is. For lightmaps, the gloss map would be connected here.
+- `Normal`: The normal value of the material. Normal maps should be connected here.
+
+In most cases for a proper material, the shader should be the last node connected to the `Material Output` node, as it is the output node that Blender displays in the viewport.
+
+### Image Node and Image layers
+
+The image node in this image are the `Shadow Layer` and `barghestsword2.png` nodes, with an orange header.
+
+The only non-standard part of the image is the `Mix` node. Blender, by default, does not have layers for images like photoshop or other image editing softwares This can be overcome with plugins or nodes, as seen in this image. Below is a step by step guide on how to layer images:
+- Create the base image.
+- Create a blank (white (A), or empty (B)) image.
+- Press F3 and enter 'Multiply'. **NOTE:** Multiply acts like multiply in photoshop. For other layer blends, choose the alternative you want.
+- Select `Mix Color - Multiply`. This will create a new node.
+- Depending on what you do in step 2, do the following:
+ - A: Connect the base image into the the A input, and the top layer into the B input.
+ - B: Do A, then connect the Alpha of the top layer to the Factor.
+- Connect the result into the next node. If you want more layers, connect it into the A of the next `Mix` node, otherwise connect it into the shader node's base color.
+
+If you want to bring all the layers together, you can **bake** the texture. View the Baking section below.
+
+## Baking
+
+To bake a texture, do as follows:
+- Set up your scene, including the lighting, in Blender.
+- In `Render Properties`, ensure the Cycles Render Engine is selected.
+ - To ensure a quick bake, it is strongly recommended to set your device to cycles.
+- In `Sampling` > `Render`, ensure that Denoise is disabled and that max samples is set somewhere between 256-512 samples. The default 4096 is far more than necessary.
+- In `Bake`, ensure the `Bake Type` setting is set to 'Combined' and the `View From` setting is set to 'Above Surface', and that all lighting influences are on.
+- Make sure all nodes are properly connected.
+ - **NOTE**: To bake the layers of a texture, if you do not want the material's shading to affect the textures, simply connect the output of the last `Mix` node to the Material Output.
+- Create a new `Image` node and create an image (Preferably the same size as the base texture).
+- Select the image node (it should be highlighted in white).
+- Bake!
+- Save the texture.
+
+Here is an example of a material that is about to be baked. Please note that the shader is also being baked into the texture here:
+
\ No newline at end of file
diff --git a/guides/blender-tips.md b/guides/blender/blender-edit.md
similarity index 98%
rename from guides/blender-tips.md
rename to guides/blender/blender-edit.md
index 4d2a93f..5790023 100644
--- a/guides/blender-tips.md
+++ b/guides/blender/blender-edit.md
@@ -8,7 +8,16 @@ Many of these tips are only applicable in a specific mode \- either Object Mode,
![][image1]
-## Cleaning up loose vertices \- Edit Mode
+## Table of Contents
+
+[[toc]]
+
+## Documentation
+
+For more advanced documentation on edit mode, please see:
+https://docs.blender.org/manual/en/latest/modeling/index.html
+
+## Cleaning up loose vertices
Do this right after importing your model, for each element in the sidebar.
@@ -18,7 +27,7 @@ You can see a bunch of messy dots that don’t belong to the part you have selec
**![][image2]**
-## Convert triangular faces into squares \- Edit Mode
+## Convert triangular faces into squares
**Face Mode » A to select all » Right click » Tris to Quads** will convert the triangulated faces back into squares. Keep in mind that you should also check these options to avoid ruining the UV Mapping
@@ -26,7 +35,7 @@ With this, you will be able to select loops and do other stuff more easily.
![][image3]
-## Separating elements or faces \- Edit Mode
+## Separating elements or faces
There are 3 situations:
@@ -40,13 +49,13 @@ There are 3 situations:
**![][image5]**
-## See both sides of the model \- Any Mode
+## See both sides of the model
This icon here lets you see both sides of the model. Especially useful if you are trying to delete a vertex and you notice that Genshin, due to not having faces linked, has more than one vertex in the same place. And useful too if you want to select things on either side of the model, ofc
**![][image6]**
-## Extend or subtract existing selection \- Edit Mode
+## Extend or subtract existing selection
These icons let you determine if selecting something will replace, add, subtract, etc… to the things you already selected. You can also press Shift to add to an existing selection while in the first mode.
@@ -54,7 +63,7 @@ You can also keep the default and, as yu select more faces, **hold down Shift to
**![][image7]**
-## Merge by distance \- Edit Mode
+## Merge by distance
Select anything you want in edit mode, then hit **M » By Distance** » choose a small value like 0.0001
@@ -64,7 +73,7 @@ You can also choose a different option (like Merge at Center).
**Downsides:** If you merge more things than what you need, it might be troublesome to separate them again. You might also end up ruining the face Normals/shading \- since the reason faces of the same part of a model are separated by default is to allow each subsection to have normals facing a different direction. However, you can somewhat restore that later by adding sharp edges or separating some faces again \- check the shadows section.
-## Select linked faces \- Edit Mode
+## Select linked faces
Ctrl+L (after selecting something in edit mode): Lets you select all linked faces/edges/vertexes.
@@ -72,7 +81,7 @@ You can also choose if you want parts linked by the UVs (share the same area in
![][image8]
-## Select path between 2 faces/edges/vertexes \- Edit Mode
+## Select path between 2 faces/edges/vertexes
**Selecting one vertex/edge/face, holding down Ctrl, then selecting another vertex/edge/face** that is not directly connected but is within the same linked area, will select the whole pathway connecting them.
@@ -80,7 +89,7 @@ If that is not working, there are probably separated faces that are stopping the
![][image9]
-## Select a loop \- Edit Mode
+## Select a loop
**Alt+L \+ select:** Select Edge Loop. This only works if you are working with Quads/squares instead of Triangles.
@@ -88,7 +97,7 @@ If that is not working, there are probably separated faces that are stopping the
![][image10]
-## Select based on UVs \- Edit Mode
+## Select based on UVs
(also useful when doing textures)
@@ -103,9 +112,9 @@ It's **bi-directional, depending if you have these arrows selected** (icon circl
![][image12]
-## Positioning an element \- Object Mode
+## Positioning an element
-If you know how to navigate blender, then you will at least know how to use, in Object Mode, **G to Grab an object, R to rotate it, S to scale it**, and how to do so along only one axis if that’s what you want (for example, GZ will only move an object along the Z axis n the 3D space)
+If you know how to navigate blender, then you will at least know how to use, in Edit Mode and Object Mode, for vertices and objects, **G to Grab an object, R to rotate it, S to scale it**, and how to do so along only one axis if that’s what you want (for example, GZ will only move an object along the Z axis n the 3D space)
You will notice that, especially when you scale and rotate an object, it does not rotate around itself but rather around the center of the 3D space. To **manipulate an object around itself, you right click» Set Origin » Origin to Geometry**.
@@ -113,7 +122,7 @@ Pictures of skirt scaled with default origin VS origin to geometry. In the 1st c
![][image13]
-### Proportional Editing \- Edit Mode
+### Proportional Editing
You can use Proportional Editing and scale the affected area to move/rotate/scale several vertexes at once \- the further away from the center of the area, the less affected things are. The areas affected and unaffected by the transformations are changed gradually / the strength transitions.
@@ -121,23 +130,6 @@ The result has similarities with using Sculpt tools, but some things are easier
![][image14]
-## Mirror modifier \- Any Mode
-
-It’s applied like any modifier \- you go to the modifiers property, choose Mirror, then choose the axis alongside which the mirroring should happen.
-
-What issues can you have doing this?
-
-**Origin and transforms interfering with the modifier:** Modifiers are applied considering the origin and transformations, which means they can interfere with the result if you have tinkered with any of those properties. Solution: go to **object mode** and…
-
-* **Reset origin:** Right click» Set Origin » set the origin back to 3D cursor.
-* **Reset the object transforms:** Ctrl+A » All Transforms (or only the ones you want to reset)
-
-**Incorrect timing for applying Modifier:** Let’s say you wanted to have an object on each side of the axis, mirrored. So you add the modifier first, then place or change the object as you want… and the other side of the axis doesn’t reflect your changes. That’s because you should make the changes first, and apply the Modifier after.
-
-**Incorrect Modifier order:** If you are using multiple modifiers, that matters. Check if playing round with that solves potential issues you are having. Modifiers on top are applied first, those below take the result of the modifier above and are applied to that result.
-
-![][image15]
-
### Brushes beginner-friendly \- Sculpt Mode
**Note:** Don’t forget to turn on mirror if you want the changes you make to be reflected on both sides.
@@ -152,7 +144,7 @@ Due to some faces not being linked (and beginners are prone to merge more than t
![][image17]
-## See and fix backfaces \- Edit Mode
+## See and fix backfaces
(this mostly matters for textures, which I won’t cover here, but can affect other properties so I decided to still talk about it)
@@ -193,8 +185,6 @@ Sometimes, when putting a model together, or mirroring things, you end up accide
[image14]:
-[image15]:
-
[image16]:
[image17]:
diff --git a/guides/blender/blender-modifiers.md b/guides/blender/blender-modifiers.md
new file mode 100644
index 0000000..a369fa4
--- /dev/null
+++ b/guides/blender/blender-modifiers.md
@@ -0,0 +1,77 @@
+# Blender Modifier Tips
+
+These are mostly beginner tips. It’s fairly important that you have a basic notion of how to navigate in blender. This is about Modifiers that are useful for modelling and easy for beginners to use.
+
+## Table of Contents
+
+[[toc]]
+
+## Documentation
+
+For more advanced documentation on these modifiers and other modifiers, please see:
+https://docs.blender.org/manual/en/latest/modeling/modifiers/index.html
+
+## Modifier Settings
+
+These settings are universal to every modifier. Please view the numbers in the image, as each explained setting will be identified by it's number.
+
+
+
+1. `On cage`: In edit mode, vertices will now be displayed with modifiers applied.
+2. `Edit Mode`: The modifier will display in edit mode, however vertices will still remain in place.
+3. `Realtime`: This will disable the modifier in viewport if disabled. This can help with performance.
+4. `Render`: This will disable the modifier in render if disabled. This does not affect modding.
+5. `Apply`: This will apply a modifier. Note that blender, in cases with modifiers that deform the mesh, will not apply a modifier to a mesh with shape keys.
+6. `Duplicate`: Duplicates meshes with shape keys.
+7. & 8. `Move`: This will change the order of Modifiers. This can be important in order to get the correct result. With some modifiers (for example, the mirror modifier should usually go first if clipping is enabled for it to properly function.)
+
+## Mirror Modifier
+
+It’s applied like any modifier \- you go to the modifiers property, choose Mirror, then choose the axis alongside which the mirroring should happen.
+
+What issues can you have doing this?
+
+**Origin and transforms interfering with the modifier:** Modifiers are applied considering the origin and transformations, which means they can interfere with the result if you have tinkered with any of those properties. Solution: go to **object mode** and…
+
+* **Reset origin:** Right click» Set Origin » set the origin back to 3D cursor.
+* **Reset the object transforms:** Ctrl+A » All Transforms (or only the ones you want to reset)
+
+**Incorrect timing for applying Modifier:** Let’s say you wanted to have an object on each side of the axis, mirrored. So you add the modifier first, then place or change the object as you want… and the other side of the axis doesn’t reflect your changes. That’s because you should make the changes first, and apply the Modifier after.
+
+**Incorrect Modifier order:** If you are using multiple modifiers, that matters. Check if playing round with that solves potential issues you are having. Modifiers on top are applied first, those below take the result of the modifier above and are applied to that result.
+
+![][image15]
+
+## Subdivision Surface Modifier
+
+This 'subdivides' a mesh. The settings are as follows:
+- `Subdivision type`: Catmull-Clark will smooth a mesh as it subdivides it. Simple will not do this.
+- `Levels Viewport`: How many times to subdivide a mesh in the viewport. **It is recommended to not go above 2**.
+- `Levels Render`: How many times to subdivide a mesh in render.
+
+For basic usage, the advanced settings do not matter in most cases.
+
+
+
+## Weighted Normal / Smooth by Angle
+
+These modifiers both modify the normals of a mesh.
+
+- Weighted normal will attempt to smooth out the normals of a mesh.
+- Smooth by angle will 'crease' normals depending on the set angle.
+
+## Data transfer
+
+This modifier allows you to transfer data via a modifier instead of the menus, allowing you to mess around with the settings before applying it to a mesh.
+
+To use it, follow these instructions:
+- Select the source object.
+- Set the mix mode (`Replace` is used in most cases)
+- Select the data type to transfer (`Vertex Data` > `Vertex Groups` for weighting and `Face Corner Data` > `Custom Normals` for normals).
+- Select the mapping type (Usually mapping types that use faces are recommended for smoother transferring)
+
+
+
+[image15]:
+
+
diff --git a/guides/blender/blender-ui.md b/guides/blender/blender-ui.md
new file mode 100644
index 0000000..762967d
--- /dev/null
+++ b/guides/blender/blender-ui.md
@@ -0,0 +1,104 @@
+# Blender UI
+
+This is an introduction to the blender UI. Please note that for more detailed information, you will need to look at the documentation or watch guides.
+
+## Table of Contents
+
+[[toc]]
+
+## Documentation
+
+For more advanced documentation on these modifiers and other modifiers, please see:
+https://docs.blender.org/manual/en/latest/interface/index.html
+
+## Videos
+
+For a video on the UI basics for blender, you can watch this:
+https://www.youtube.com/watch?v=8XyIYRW_2xk
+
+**Note:** Blender has a massive UI overhaul in 2.80. Any videos after this date are usually accurate, any videos before this are mainly inaccurate.
+
+## Main view
+
+Please view the IDs in the image to view the explanation of the element below the image. You can click on the image to open it in another page and zoom in.
+
+Since the blender UI is very detailed and has many options, if an explanation goes in-depth on a menu button, it will only go into the necessary options for modding.
+
+[](./img/UI.png)
+
+
+1. `File`: This tab holds several file settings:
+ - `New`: Create new blender projects
+ - `Open`/`Open Recent`: Open existing blend files
+ - `Recover`: Recover autosaves, this is useful if blender crashes
+ - `Append`: Add data from other blend files
+ - `Import`: Import models (XXMI Plugin uses this)
+ - `Export`: Export models
+2. `Edit`: Edit is where you install plugins, set settings, and can undo/redo and view history.
+3. `Render`: Used for rendering, not important in the case of modding.
+4. `Window`: Open new windows. You can also toggle the system console here, useful for debugging and finding errors on export.
+5. `Help`: Opens documentation
+6. `Editor type`: You can change editor here. This button will always show up in the top left corner of a widget. Here are the key editors:
+ - `3d Viewport`: The primary viewport to view models and do 3d things. Should essentially always be open in a widget.
+ - `Image Editor`: Allows the user to view and edit images. Useful for texture painting.
+ - `UV Editor`: Allows the user to view and manage UVs. Vital for UVs
+ - `Shader Editor`: Allows the user to edit materials in a node graph fashion. Useful for baking and allowing the user to preview lightmaps/normal maps.
+ - `Outliner`: Also `23` on the image. Allows the user to structure a scene.
+7. `Mode selector`: Allows the user to change mode. Modes are as follows:
+ - `Object Mode`: Viewing objects and editing at the object level.
+ - `Edit Mode`: Editing objects at the vertex level.
+ - `Sculpt Mode`: Sculpting objects. Usually for more advanced users.
+ - `Vertex Paint`: Painting the vertex color of an object.
+ - `Weight Paint`: Weight painting. Vital for getting an object to move in a mod.
+ - `Texture Paint`: Texture painting on the mesh itself in the 3d viewport.
+8. `View`: Adjust what elements of the UI are visible.
+9. `Select`: Select objects in the 3d viewport.
+10. `Add`: Add objects. In the case of modding, very rarely do things outside of mesh, armature and occasionally curve interest us.
+11. `Object`: Adjust an object, whether it be by moving it, adding modifiers, changing it's parent, it can all be done in this menu, however, the UI is lacking in exchange for the amount of options to fit in.
+12. `Transform orientation`: Change the transform orientation of an object. It is recommended to learn the `Global`, `Local` and `Normal` transform orientations.
+13. `Transform pivot point`: Changes the pivot point when rotating or scaling a mesh:
+ - `Bounding Box Center`: Center of a selection
+ - `3D Cursor`: Around the 3D cursor (The red and white circle)
+ - `Individual original`: If multiple objects are selected, each object will rotate around it's own center.
+ - `Median Point`: Around the middle point of all selections.
+ - `Active Element`: Around the active element (highlighted in yellow as opposed to orange)
+14. `Snapping`: Allows an object to snap, either in increments or to the surface of another object. View docs for more detail.
+15. `Proportional editing`: Will influence objects or vertices surrounding the selected object/vertex proportionally to it's distance. (The proportional influence can be modified by editing the line graph).
+16. `Selectability and Visibility`: Adjust what shows in the 3D viewport.
+17. `Viewport Gizmos`: Enables/Disables the gizmo, which allows rotating the viewport.
+18. `Viewport Overlays`: Allows to enable/disable various overlays. It is here you can enable/disable wireframe and face orientation, along with statistics for vertex count.
+19. `Transparency Overlay`: Allows the user to make objects transparent, ie see through them.
+20. `Viewport Shading`: Changes the shading type of the viewport:
+ - `Wireframe`: Shows all meshes as wireframes.
+ - `Solid`: The default when blender opens. Shows all meshes with basic lighting.
+ - `Material Preview`: Displays meshes using eevee, with materials on.
+ - `Rendered`: Attempts to show the viewport as close to a render as possible, by default uses Cycles. Not recommended to view in this mode when modding.
+21. `Tabs`: These are the tabs in blender, each allowing you to set up the widgets in a different way as well as having different editors in each. By default, the ones in the image are already in a new blend.
+22. `Options`: Options for the current mode selected in the 3D viewport.
+23. `Outliner`: Allows the user to structure a scene.
+24. `Selection Mode`: The same modes as most image editors, that let you select and add/substract/difference/intersect with an existing selection.
+25. `Selectors`: The first icon is the selector type. These can be cycled with the `W` key. The second icon is the 3d cursor tool, which lets the user changes the location of the 3d cursor.
+26. `Transform tools`: From top to bottom:
+ - `Move`: Move an object
+ - `Rotate`: Rotate an object
+ - `Scale`: Scale an object
+ - `Transform`: All 3 together.
+27. `Annotate` and `Measure`: `Annotate` Allows the user to draw in the viewport with the grease pencil. `Measure` allows the user to measure distances. Useful for getting the scale of things correct.
+28. `Sidebar`: Where most plugin menus are located, **including XXMI and WWMI**. Other useful tabs include the `Tool` tab for tool properties and `View` tab for camera properties.
+29. `Tool`: Allows the user to modify tool properties of the active tool.
+30. `Rendering settings`: Various rendering settings. Not useful for most beginner modders, outside of baking.
+31. `Collection`: Settings for the collection the object is in. In the image, the selected cube is in the `Collection` collection.
+32. `Object Properties`: The user can set transform, visibility, shading among other settings here.
+33. `Modifier Properties`: This is where the user can add, modify and remove modifiers to an object.
+34. `Particle Properties`: Particle settings. Not useful for modding.
+35. `Physics Properties`: Physics settings. Not useful for modding.
+36. `Constraint Properties`: Constraint settings. Not useful for modding outside specific cases.
+37. `Object Data Properties`: The object's data can be found here. This is where the user will find all the information of an object when it comes to Vertex Groups, Shape Keys, UV Maps, Color Attributes and other properties. It is **VITAL** to know the location of this tab.
+38. `Material Properties`: Where material properties are found. A user can add and remove materials here, as well as edit basic properties. For more advanced material editing, it is recommended to use the Shader Editor.
+39. `Orientation Gizmo`: Gizmo for orientation. Click and drag to rotate the view.
+40. `Movement tools`: Used for movement of the view, whether it be zooming in, out, moving it in the 3D space, quickly changing to the camera view or changing projection type.
+41. `Cube`: The default blender cube.
+42. `Camera`: The default blender camera. Used as the camera when rendering.
+43. `Light`: The default blender point light. Used as lighting when in rendering mode or rendering.
+44. `3D viewport`: The primary viewport to view models and do 3d things. Should essentially always be open in a widget.
+45. `Timeline`: For animating. Not useful for modding.
\ No newline at end of file
diff --git a/guides/blender/blender.md b/guides/blender/blender.md
new file mode 100644
index 0000000..33cf09a
--- /dev/null
+++ b/guides/blender/blender.md
@@ -0,0 +1,12 @@
+# Blender Guides
+
+Blender guides for beginners. Includes UI, Baking, Materials, Modifiers and Edit Mode tips.
+
+## Sections
+
+- [Blender Edit Mode](./blender-edit.md)
+- [Blender UI](./blender-ui.md)
+- [Blender Modifiers](./blender-modifiers.md)
+- [Blender Materials and Baking](./blender-baking.md)
+
+
diff --git a/guides/blender/img/Bake.png b/guides/blender/img/Bake.png
new file mode 100644
index 0000000..7126f48
Binary files /dev/null and b/guides/blender/img/Bake.png differ
diff --git a/guides/blender/img/DataTransfer.png b/guides/blender/img/DataTransfer.png
new file mode 100644
index 0000000..cfc623f
Binary files /dev/null and b/guides/blender/img/DataTransfer.png differ
diff --git a/guides/blender/img/Material.png b/guides/blender/img/Material.png
new file mode 100644
index 0000000..8f8c64f
Binary files /dev/null and b/guides/blender/img/Material.png differ
diff --git a/guides/blender/img/ModifierSettings.png b/guides/blender/img/ModifierSettings.png
new file mode 100644
index 0000000..a8f18f4
Binary files /dev/null and b/guides/blender/img/ModifierSettings.png differ
diff --git a/guides/blender/img/Subdivision.png b/guides/blender/img/Subdivision.png
new file mode 100644
index 0000000..fd0efbc
Binary files /dev/null and b/guides/blender/img/Subdivision.png differ
diff --git a/guides/blender/img/UI.png b/guides/blender/img/UI.png
new file mode 100644
index 0000000..782e740
Binary files /dev/null and b/guides/blender/img/UI.png differ
diff --git a/guides/games/gi/gi-textures.md b/guides/games/gi/gi-textures.md
new file mode 100644
index 0000000..a29cf39
--- /dev/null
+++ b/guides/games/gi/gi-textures.md
@@ -0,0 +1,41 @@
+# GI Textures and Properties
+
+GI models have a few types of information encoded into their meshes other than the mere position of their vertex. That would be its normals, tangents, uvs, vertex color and weights.
+
+## Table of Contents
+[[toc]]
+
+## UV Maps
+
+* Most objects have 2 UV maps controlling texture application (TEXCOORD.xy for outside, TEXCOORD1.xy for inside).
+
+## Textures
+
+A Genshin character uses many different textures. Below is a basic identification and explanation of the textures a character can use:
+- Base Diffuse - Base texture.
+- Base Alpha - Used as a bloom/emissive mask in the body, alpha depending on texture, or as a blush mask for the face.
+- Shadow Ramp - Determines shadow and lit color, as well as fake SSS. To be used with half lambert shading but you can still use it with ordinary lambert, just multiply SSS Rate by 2.
+- Lightmap - For lightmaps, please look at the lightmap section.
+- Normal Map - The normal map, it's functionality is like any other game.
+- Specular Ramp - Similar to the Shadow Ramp texture, but for Specular.
+- Metal MatCap texture - Used as a matcap on the metallic matcap mask (Lightmap R)
+- Face Shadow Mask texture (alpha included) - controls lighting for the mouth and eyebrows.
+- Face Lightmap texture - Controls face lighting.
+## Lightmap
+
+Lightmaps are split into channels, like most PBR maps. Here's what each channel does, neutral being the default/no-effect value:
+- **R** - Used in calculating non-metallic specular AND Metallic matcap mask (< 0.9), aka metallic in Blender, neutral 0.0.
+- **G** - Ambient Occlusion (< 0.2), and > 0.8 separates eye from the hair (only applies to hair lightmap, sometimes body lightmap like Yae’s), neutral 0.5.
+- **B** - Used in calculating both non-metallic and metallic specular (as a whole), aka glossy/roughness in Blender, neutral 0.0.
+- **A** - Used as a threshold for outline colors, multiplies specular values and the ramp textures, divided into a maximum of 5 regions, neutral is either 0 or 1.
+
+**NOTE:** Lightmap values can vary slightly from character to character.
+
+
+## Vertex Colors
+
+There is 1 main color attribute (COLOR), split into 4 channels:
+- **R** - Used to complement Lightmap G
+- **G** - Used for vertex ramp width, I also personally use this channel for outlines depending on camera distance
+- **B** - Used for outlines, for example for Z-offset
+- **A** - Base outline thickness that does not scale with camera
\ No newline at end of file
diff --git a/guides/games/hsr/hsr-textures.md b/guides/games/hsr/hsr-textures.md
new file mode 100644
index 0000000..04e6172
--- /dev/null
+++ b/guides/games/hsr/hsr-textures.md
@@ -0,0 +1,23 @@
+# HSR Textures and Properties
+
+HSR models have a few types of information encoded into their meshes other than the mere position of their vertex. That would be its normals, tangents, uvs, vertex color and weights.
+
+:::danger
+This guide is currently under construction. Information is lacking but more will be added in the future. Make sure to revisit often.
+:::
+
+## Table of Contents
+[[toc]]
+
+## Lightmap
+
+Lightmaps are split into channels, like most PBR maps. Here's what each channel does, neutral being the default/no-effect value:
+
+- **R** - Rimlight Mask, neutral 1.0.
+- **G** - Ambient Occlusion, neutral 0.5.
+- **B** - Specular, neutral 0.0.
+- **A** - Material ID, 8 divisions, neutral is usually 0 or 1.
+
+## Vertex Colors
+
+Vertex Colors in HSR reportedly do very little, or must be the same value as the original character, depending on the character (Examples: Fei Xiao, Acheron).
\ No newline at end of file
diff --git a/guides/games/wuwa/ww-textures.md b/guides/games/wuwa/ww-textures.md
new file mode 100644
index 0000000..79f6135
--- /dev/null
+++ b/guides/games/wuwa/ww-textures.md
@@ -0,0 +1,34 @@
+# WW Textures and Properties
+
+WuWa models have a few types of information encoded into their meshes other than the mere position of their vertex. That would be its normals, tangents, uvs, vertex color and weights.
+
+:::danger
+This guide is currently under construction. Information is lacking but more will be added in the future. Make sure to revisit often.
+:::
+
+## Table of Contents
+[[toc]]
+
+
+## Note
+
+Most of this information is taken from the WWMI Tools Github Modder Guide: https://github.com/SpectrumQT/WWMI-Tools/blob/main/guides/modder_guide.md
+## UV Maps
+
+* Each object has 2 UV maps controlling texture application (TEXCOORD.xy for outside, TEXCOORD1.xy for inside).
+* There's also one extra UV map (TEXCOORD2.xy) with frontal projection, potentially used for shading purposes. Documentation TBA.
+
+## Vertex Colors
+
+There are 2 color attributes (COLOR and COLOR1):
+* **COLOR**:
+ - **R** - **Outline Mask**: Prevents outlines on certain areas from being drawn on certain angle, might be changing colors according to existing Material Functions in-game (needs more testing). 0 (black) means no draw, 1 (white) means draw.
+ - **G** - **Outline Thickness**: 0 (black) means no outline, 1 (white) means thick outlines. However, Alpha at 0 is the exact opposite of Green value.
+ - **B** - **Skin Mask**: Determines whenever the certain area is skin or not, affects colors and may be more. 0 (black) = not skin, 1 (white) = skin.
+ - **A** - **Outline Thickness**: Only affects hair so far, Material Dependant.
+ - For uasset dumps, R and B are swapped.
+* **COLOR1**:
+ - **R** - **Outlines Control**: not researched, set it to 0 (black).
+ - **G** - **Outlines Control**: not researched, set it to 0 (black).
+ - **B** - **Ignored**.
+ - **A** - **Ignored**.
\ No newline at end of file
diff --git a/guides/zzz-textures.md b/guides/games/zzz/zzz-textures.md
similarity index 97%
rename from guides/zzz-textures.md
rename to guides/games/zzz/zzz-textures.md
index 4e018ab..5630945 100644
--- a/guides/zzz-textures.md
+++ b/guides/games/zzz/zzz-textures.md
@@ -1,4 +1,4 @@
-# ZZZ Textures and properties
+# ZZZ Textures and Properties
The current tutorial assumes you already know how to mod the game and all the basics of 3D modeling. Concepts such as UV, texturing, modeling, kit-bashing, import and export won't be covered here. Feel free to learn more basic concepts at my modding guide.
@@ -112,7 +112,7 @@ All of these will need to be updated as more mods are made and a better understa
### Vertex paint
-- R: Outline Thicc
-- G: God knwos but maybe Z-depth outline
-- B: Contact shadow intensity - MAYBE
-- Alpha: Something about the neck man
+- **R** - Outline Thickness
+- **G** - Unknown, perhaps Z-depth outline
+- **B** - Contact shadow intensity - MAYBE
+- **A** - Affects the neck, mostly unknown
diff --git a/guides/index.md b/guides/index.md
index 1f59dcd..62eabf0 100644
--- a/guides/index.md
+++ b/guides/index.md
@@ -2,7 +2,7 @@
The following guides are set up in roughly the order they should be read in.
-## Glosary
+## Glossary
- **Mod user**: Person who uses mods in XXMI games.
- **Mod maker**: Person who creates mods for XXMI games.
@@ -17,14 +17,67 @@ The following guides are set up in roughly the order they should be read in.
- [Mod Managers](./mod-managers.md)
- [Troubleshooting](./troubleshooting.md)
-## Mod making tutorials
-
-- [Modding 101](./modding-101.md)
-- [Textures 101](./textures-101.md)
-- [XXMI Tools](./xxmi_tools.md)
-- [Blender tips](./blender-tips.md)
-- [Weapon banana](./weapon-banana.md)
-- [Mona Hat tutorial](./mona-hat.md)
-- [Hunting & Dumping](./hunting.md)
-- [Shaders 101](./shaders-101.md)
-- [ZZZ Textures](./zzz-textures.md)
+## Mod Making Sections
+
+
+
+
+## Game Specific Guides
+
+
\ No newline at end of file
diff --git a/guides/mona-hat.md b/guides/tutorials/mona-hat.md
similarity index 100%
rename from guides/mona-hat.md
rename to guides/tutorials/mona-hat.md
diff --git a/guides/tutorials/tutorials.md b/guides/tutorials/tutorials.md
new file mode 100644
index 0000000..4257255
--- /dev/null
+++ b/guides/tutorials/tutorials.md
@@ -0,0 +1,8 @@
+# Tutorials
+
+Various additional tutorials, from texturing guides all the way to modelling guides.
+
+## Sections
+
+- [Mona hat](./mona_hat.md)
+- [Weapon banana](./weapon_banana.md)
diff --git a/guides/weapon-banana.md b/guides/tutorials/weapon-banana.md
similarity index 99%
rename from guides/weapon-banana.md
rename to guides/tutorials/weapon-banana.md
index a09938f..edd2eb1 100644
--- a/guides/weapon-banana.md
+++ b/guides/tutorials/weapon-banana.md
@@ -4,7 +4,7 @@
This is a walkthrough for importing custom weapon models into Genshin Impact.
-For this tutorial, I am assuming you are familiar with the basics of using GIMI (how to set it up/import/export/load); if not, please read through [Mona Hat Removal](./mona-hat). I am also assuming basic Blender knowledge – for questions on Blender basics like how to change modes, select vertices and open certain menus please search the knowledge you need on Google/Youtube.
+For this tutorial, I am assuming you are familiar with the basics of using GIMI (how to set it up/import/export/load); if not, please read through [Mona Hat Removal](./tutorials/mona-hat). I am also assuming basic Blender knowledge – for questions on Blender basics like how to change modes, select vertices and open certain menus please search the knowledge you need on Google/Youtube.
Weapon mods are more complicated than basic mesh edits, but less complicated than importing custom characters. ~90% of the steps remain the same for custom characters, but characters involve much more complicated vertex group/bone structures than weapons.
diff --git a/guides/wwmi/wwmi.md b/guides/wwmi/wwmi.md
new file mode 100644
index 0000000..3fdd4c2
--- /dev/null
+++ b/guides/wwmi/wwmi.md
@@ -0,0 +1,12 @@
+# WWMI Guides
+
+Tutorials for the WWMI Blender plugin.
+
+## Sections
+
+- [WWMI Tools](./wwmi_tools.md)
+- [WWMI Extracting](./wwmi_extract.md)
+- [WWMI Importing](./wwmi_import.md)
+- [WWMI Exporting](./wwmi_export.md)
+- [WWMI Toolbox](./wwmi_toolbox.md)
+
diff --git a/guides/wwmi/wwmi_export.md b/guides/wwmi/wwmi_export.md
new file mode 100644
index 0000000..e5a7164
--- /dev/null
+++ b/guides/wwmi/wwmi_export.md
@@ -0,0 +1,85 @@
+# WWMI Exporting
+
+This page explores the export process of the WWMI Tools plugin, and explains the various settings the plugin has for exporting.
+
+## Table of Contents
+
+[[toc]]
+
+## Exporting a mod
+
+- If it was not detected automatically, select your dump folder on the right hand side menu in your viewport
+- Select a destination folder(can be a /Mods subdirectory) for your mod to be exported at
+- Ensure that the `Skeleton` setting is set to the same value as what you selected when initially importing your object into blender.
+- Click on `Export`
+- DONE!
+
+## Basic settings
+
+**`Mirror Mesh`**
+
+Flips a model on it's X axis. You should only select this if you selected `Mirror Mesh` on import.
+
+**`Apply all modifiers`**
+
+This applies the modifiers on temporary copies of each object. **Note:** This uses a different process than the application of modifiers in XXMI tools, and as such the application process can be substantially slower. This is due to how shape keys are processed for WWMI modding.
+
+**`Copy Textures`**
+
+This copies textures from the extracted model folder to the mod folder. **This should preferably be disabled after the first export in order to not overwrite textures.**
+
+**`Write Mod INI`**
+
+This writes a mod INI, and will overwrite existing mod INIs. You may disable this as long as vertices aren't added or removed to the mod.
+
+**`Comment INI code`**
+
+Adds comments to INI code. Useful to learn how WWMI INIs work.
+
+**`Ignore nested collections`**
+
+This will ensure that models within nested collections (ie Collections within the selected collection for export) are ignored when exporting.
+
+**`Ignore Hidden Objects`**
+
+This will ignore hidden objects when exporting.
+
+**`Ignore Muted Shape Keys`**
+
+This will ignore muted shape keys (ie shape keys where the checkmark box is empty) when exporting a model with shape keys.
+
+## Advanced settings
+
+``Textures Filtering: Skip Known Cubemaps``
+
+This will skip a texture if its hash is listed in the list of known cubemaps. This should usually be enabled, since otherwise it may break the texture.
+
+``Add Missing Vertex Groups``
+
+This will automatically fill out the vertex groups list on a mesh. Example: If a mesh ending in VG 5 is missing 2, 3, 4, it will add VGs 2, 3, 4 as empty VGs.
+
+``Fill Missing Mesh Data``
+
+This will automatically fill out mesh data, from COLOR to the UV maps.
+
+``Unrestricted Custom Shape Keys``
+
+This allows the user to add shape keys to meshes without shape keys initially. This adds mod ini logic.
+
+``Skeleton scale``
+
+This will scale meshes to be larger or smaller depending on the value. By default it is 1.
+
+``Partial export``
+
+This will skip select buffers. Only for advanced users that know what they're doing.
+
+## Mod Info
+
+The mod info will allow a mod author to display their name, the mod name, the mod description, the mod link and mod logo for notifications and mod managers.
+
+## Ini template
+
+When enabling the `Use Custom Template` setting, this allows you to use a custom ini template.
+
+**This feature requires [Jinja](https://jinja.palletsprojects.com/en/stable/) knowledge for the template.**
\ No newline at end of file
diff --git a/guides/wwmi/wwmi_extract.md b/guides/wwmi/wwmi_extract.md
new file mode 100644
index 0000000..03e06c7
--- /dev/null
+++ b/guides/wwmi/wwmi_extract.md
@@ -0,0 +1,45 @@
+# WWMI Extracting
+
+This page explores the extract process of the WWMI Tools plugin, and explains the various settings the plugin has for extracting.
+
+## Table of Contents
+
+[[toc]]
+
+## Dumping In Game
+
+To dump in game:
+- Open the hash hunting UI with 0 on the numpad.
+- Press F8
+- Once done, find the dump in the WWMI base folder (Where the exe is located)
+
+**Note:** It is **strongly** recommended to do an F8 dump in the character archive when dumping characters or weapons, to minimise the dump size.
+
+## Extracting Dumps
+
+In blender:
+- Select the frame dump folder (not the deduped folder, the base folder)
+- Select the output folder
+- Select `Extract Objects From Dump`
+- Done!
+
+## Settings
+
+**`Textures Filtering: Skip Small`**
+
+Skips small textures. You may select the minimum skip size with the `Min Size` setting on the right.
+
+**`Textures Filtering: Skip .jpg`**
+
+Skips jpg files in the dump.
+
+**`Textures Filtering: Skip known cubemaps`**
+
+Skips known cubemaps in the dump. It is best to avoid modding these to avoid errors.
+
+**`Textures Filtering: Skip Same Slot-Hash`**
+
+Skips textures that are in the same slot for multiple components. It is recommended to keep this disabled, as it may skip useful files!
+
+
+
diff --git a/guides/wwmi/wwmi_import.md b/guides/wwmi/wwmi_import.md
new file mode 100644
index 0000000..c509daf
--- /dev/null
+++ b/guides/wwmi/wwmi_import.md
@@ -0,0 +1,36 @@
+# WWMI Importing
+
+This page explores the import process of the WWMI Tools plugin, and explains the various settings the plugin has for importing.
+
+## Table of Contents
+
+[[toc]]
+
+## Assets
+
+You can find various assets in the [WWMI-Assets](https://github.com/SpectrumQT/WWMI-Assets) repository. If not found there, you will need to follow the [WWMI Extraction](/guides/wwmi/wwmi_extract) guide.
+
+## Importing
+
+To import, make sure to select the object source folder, the simply press import!
+
+## Settings
+
+**`Vertex Colors`**
+
+This can be either linear or sRGB. Preferably, keep it linear.
+
+**`Skeleton`**
+
+This is primarily for vertex groups rather than the actual skeleton.
+
+- The `Merged` option makes it so that all components share the same Vertex Group order (Ex: 5 is the head vertex group on the hair. 5 is also the head vertex group on the body.)
+- The `Per-Component` option makes it so that components won't necessarily share the same Vertex Group order (Ex: 5 is the head vertex group on the hair. 27 is the head vertex group on the body.)
+
+**`Skip Empty Vertex Groups`**
+
+This will skip vertex groups that have no influence on the mesh. **Note:** You need to make sure `Add Missing Vertex Groups` is enabled when exporting later.
+
+**`Mirror Mesh`**
+
+This will mirror the mesh on the X axis when importing, since otherwise they are flipped. **Note:** You need to make sure `Mirror Mesh` is enabled when exporting later.
\ No newline at end of file
diff --git a/guides/wwmi/wwmi_toolbox.md b/guides/wwmi/wwmi_toolbox.md
new file mode 100644
index 0000000..e69de29
diff --git a/guides/wwmi/wwmi_tools.md b/guides/wwmi/wwmi_tools.md
new file mode 100644
index 0000000..685ea00
--- /dev/null
+++ b/guides/wwmi/wwmi_tools.md
@@ -0,0 +1,34 @@
+# XXMI Tools
+
+We will look into the features of XXMI Tools blender plugin. From importing a mesh into the editor all the way up to in game reinjection.
+
+:::danger
+This guide is currently under construction. Information is lacking but more will be added in the future. Make sure to revisit often.
+:::
+
+## Table of Contents
+
+[[toc]]
+
+## Installation
+
+- Head to
+- Download the latest `.zip` file
+- Open `blender settings > Add-ons > Install from Disk`
+- Locate the `zip file` and proceed with the installation
+- For updates, in the plugin, select the Update settings dropdown, and if an update is available, simply press the update button.
+- Restart `Blender`
+
+## Modding
+
+The plugin is not designed to directly aid on the process of replacing, modifying or creating a mod. Simply on the import export process.
+Check the other guides in the site to see examples of how to create and prepare your models for export.
+
+If you are a beginner, I recommend viewing the [Mona Hat](/guides/tutorials/mona-hat.md) or [Weapon Banana](/guides/tutorials/weapon-banana.md) guides.
+
+Since WWMI tools is split into 4 primary sections, each section will be given it's own page, which will provide a detailed explanation of the settings of each page. The pages are as follows:
+
+- [Extracting objects](/guides/wwmi/wwmi_extract.md)
+- [Importing objects](/guides/wwmi/wwmi_import.md)
+- [Exporting objects](/guides/wwmi/wwmi_export.md)
+
diff --git a/guides/wwmi_tools.md b/guides/wwmi_tools.md
deleted file mode 100644
index 6063611..0000000
--- a/guides/wwmi_tools.md
+++ /dev/null
@@ -1 +0,0 @@
-In construction...
diff --git a/guides/xxmi/xxmi.md b/guides/xxmi/xxmi.md
new file mode 100644
index 0000000..1c75e7b
--- /dev/null
+++ b/guides/xxmi/xxmi.md
@@ -0,0 +1,7 @@
+# XXMI Guides
+
+Tutorials for the XXMI Blender plugin.
+
+## Sections
+
+- [XXMI Tools](./xxmi_tools.md)
diff --git a/guides/xxmi_tools.md b/guides/xxmi/xxmi_tools.md
similarity index 96%
rename from guides/xxmi_tools.md
rename to guides/xxmi/xxmi_tools.md
index c6a2d67..8bd33a3 100644
--- a/guides/xxmi_tools.md
+++ b/guides/xxmi/xxmi_tools.md
@@ -35,7 +35,7 @@ This guide is currently under construction. Information is lacking but more will
The plugin is not designed to directly aid on the process of replacing, modifying or creating a mod. Simply on the import export process.
Check the other guides in the site to see examples of how to create and prepare your models for export.
-If you are a beginner, I recommend you starting at [Mona Hat](/guides/mona-hat.md) or [Weapon Banana](/guides/weapon-banana.md) guides.
+If you are a beginner, I recommend you starting at [Mona Hat](/guides/tutorials/mona-hat.md) or [Weapon Banana](/guides/tutorials/weapon-banana.md) guides.
## Exporting a mod
diff --git a/ru/guides/textures-101.md b/ru/guides/textures-101.md
index 16e4888..b1a0b49 100644
--- a/ru/guides/textures-101.md
+++ b/ru/guides/textures-101.md
@@ -125,7 +125,7 @@
11. Теперь создадим эти текстуры и добавим их в ту же папку, что и Banner.ini. Обратите внимание, что все 3 текстуры имеют тип `BC7_UNORM`, что соответствует `BC7 Linear`.
- Для баннера я перекрашу его и сохраню как `DendroBannerCard.dds` (подробности о том, как открыть и сохранить файлы dds, смотрите в [уроке по удалению шляпы у Моны](./mona-hat.md)).
+ Для баннера я перекрашу его и сохраню как `DendroBannerCard.dds` (подробности о том, как открыть и сохранить файлы dds, смотрите в [уроке по удалению шляпы у Моны](./tutorials/mona-hat.md)).
diff --git a/ru/guides/xxmi_tools.md b/ru/guides/xxmi_tools.md
index c6a2d67..8bd33a3 100644
--- a/ru/guides/xxmi_tools.md
+++ b/ru/guides/xxmi_tools.md
@@ -35,7 +35,7 @@ This guide is currently under construction. Information is lacking but more will
The plugin is not designed to directly aid on the process of replacing, modifying or creating a mod. Simply on the import export process.
Check the other guides in the site to see examples of how to create and prepare your models for export.
-If you are a beginner, I recommend you starting at [Mona Hat](/guides/mona-hat.md) or [Weapon Banana](/guides/weapon-banana.md) guides.
+If you are a beginner, I recommend you starting at [Mona Hat](/guides/tutorials/mona-hat.md) or [Weapon Banana](/guides/tutorials/weapon-banana.md) guides.
## Exporting a mod