Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/luckydye/vsource-decompiler
A very experimental BSP library to read Source .bsp map files and convert into .gltf.
https://github.com/luckydye/vsource-decompiler
Last synced: 10 days ago
JSON representation
A very experimental BSP library to read Source .bsp map files and convert into .gltf.
- Host: GitHub
- URL: https://github.com/luckydye/vsource-decompiler
- Owner: luckydye
- License: mit
- Created: 2019-11-14T23:30:52.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-02T10:27:43.000Z (almost 2 years ago)
- Last Synced: 2023-03-08T20:57:47.658Z (almost 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 3.99 MB
- Stars: 9
- Watchers: 3
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![Image of Dust2](/dust_2_hologram.png)
## Features
- Convert single prop to .gltf
- Convert .bsp with all props to .gltf
- Extract Pak file from .bsp
- Extract all files from .vpk archives (slow)## Ideas to come:
- extract a defined region of the map
- extract animations for models
- render section of demo file to animations etc.
- convert dds textures to jpegs internally
- decompile decals and wall sprays
- fix bugs. make faster. lol## Todos
- glTF file writer ✓
- read prop textures ✓
- displacements ✓
- normal maps ✓
- bump maps ✓
- texture blends (✓)## Buggy list:
- _autocombine_metal_pipe_603.mdl_0 (nuke, orientation)
- claypot03.mdl.001 (Index/Vertex Error)
- ctm_fbi.mdl (No textures)## Known Issues:
1. Sometimes the color of the textures becoms black because of the alpha layer in the image.
2. Some Props may not decompile properly
3. Blend Textures
- If a material has a blend texture, the second texture is included as a "OCCLUSION" Texture and has to be menually mixed with the base texture. Use the Alpha of the Vertex Color to blend the textures through the Mix Vertex Color Node.4. Some Props convert with a wrong orientation. This can be fixed manually in blender.
5. Normal maps may be in a DirectX format (Y-), to be usable in blender with gltf they have to be manually modified in blender to fit the OpenGL format (Y+).
## Installation
1. Install Node.JS
2. Clone or Download this repository
3. Run ```npm install```
4. Run ```npm run setup```
5. Change to your CS:GO installtion directory and run ```vsource```## Partialy usable with my vsource-viewer (may not be up to date)
https://vsource-viewer.web.app/