Giter Club home page Giter Club logo

plumber's People

Contributors

lasa01 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plumber's Issues

Methods for assisting mass ports to other software

I used the tool to get a bunch of pretty renders in blender, but I was also doing a bit of porting to UE4. Most efficient way for me to do that with multiple maps, would be to somehow get every mesh FBX dumped into a directory. And then UE4 only import what it hasnt before from the directory. The step above that is probably having a file with model names and transform data for each map.

If I could get such a model transform file from blender that points to the FBXs it dumped. Aswel as the FBXs pointing to their respective dumped textures. I would be able to use that file in UE4, to tell UE4 where to place everything after I import the dumps myself. This is actually very similar to some of the COD porting tools. It took a bit of manual work myself, but it accomplished just that

BST 3.1.0 no fully supported

While importing a .qc with your enhanced .qc importer, it gives tons of error lines

And those at the end

RuntimeError: Error: Object 'ctm_fbi_variantf.qc_skeleton' already in collection 'Master Collection'
location: F:\Program Files\Steam\steamapps\common\Blender\2.82\scripts\modules\bpy\ops.py:201

Skip Tools option, skips [toolsblack]

Tools/toolsblack is not an invisible brush material, but is inherently effected by the Skip tools option.
Obviously this tool is used rather decoratively, and lacking it causes expected issues like this: https://i.imgur.com/RC1Jo10.png

-Lower importance: toolsblack needs also have zero specular, along with overlays/black_gradient

all of props fail to import

i decompiled cp_egypt_final_d from tf2 with bspsrc and when i import i get a lot of winerror 2 telling me that specific file was not found

Prop Meshes Not Instanced

Seems armatures for props are indeed instanced, but not at all the meshes. This creates a massive performance impact for large and high detail maps. I noticed this issue when trying to export to other softwares. Is this a blender issue? If it can be remedied, that would be great.

No tool materials

With the latest version, I dont happen to see any way to get materials for tools to import. They all come in wireframe, with no materials.

Obviously this is intended. But I just don't see an opt.

Importing with enhanced QC/MDL breaks BST importer

Steps

  1. Import an .mdl/.qc model using Import > Source Engine Model (enhanced)
  2. Try to import something else using standard Blender Source Tools Import > Source Engine
  3. Fails with the warning in console:
WARN (bpy.rna): c:\b\win64_cmake_vs2017\win64_cmake_vs2017\blender.git\source\blender\python\intern\bpy_rna.c:8161 bpy_class_call: unable to get Python class for RNA struct 'IMPORT_SCENE_OT_smd'

Background

I am using your importer because it makes the model material stuff a breeze (love it!), but I want to additionally import .dmx files for additional posing/animation.

Workaround

After I have imported the model in step 1, I disable-then-reenable the Blender Source Tools addon. This seems to fix the error, then I can continue with step 2.

image

Versions

  • Blender 2.82
  • Blender Source Tools 3.1.0
  • io_import_vmf 0.5.1

Fitting skybox onto map does not work properly.

Steps to replicate:

  1. Import the vmf
  2. Select the whole skybox while keeping skybox camera as active
  3. Transform the skybox

It seems the issue is that the skybox camera for some reason is rotated to 35 degrees causing the skybox to be rotated wrongly.

Rope locations as empties

Properly supporting ropes and wires would be nightmarish. But as an alternative, perhaps we could get rope locations, that we can use as pointers where we begin and end our own made ropes.

import material from custom folder

Just started using this addon and its amazing but i noticed when importing vmf that it only grabs the materials from the cstrike/materials folder but not the cstrike/custom/mapname/materials folder (this is in css, i dont think csgo has the /custom folder) which is a little annoying since its very good for keeping the folders clean.

If you could make it search the game/custom/whatever/materials folder as well as the game/materials this would almost completely replace the workflow i have in 3ds max when importing maps to 3d software.
(whatever being wildcard since you can name that folder anything but the structure should always be the same)

Trying to load from an non existing folder [Portal 2]

I'm not sure why this happened, but that's the only thing I can understand from the Error log.
When I try to load a custom map VMF, I have to turn off the models because somehow it tries to load from a non existing file

image

And it makes the whole thing look weird
image

Here's how I installed the addon, I figured perhaps I did something wrong
image

Suggestion: Add feature to resize 3D skybox to fit the actual map.

First of all, let me just say that this plugin is wonderful, way easier to use and less buggy than wallworm.

Some maps come with 3d skyboxes that can be below or above the map.

For example, here is the one that gm_construct uses:

It would be nice to add a feature or some tool that resizes the 3d skybox to fit the actual map as it would look like in-game.

If you add this feature it would be really appreciated.

A way to purge unused dependencies such as images, meshes or materials.

I'm not really sure in what context this would be used, but these couple lines of code delete any data mentioned above which don't have a user. This could potentially be expanded upon or compressed into less lines with other python functions, but i haven't gotten around to it :)

import bpy

for material in bpy.data.materials:
    if not material.users:
        bpy.data.materials.remove(material)
        
for img in bpy.data.images:
    if not img.users:
        bpy.data.images.remove(img)
        
for mesh in bpy.data.meshes:
    if not mesh.users:
        bpy.data.meshes.remove(mesh)

ropes/wires dont port

This obviously comes down to an issue between the different softwares. I could only suggest trying at using curves.

Make instructions more clear.

  • Usage part is still part of an instruction
  • Make a note that manually You only have to select pak01 as a vpk, not all of them
  • Add some gifs / make a short video on the instalation process ( I can help with editing if needed )
  • There is no mention what "Models path" does ( in the preferenced tab)
  • Make sure to highlight that You need to install a file called "io_import_vmf.zip" - otherwise it will not work

"shutil.Error" when importing maps

I tried building the source and had a lot of trouble with it, but when I got a build to import into blender, it would give me an error with any vmf I imported. It would be a great help if there was a tutorial for how to correctly build the source code.

Sky cubemap not porting

ERROR LOADING SKYBOX: ERROR LOADING CUBEMAP: UNSUPPORTED HDR FORMAT 3 Traceback (most recent call last): File "C:\Users\leath\AppData\Roaming\Blender Foundation\Blender\2.82\scripts\addons\io_import_vmf\import_vmf.py", line 234, in load output_res=self.sky_resolution, context=context, File "C:\Users\leath\AppData\Roaming\Blender Foundation\Blender\2.82\scripts\addons\io_import_vmf\import_vmt.py", line 1100, in load_sky image = import_vtf.load_as_equi(skyname, textures, output_res, hdr=hdr) File "C:\Users\leath\AppData\Roaming\Blender Foundation\Blender\2.82\scripts\addons\io_import_vmf\import_vtf.py", line 68, in load_as_equi raise Exception(f"ERROR LOADING CUBEMAP: UNSUPPORTED HDR FORMAT {image_format}") Exception: ERROR LOADING CUBEMAP: UNSUPPORTED HDR FORMAT 3

Map is TF2's plr_hightower, heres the textures https://drive.google.com/file/d/1IFhQGIe0m0vMu4UkUyJ3PElsqj--x7N2/view?usp=sharing

Certain props fail to import

The latern props from the TF2 japan pack fail to import.

`QC IMPORTER: now working on hanging_rope_lanterns01.qc
WARNING: Skipping "hanging_rope_lanterns01_anims\idle.smd"; no armature found.
WARNING: Skipping fps 0.01; no armature found.
WARNING: Skipping fps 0.01; no armature found.
QC hanging_rope_lanterns01.qc imported in under 1 second

ERROR LOADING PROP: 'NoneType' object has no attribute 'a'
Done in 0.015503406524658203 s
Imported 0 overlays (0) failed
Imported 0 props (1 failed)
Indexing game files...
Indexing done in 15.43020248413086 s`

If importing a full map with a bunch of props, these failed props become the same model as other existing props. Maybe find a way to turn failed props into something more stand out and obvious? Importing them standalone with Crowbar and Blender Source tools results no failure. Importing the decompiled model stored where created by blender VMF importer, also results in no failure with blender source tools. https://i.imgur.com/r9xRbE0.png

Here is the contents made by the VMF importer: https://drive.google.com/file/d/1u_jD9wPHwU_K-csTffGIoEIFVEQF1tmS/view?usp=sharing

Note, a few other latern props within this pack also fail.

light_environment: pitch doesnt exist

Traceback (most recent call last):
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\__init__.py", line 737, in execute
    importer.load(self.filepath, context, self.map_data_path)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\import_vmf.py", line 138, in load
    vmf = vmfpy.VMF(open(file_path, encoding="utf-8"), self._vmf_fs)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 763, in __init__
    entity_inst = self._parse_custom(VMFEnvLightEntity, "entity (light_environment)", entity, self.fs)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 138, in _parse_custom
    return parser(*args)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 428, in __init__
    self.pitch = self._parse_float_str("pitch", data)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 99, in _parse_float_str
    value = self._parse_str(name, vdict)
  File "C:\Users\aekna\AppData\Roaming\Blender Foundation\Blender\2.90\scripts\addons\io_import_vmf\deps\vmfpy\__init__.py", line 66, in _parse_str
    raise VMFParseException(f"{full_name} doesn't exist", self._context)
vmfpy.VMFParseException: VMF parsing failed: entity (light_environment) (id 50501) pitch doesn't exist

location: <unknown location>:-1


this happens when importing a portal 2 vmf. the file is too complicated/big for it to be of any help but i think this happens with other stuff too. a super simple fix would probably be to just code it to use the first of 3 numbers in the "angles" as a pitch when the pitch key is absent, since portal 2's light_environment doesn't use pitch, but uses angles.

my work-around is to simply add in the pitch key myself.

No sky material on port in place of HDRI

It appears no sky material has been made for the world background. If capable, maybe an option to automatically import the sky material and turn on/setup nodes for it.

Certain textures don't import, unpacked vpk's don't work.

1605994963726-wc
1605994979871-wc

This texture for example, doesn't seem to want to import from l4d2. I have it both installed as a game and extracted in a folder with all the other games, set in the wildcard option.

Models/textures don't seem to get picked up from extracted vpk's, since i have all the game data there, but now i seem to have to download and install those games just for this?

There are textures and models that don't have vpk's, how would i import those?

Update

So i needed to relaunch blender to re-index all the files. Unpacked vpk's don't seem to work though.

Some overlays fail to import

Hello, found another bug again, using the same vmf in issue #22

This time it seems that overlays are not scaled or in position correctly.

Hammer:

Blender:

Missing model causes whole VMF import to fail

image
Somehow while trying to import (newest 0.5.1 addon release) default gm_construct map it only imported alyx doll prop and absolutely nothing else. Tried to play around with various settings, but everything seemed to give the same results (only the LOD option generated 4 more lod models of alyx doll). The 0.4.1 version of addon was working arguably fine (half of the textures weren't loading for some reason, but at least all of the brushes/models loaded correctly) with gmod maps, so I'm guessing that this issue is somehow related to the new code.

The settings I used in BSPSource:
image

The paths of your addon:
image

The settings in the import window:
image

func_door_rotating and other brush entities cause failure

when importing maps with func_brush, func_door_rotating, trigger_catapult, and more, there is an error saying it is not a dict..or something. i don't remember exactly.

this especially happens when importing vmfs created for portal 2; even with correct game setup in the user preferences.

maybe there addon should detect when there are brush entities, and just ignore them? and only import the brush itself, since brush entities are useless in blender.

no module named 'vmfpy' error (Blender 2.82)

I installed the Source Tools (version 3.1.0) and then tried to install this addon. However, when I tried to enable it, it gave me the error shown in the screenshot. Does this addon rely on a specific version of Source Tools? If so, which one?
vmfpy

Any help would be appreciated... Thanks!

Importing models stops half way.

Did everything according to your youtube tutorial.
Importing stops at 13% with an error:

Python: Traceback (most recent call last):
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf\import_qc.py", line 346, in _load
fake_smd = FakeSmd.from_bst(SmdImporterWrapper.smd)
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf\import_qc.py", line 38, in from_bst
raise Exception("nothing was imported by Blender Source Tools")
Exception: nothing was imported by Blender Source Tools

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf_init_.py", line 737, in execute
importer.load(self.filepath, context, self.map_data_path)
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf\import_vmf.py", line 160, in load
self._qc_importer.load_all()
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf\import_qc.py", line 232, in load_all
self._load(name, staged)
File "\AppData\Roaming\Blender Foundation\Blender\2.91\scripts\addons\io_import_vmf\import_qc.py", line 348, in _load
raise Exception(f"Error importing {name}: {err}")
Exception: Error importing models/anubis/structures/pillar01: nothing was imported by Blender Source Tools

location: :-1

I also get a bunch of [WARNING] MATERIAL IS INVALID and [WARNING] UNSUPPORTED MATERIAL PARAMS before importing models starts.

2.79 and older too?

it shouldn't be so hard to do this... i have nothing against 2.8, it's just plugin compatibility reasons

Embedded bsp textures no longer working/missing

Steps to replicate:

  1. decompile a vmf using bspsource making sure to tick extraction of embedded files
  2. load vmf in blender pointing towards embedded files path


Edit: Seems that using simple materials makes them be found again.

Issue was found using 6c6f262

No apparent skybox origin

This obviously being the skybox camera. Having it appear as a blender Empty Axis would allow for easily fitting the skybox to the map and scaling it up.

add an enhanced mdl import option (decompile)

The concept : currently when you import an mdl it import with SourceIO, that addon is cool but not complete and has issues with charachter models. So my suggestion would be to add an option to decompile the mdl using crowdbar and importing the qc and smds using blender source tools, similar to qc import but that would be automatic

Slow import times

Dont mind me, just putting this up so I can ask about some possibilities, im loving this addon!
Would it be possible within the near future to split the workload between threads? Or doing dirty, and just having multiple instances of the software work on different chunks of a .vmf at a time?

Question: What is the best format to export with?

Was wanting to mess around with the vmf in other programs but i cant seem to export them without losing all the normal maps.

Have tried using fbx and dae but they dont seem to export very well.

Collision Model Import?

Can you add an option to get the collision model with the props? Can be useful for merging separate models.

Light related error

Several TF2 and LFD2 maps suffer from this errors such as
_light color with brightness doesn't have 4 values

GoldSRC map support?

Hey got a question about this plugin.

Does it support importing Gold Source maps?

weird error when importing

Indexing game files...
Importing model...
Importing model hwn2018_crocodile_mun_dee...
C:\Users\xeph\Desktop\hwn2018_crocodile_mun_dee\hwn2018_crocodile_mun_dee.mdl
D:\decompiledmodels
Decompiling with Crowbar 0.68: "C:\Users\xeph\Desktop\hwn2018_crocodile_mun_dee\hwn2018_crocodile_mun_dee.mdl" ...

Decompiling ".\hwn2018_crocodile_mun_dee.mdl" ...
Model version overridden to be 48.
Reading MDL file header ...
... Reading MDL file header finished.
Checking for required files ...
... All required files found.
Reading data ...
Reading MDL file ...
... Reading MDL file finished.
Reading VTX file ...
... Reading VTX file finished.
Reading VVD file ...
... Reading VVD file finished.
... Reading data finished.
Writing data ...
Reference mesh files:
hwn2018_crocodile_mun_dee.smd
Vertex animation files:
hwn2018_crocodile_mun_dee_01.vta
... Writing data finished.
... Decompiling ".\hwn2018_crocodile_mun_dee.mdl" finished.

Traceback (most recent call last):
File "C:\Users\xeph\Desktop\app\blender-2.83.0-windows64\scripts\addons\io_import_vmf_init_.py", line 922, in execute
qc_importer.load(splitext(relpath(self.filepath, root))[0], self.filepath, context.collection, root)
File "C:\Users\xeph\Desktop\app\blender-2.83.0-windows64\scripts\addons\io_import_vmf\import_qc.py", line 235, in load
return self.load_return_smd(name, path, collection, root).a
File "C:\Users\xeph\Desktop\app\blender-2.83.0-windows64\scripts\addons\io_import_vmf\import_qc.py", line 212, in load_return_smd
raise Exception(f"Decompiling model {mdl_path} failed")
Exception: Decompiling model hwn2018_crocodile_mun_dee.mdl failed

location: :-1

location: :-1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.