qodot-plugin
qodot-plugin copied to clipboard
Wiki Documentation
This task is for noting any missing wiki documentation that needs to be rectified.
Be sure to check the wiki before making a request for documentation.
Qodot Functionality
-
_phong
property -
_shadow
property - Specifics of custom entity spawning
- How to plug your own top-level class in via PackedScene
- Necessary to export properties dictionary for non-QodotEntity derived classes?
- TrenchBroom setup
- Pointing TB at your game project
- Loose file / WAD file restructions per format
Radiant Workflow
- Radiant is rigid in terms of its game definitions, so need to lean on Q3 + mod config
- Tested with GTKRadiant
- Use the Q3 + mods config, choose the parent directory of your Godot project as the base dir
- Use your project folder's name as the mod name
- Radiant will create a
baseq3
folder next to your project folder - Delete everything inside
baseq3
except forscripts/default_project.proj
andscripts/user0.proj
andentities.def
- Recommended to enable 'fixed texture size' in Radiant settings if working with 4K textures
- Prevents texture window layout blowout
- Need to look into
entities.def
and see about subbing in a basic Qodot equivalent
Trenchbroom crashes if entity classname has spaces. Might want to add that to entities wiki, either that or trim away spaces on fgd file export?
Could not load builtin entity definition file 'Qodot.fgd': At line 41, column 68: Expected '[' or ':', but got word (raw data: 'collider')
Edit: Trenchbroom also crashes if classname is empty
Need to document new Quick Build functionality:
- there's now a build_complete(entity_nodes) signal that gets fired at the end of the build and returns an array of entity nodes (order corresponds to map file entity order, entities may be null depending on the build process)
- the enum passed into set_owner can now take the following values:
- QodotMap.QodotMapAction.SELECT_AN_ACTION - Does nothing, used for UI purposes.
- QodotMap.QodotMapAction.QUICK_BUILD - Build, but don't attach to the editor tree. Visible in the editor, but entity nodes can't be selected or saved. Doesn't invoke costly set_owner calls.
- QodotMap.QodotMapAction.FULL_BUILD - Original build + add to editor tree behavior.
- QodotMap.QodotMapAction.UNWRAP_UV2 - Unwrap UV2s for lightmapping. Should work for both quick and full builds.
As well as manual_build()
:
- there's a new manual_build() function in QodotMap that also skips the step of attaching entity nodes to the QodotMap itself
- the Use TrenchBroom Group Hierarchy setting doesn't do anything when using manual_build(), since it skips out the attachment phase
Need to document signal/slot wiring as per https://github.com/Shfty/qodot-plugin/issues/80
Need to elaborate on install process + plugin activation.
Could you make the wiki editable for non-collaborators as well, please? This would make it possible for anyone to fix issues like https://github.com/Shfty/qodot-plugin/issues/103 :slightly_smiling_face:
You can do this in the repository's Settings tab.
@Calinou Good call, it should be opened up for public edits now.
I just pushed changes to the Usage and Trenchbroom pages to include tutorials on the set-up process for getting the two synced-up. I know you two already proofread what I wrote but I'd greatly appreciate changes from anyone to improve what I wrote!
Please file documentation issues at https://github.com/QodotPlugin/qodotplugin.github.io , this repo's wiki is now closed.