Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/h2xdev/godotvmf
A VMF importer for Godot Engine/Redot Engine
https://github.com/h2xdev/godotvmf
godot godotengine redotengine source-engine sourceengine vmf
Last synced: 2 days ago
JSON representation
A VMF importer for Godot Engine/Redot Engine
- Host: GitHub
- URL: https://github.com/h2xdev/godotvmf
- Owner: H2xDev
- License: mit
- Created: 2024-02-14T23:37:25.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2025-01-24T09:15:47.000Z (11 days ago)
- Last Synced: 2025-02-02T03:02:15.029Z (2 days ago)
- Topics: godot, godotengine, redotengine, source-engine, sourceengine, vmf
- Language: GDScript
- Homepage:
- Size: 36.5 MB
- Stars: 172
- Watchers: 10
- Forks: 7
- Open Issues: 4
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
GodotVMF
## Description
An importer of [VMF files](https://developer.valvesoftware.com/wiki/VMF_(Valve_Map_Format)) into [Godot Engine](https://godotengine.org/) or [Redot Engine](https://redotengine.org/).Highly recommended to use [Hammer++](https://ficool2.github.io/HammerPlusPlus-Website/) since it supports precised vertex data.
## Why?
We with my friend [Ambiabstract](https://github.com/Ambiabstract) did not find a convenient plugin for us to create levels for Godot and so we decided to use our favorite and familiar editor :)A useful tool for those who like making levels in Hammer and are making a project on the Godot.
Or for those who just want to port their map from Source Engine to Godot and see what happens.## Usage
- [Documentation](https://github.com/H2xDev/GodotVMF/wiki)## Features
- Brushes geometry import (including UVs, materials IDs and smoothing groups)
- Instances support
- Native MDL support
- Native materials support
- Native VTF support (only DXT1, DXT3, DXT5 supported)
- Displacements import (with vertex data)
- WorldVertexTransition materials (blend textures) will be imported as [`WorldVertexTransitionMaterial`](/addons/godotvmf/shaders/WorldVertexTransitionMaterial.gd)
- Entities support
- Hammer's Input/Output system support
- Automatically generates SteamAudioGeometry in case [godot-steam-audio](https://github.com/stechyo/godot-steam-audio) plugin detected
- Surface props support## Known issues
- Extraction of materials and models from VPKs is not supported
- Some of imported models may have wrong orientation
- Use `Additional Rotation` property in the MDL import options
- Avoid importing a big bunch of models/materials at once it may cause the engine crash or import freeze. There's some issues with threaded import in the engine.## Legality of use
If you are going to use Hammer Editor for commercial purpose it's worth to asking Valve for permission to use their tool. There shouldn't be any problems if you are using this tool for non-commercial projects.## Contribution
If you have some ideas, suggestions regarding to quality or solutions of the problems above, feel free to contribute!
- If you've added a new feature please add the relevant documentation.
- Follow the common Godot codestyle (yea-yea i'll fix the existing code in upcoming updates).### How to test the addon after adding new features or fixing some bugs
1. Install any of Source Engine Games (L4D, HL2, TF2)
2. Unpack all textures and models from VPKs
3. Decompile most complex maps
4. Try to import decompiled maps in Godot
5. Check for errors if they appear## Additional things
- Demo (video): https://www.youtube.com/watch?v=5XYfvbIAlJU
- [Echo Point](https://www.youtube.com/watch?v=z7LcKb0XRzY). A game made with this tool## Credits
[H2xDev](https://github.com/H2xDev) - main contributor
[Ambiabstract](https://github.com/Ambiabstract) - tech help and inspiration
[MyCbEH](https://github.com/MyCbEH) - level design for [example project](https://github.com/H2xDev/GodotVMF-Project-Template), UAZ model
[Lachrymogenic](https://github.com/Lachrymogenic) - Linux test, performance test
[SharkPetro](https://github.com/SharkPetro) - materials test## License
MIT