Skip to content

Commit

Permalink
Update docs to latest FuncGodot version
Browse files Browse the repository at this point in the history
  • Loading branch information
RhapsodyInGeek committed Nov 2, 2024
1 parent 326808e commit 1916a73
Show file tree
Hide file tree
Showing 22 changed files with 88 additions and 26 deletions.
Binary file modified FuncGodot Manual/images/guide_fgd_apply_props.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/guide_fgd_func_godot_fgd.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/guide_fgd_res_loc.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added FuncGodot Manual/images/guide_tex_org1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added FuncGodot Manual/images/guide_tex_org2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added FuncGodot Manual/images/origin.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/ref_fgd_file.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/ref_fgd_solid.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/ref_func_godot_map_settings.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file modified FuncGodot Manual/images/ref_local_config.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified FuncGodot Manual/images/ref_tb_gameconfig.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 8 additions & 6 deletions FuncGodot Manual/pages/guide_fgd.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ <h2 id="FGDFile">FGD File Resource</h2>
<p align="center"><img src="../images/guide_fgd_res_loc.png" alt="func_godot_fgd.tres location."></p>
<p>
This is the default FGD file set in the <a href="ref_func_godot_map.html#MapSettings"><b>FuncGodotMapSettings</b></a> resource. The basic entity definitions included with it are
<i>Worldspawn</i>, <i>func_detail</i>, <i>func_detail_illusionary</i>, <i>func_illusionary</i>, and <i>Phong</i>. We'll go over what each of these entity types are a little farther below.
<i>Worldspawn</i>, <i>func_geo</i>, <i>func_detail</i>, <i>func_detail_illusionary</i>, <i>func_illusionary</i>, and <i>Phong</i>. We'll go over what each of these entity types are a little farther below.
</p>

<p>
Expand All @@ -47,11 +47,13 @@ <h2 id="FGDFile">FGD File Resource</h2>
<a href="ref_local_config.html">FuncGodot Local Config</a>. Use this whenever you need to update your FGD.
</p>
<p>
The next property, <b>Model Key Word Supported</b>, is dependent upon which map editor you use. Point class entities in map editors can have display models assigned to them
according to their FGD definitions. Most map editors seem to use the "studio" key word to define the model path, but TrenchBroom instead optionally allows the "model" key word
while also including additional display options and expressions. When set to <i>false</i>, FuncGodot will omit entity definition meta properties using the "model" key word, in
order to prevent errors in your chosen map editor. When exporting the FGD File through a <a href="ref_trenchbroom_resources.html#GameConfig">TrenchBroom Game Config</a> resource
the setting will be overridden to <i>true</i>. See the <a href="https://developer.valvesoftware.com/wiki/FGD#Class_Types_and_Properties" target="_blank">Valve Developer Wiki</a> for more information.
The next property, <b>Target Map Editor</b>, is intended to help with specific key words that aren't shared across the different map editors.
Point class entities in map editors can have display models assigned to them according to their FGD definitions.
Most map editors seem to use the "studio" key word to define the model path, but TrenchBroom instead optionally allows the "model" key word while also including
additional display options and expressions. When set to <i>false</i>, FuncGodot will omit entity definition meta properties using the "model" key word in order to
prevent errors in your chosen map editor. When exporting the FGD File through a <a href="ref_trenchbroom_resources.html#GameConfig">TrenchBroom Game Config</a>
resource the setting will be overridden to <i>true</i>.
See the <a href="https://developer.valvesoftware.com/wiki/FGD#Class_Types_and_Properties" target="_blank">Valve Developer Wiki</a> for more information.
</p>
<p>
<b>Fgd Name</b> should be self evident: this will be your exported FGD's filename, minus the file extension. Best practice would be to set this to either your game's name or its acronym.
Expand Down
7 changes: 5 additions & 2 deletions FuncGodot Manual/pages/guide_project_config.html
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ <h3>FuncGodot Local Config</h3>
<h3>Local Config Properties</h3>

<p>
Viewing this resource's properties in the inspector, you'll be greeted with some options. We'll ignore the <i>Export Func Godot Settings</i> property for now.
Viewing this resource's properties in the inspector, you'll be greeted with some options. We'll ignore the <i>Export Func Godot Settings</i> and <i>Reload Func Godot Settings</i> property for now.
</p>
<p align="center"><img src="../images/ref_local_config.png" alt="FuncGodotLocalConfig resource inspector."></p>
<p>
Expand Down Expand Up @@ -79,7 +79,7 @@ <h3>Local Config Properties</h3>
for <i>FuncGodotFGDModelPointClass</i> definitions in map editors other than TrenchBroom.
</p>

<h3>Exporting the Project Config</h3>
<h3>Exporting the Local Config</h3>
<p>
Remember that <i>Export Func Godot Settings</i> property I told you to ignore earlier? Once you have your settings in place, go ahead and click it.
It will automatically generate a <i>MyGameFuncGodotConfig.json</i> file in your
Expand All @@ -94,6 +94,9 @@ <h3>Exporting the Project Config</h3>
the generated JSON file found in your user data folder, and setting the resource's <i>Export</i> property to true will overwrite that file with the new settings.
These settings are not saved to source control, allowing teams to work together more easily and more flexibly.
</p>
<p>
If you make a change you didn't mean to commit and you haven't yet exported, you can use the <i>Reload</i> option to revert your unwanted changes.
</p>

<br><br><br>
</div>
Expand Down
20 changes: 19 additions & 1 deletion FuncGodot Manual/pages/guide_textures.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<div class="main">
<h1>Textures</h1>

<h2>How Textures Work In FuncGodot</h2>
<h2 id="HowTexWork">How Textures Work In FuncGodot</h2>
<p>
If you take a look at a <i>.map</i> file, you'll see that it's just a text file describing the makeup of your map and doesn't actually store any other data,
including texture images. Let's look at this example of a <i>Solid Entity</i> in a map file:
Expand Down Expand Up @@ -136,6 +136,24 @@ <h3>Skip It</h3>
<p>... and if you want them to pass through, use Skip <sub>(with Concave collision)</sub>.</p>
<p align=center><img src="../images/guide_tex_skip_example.png" height="512px"> <img src="../images/guide_tex_skip_example2.png" height="512px"></p>

<h2 id="Origin">The Origin Texture</h2>
<p align="center"><img src="../images/origin.png" alt="Origin texture" height="200">
<p>
In Half-Life mapping, some entities like rotating doors require an <b>origin brush</b> to determine where the hinge should be. FuncGodot provides a means to emulate
this behavior using a special origin texture. Just like Clip and Skip, the Origin texture is assigned by the FuncGodotMapSettings resource.
</p>
<p>
To use it, first you must set your Solid Entity class resource <b>origin type</b> to <i>BRUSH</i>. Then in your map editor, create your brush entity as you normally would.
Once you've done that, add an additional brush to your entity, move it to where you want the entity's pivot point to be, and texture it with the Origin texture.
</p>
<p>
Once you build the map in Godot, your entity should now have its pivot point set to the center of where the Origin brush was in the map file, and the Origin brush is removed.
</p>
<p align=center><img src="../images/guide_tex_org1.png" height="512px"> <img src="../images/guide_tex_org2.png" height="512px"></p>
<p>
One last note: if you don't create an Origin brush on a Solid Entity with the <i>BRUSH</i> origin type, it will fall back to using the <a href="ref_fgd_resources.html#Solid" target="main">BOUNDS_CENTER origin type</a>.
</p>

<h2 id="WADFiles">WAD Files</h2>
<p>
FuncGodot provides the option to use <a href="https://quakewiki.org/wiki/Texture_Wad" target="_blank">Texture WAD files</a> for your map materials.
Expand Down
23 changes: 18 additions & 5 deletions FuncGodot Manual/pages/ref_fgd_resources.html
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ <h2 id="Solid">FuncGodotFGDSolidClass</h2>
<td>Spawn Type</td>
<td>SpawnType</td>
<td>
Determines how FuncGodot generates both the mesh and the collision in regards to vertice positioning and combining.<br>
Controls whether this Solid Class is the worldspawn, is combined with the worldspawn, or is spawned as its own free-standing entity.<br>
<ul>
<li>
<b>WORLDSPAWN : </b>Builds the geometry of this entity without regard to its center position. Upon build completion all geometry will be
Expand All @@ -199,16 +199,29 @@ <h2 id="Solid">FuncGodotFGDSolidClass</h2>
<td>Origin Type</td>
<td>OriginType</td>
<td>
Determines how this Solid Class utilizes the <code>"origin"</code> key value pair to find its position. Only valid if <i>Spawn Type</i> is set to ENTITY.<br>
Controls how this Solid Class determines its center position. Only valid if <i>Spawn Type</i> is set to ENTITY.<br>
<ul>
<li>
<b>IGNORE : </b>Ignore origin property and only use averaged brush vertices for positioning.
<b>AVERAGED : </b>Use averaged brush vertices for center position. This is the old Qodot behavior.
</li>
<li>
<b>ABSOLUTE : </b>Use origin property for position center, ignoring brush vertice positions.
<b>ABSOLUTE : </b>Use <code>origin</code> class property in global coordinates as the center position.
</li>
<li>
<b>RELATIVE : </b>Calculate position center using origin as an offset to averaged brush vertice positions.
<b>RELATIVE : </b>Calculate center position using <code>origin</code> class property as an offset to the entity's bounding box center.
</li>
<li>
<b>BRUSH : </b>Calculate center position based on the bounding box center of all brushes using the <a href="guide_textures.html#Origin" target="main">origin texture</a> specified in the
<a href="ref_func_godot_map.html#MapSettings" target="main">FuncGodotMapSettings</a>.
</li>
<li>
<b>BOUNDS_CENTER : </b>Use the center of the entity's bounding box for center position. This is the default option and recommended for most entities.
</li>
<li>
<b>BOUNDS_MINS : </b>Use the lowest bounding box coordinates for center position. This is standard Quake and Half-Life brush entity behavior.
</li>
<li>
<b>BOUNDS_MAXS : </b>Use the highest bounding box coordinates for center position.
</li>
</ul>
</td>
Expand Down
22 changes: 12 additions & 10 deletions FuncGodot Manual/pages/ref_func_godot_map.html
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,14 @@ <h2 id="MapSettings">FuncGodotMapSettings</h2>
is set to concave then it will also remove collision from those faces in the generated <i>CollisionShape3D</i>.
</td>
</tr>
<tr>
<td>Origin Texture</td>
<td>String</td>
<td>
Optional path for the origin texture, relative to <i>Base Texture Dir</i>. Brush faces textured with the origin texture will have those faces
removed from the generated <i>MeshInstance3D</i>. The bounds of these faces will be used to calculate the origin point of the entity.
</td>
</tr>
<tr>
<td>Texture Wads</td>
<td>Array[Resource]</td>
Expand All @@ -181,17 +189,12 @@ <h2 id="MapSettings">FuncGodotMapSettings</h2>
</td>
</tr>

<tr><td>Materials</td><td></td><td></td></tr>
<tr class="header"><td>Materials</td><td></td><td></td></tr>
<tr>
<td>Material File Extension</td>
<td>String</td>
<td>File extension to search for <i>Material</i> definitions.</td>
</tr>
<tr>
<td>Unshaded</td>
<td>Bool</td>
<td>If true, all materials will be unshaded, ignoring light. Also known as "fullbright".</td>
</tr>
<tr>
<td>Default Material</td>
<td>Material</td>
Expand Down Expand Up @@ -246,7 +249,7 @@ <h2 id="MapSettings">FuncGodotMapSettings</h2>
</td>
</tr>

<tr><td>UV Unwrap</td><td></td><td></td></tr>
<tr class="header"><td>UV Unwrap</td><td></td><td></td></tr>
<tr>
<td>Uv Unwrap Texel Size</td>
<td>Float</td>
Expand All @@ -263,9 +266,8 @@ <h2 id="MapSettings">FuncGodotMapSettings</h2>
<td>Bool</td>
<td>
If true, will organize Scene Tree using Trenchbroom Layers and Groups. Layers and Groups will be generated as <i>Node3Ds</i>.
All structural brushes will be moved out of the Layers and Groups and merged into the Worldspawn entity. Additionally,
any Layers toggled to be omitted from export in TrenchBroom will be freed on map build before the Layers' children can apply
<code>func_godot_properties</code> or call <code>_func_godot_apply_properties()</code> and <code>_func_godot_build_complete()</code>.
All structural brushes will be moved out of the Layers and Groups and merged into the Worldspawn entity.
Any Layers toggled to be omitted from export in TrenchBroom will not be built.
</td>
</tr>
</table>
Expand Down
9 changes: 9 additions & 0 deletions FuncGodot Manual/pages/ref_local_config.html
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,15 @@ <h3>DO NOT CREATE A NEW RESOURCE!</h3>
<td>Bool</td>
<td>Button to save the local machine project configuration settings in your game's <i>user://</i> folder.</td>
</tr>
<tr>
<td>Reload Func Godot Settings</td>
<td>Bool</td>
<td>
Button to reload the local machine project configuration settings in your game's <i>user://</i> folder.
This can be used in case you need to revert changes to the Local Config resource, so long as you have not
export your changes already.
</td>
</tr>
<tr>
<td>Fgd Output Folder</td>
<td>String, Global Directory</td>
Expand Down
8 changes: 8 additions & 0 deletions FuncGodot Manual/pages/ref_trenchbroom_resources.html
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,14 @@ <h2 id="GameConfig"></h2>
Useful for hiding PBR maps and animation frames.
</td>
</tr>
<tr>
<td>Palette Path</td>
<td>String</td>
<td>
Palette path relative to your Game Path. Only needed for Quake WAD2 files.
Half-Life WAD3 files contain the palettes within the texture information.
</td>
</tr>

<tr class="header"><td>Entities</td><td></td><td></td></tr>
<tr>
Expand Down
3 changes: 3 additions & 0 deletions FuncGodot Manual/pages/sidenav.html
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,10 @@ <h3 class="sidenav">Getting Started</h3>
</p>
<p class="sidenav"><a href="guide_textures.html" target="main">Textures</a><br></p>
<p class="sidenav2">
<a href="guide_textures.html#HowTexWork" target="main">How Textures Work In FuncGodot</a><br>
<a href="guide_textures.html#AutomaticPBRGeneration" target="main">Automatic PBR Generation</a><br>
<a href="guide_textures.html#ClipAndSkip" target="main">Clip and Skip</a><br>
<a href="guide_textures.html#Origin" target="main">The Origin Texture</a><br>
<a href="guide_textures.html#WADFiles" target="main">WAD Files</a><br>
<a href="guide_textures.html#WhyAreMyTexturesBlurry" target="main">Why Are My Textures Blurry!?</a>
</p>
Expand Down
4 changes: 2 additions & 2 deletions FuncGodot Manual/pages/start.html
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ <h3><i>FuncGodot is, at its core, an <em>interpreter</em>.</i></h3>
Understanding this concept will hopefully put you on the right path forward to being able to use this wonderfully flexible tool to make some incredible games.
</p>
<p>
This manual assumes some familiarity with the Godot Engine and your map editor of choice. This manual will only cover them insofar as how they relate to
the FuncGodot work flow.
This manual assumes an intermediate to advanced level of experience with the Godot Engine and your map editor of choice. This manual will only cover them insofar
as how they relate to the FuncGodot work flow.
</p>
<br>

Expand Down
4 changes: 4 additions & 0 deletions FuncGodot Manual/styles.css
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,10 @@ b.faq {
font-style: italic;
}

li {
padding: 10px;
}

/* Base Styles End */

/* Header Start */
Expand Down

0 comments on commit 1916a73

Please sign in to comment.