Giter VIP home page Giter VIP logo

skarndev / umodel_tools Goto Github PK

View Code? Open in Web Editor NEW
59.0 7.0 10.0 4.07 MB

A Blender add-on featuring import of Unreal Engine games static meshes and maps. It provides basic support for many UE games, while some have dedicated improved support.

Home Page: https://skarndev.github.io/umodel_tools/

License: GNU General Public License v3.0

Python 100.00%
3d add-on atomic-heart blender blender-addon hogwarts-legacy machinima ninjaripper unreal-engine game-development

umodel_tools's People

Contributors

skarndev 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

umodel_tools's Issues

tga on import not working

Whenever I choose tga instead of png from the dropdown menu on import, the dropdown menu continues to say png. The meshes import without textures.

Hogwarts Legacy
Blender 3.4.0
Tried your 1.03 and 1.02 release.

Incorrect rotation for parented doors (Hogwarts Legacy)

These doors are rotated 90 degrees by Z axis. They have the attach parent property, which points to a SceneComponent. The other cases of such parenting seem to work correctly, no structural difference in the JSONs though. This makes me think the door template has a sort of an open / close state? Does not explain the archway though. Could be not a bug.

Model: SM_HW_DoorwayMedium
Map: SUB_ClockTower

image

Implement multiprocess asset import

The import of assets during the batch asset import can be parallelized by running a pool of background Blender instanced as import workes, which would allow utilizing multiple CPU cores.

The main challenge is synchronization. The assets may depend on the same resource, and we need to make sure it is not processed simultaneously by separate workers.

Import .props.txt materials parameters to the object?

Hey, I discovered this addon from the link here: https://www.gildor.org/smf/index.php?topic=8549.0

In the description it said that it is able to extract material information from .props.txt and import .psk/.pskx. However, when using the addon, it only checks for json files. Was this feature scrapped from the project? I have exported game assets (static meshes, textures, material settings) that I'd like to import to Blender for easy texturing and rendering. Is it not possible to do with this tool?

Masked materials are not getting correct colors all the time (Hogwarts Legacy)

The masked materials are heavily used in this game on things like rugs. They support tweakable coloration based on 3 alpha layers obtained through MSK texture. It is currently not clear how to mix those correctly. Some rugs work okay, some have incorrect coloration.
Best observed in the Gryffindor common room, sincethere are a lot of rugs.

Implement asset preview thumbnail generation

The addon is currently not able to render asset previews for imported assets, even though they are added to the asset library. So, the external addon Asset Browser Utils have to be used for this purpose. Ideally, it would be nice to support this locally.

Implement simplified paremeterizable generic profile

It is possible to display some settings in Generic game profile, which would allow users to associate the material map types with their node generators. This is particularly useful for people not familiar with programming to allow them creating basic profiles.

Blended materials use only 1st texture (Hogwarts Legacy)

The game support module for Hogwarts Legacy does not yet support blended materials.
The materials are meant to be blended using the vertex color.
The vertex color is already handled by .psk importer, the texture layers are distinguished by A, B, C letters.
The layers seem to be using height based blending as well using MROH/SROH maps.
Reference (3 layer blend):

image

conflict with latest installed io_scene_psk_psa 5.0.5

Minor issue with a conflict between having a pre-installed version of io_import_scene_unreal_psa_psk version 2.8.0 and the one coming from the third-party dependency.

If you have installed io_import_scene_unreal_psa_psk and then try to enable UModel_tool, you'll get the error below. It would appear that the search path (does Blender python use PYTHONPATH? not familiar with it) gets picked up if you've installed the other addon independently (even if not enabled).

Also, it seems the loading path and files are cached, as if you were to uninstall the conflicting addon, it won't fix things until after restarting Blender. Same for the opposite direction, installing the other addon and then umodel_tool does not cause an issue it seems until after restart.

Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\scripts\modules\addon_utils.py", line 369, in enable
    mod.register()
  File "C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\umodel_tools\__init__.py", line 50, in register
    auto_load.init()
  File "C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\umodel_tools\auto_load.py", line 32, in init
    modules = get_all_submodules(Path(__file__).parent)
  File "C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\umodel_tools\auto_load.py", line 65, in get_all_submodules
    return list(iter_submodules(directory, directory.name))
  File "C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\umodel_tools\auto_load.py", line 70, in iter_submodules
    yield importlib.import_module("." + name, package_name)
  File "C:\Program Files\Blender Foundation\Blender 3.6\3.6\python\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\umodel_tools\asset_importer.py", line 8, in <module>
    from io_import_scene_unreal_psa_psk_280 import pskimport  # pylint: disable=import-error
ImportError: cannot import name 'pskimport' from 'io_import_scene_unreal_psa_psk_280' (C:\Users\harley\AppData\Roaming\Blender Foundation\Blender\3.6\scripts\addons\io_import_scene_unreal_psa_psk_280\__init__.py)

This is a minor issue, as one could rename the io_import_scene_unreal_psa_psk addon and circumvent this issue, or just uninstall it if you're not going to use it.

Versions:
Blender 3.6
io_import_scene_unreal_psa_psk 2.8.0
umodel_tools 1.0.4
Windows 11

more Import options

Hey. I want to import the files from blender back to unreal. However unreal does not support the material system of blender fully. Can you make an option to only import the BaseColor texture and normal texture? Instead of the current PBR option where the BaseColor gets wired through a mulitply node.

Blend file is empty

I use this tool to extracting ark survival game. But when i open .blend files. it doesn't show anything.
image

Non-diffuse textures importing as sRGB

SROs, MROs, normal maps, and basically every texture that isn't a diffuse are all importing in the sRGB colorspace when they should be set to non-color data. Only the diffuse should be in sRGB. The normal map especially produces odd, almost furry, light sucking results when set this way.

image

Sorry to have something else to report so soon, but I do thank you for fixing the last thing so fast and for creating such a fantastic tool! I'm something of an environment enthusiast, so this thing is a blast to work with.

No module named 'ordered_set'

I would like to install the plugin in Blender 3.5, Blender 2.95 and Blender 3.6, but didn't work.

Traceback (most recent call last):
File "C:\Users\WDAGUtilityAccount\Desktop\blender-3.5.0-windows-x64\blender-3.5.0-windows-x64\3.5\scripts\modules\addon_utils.py", line 333, in enable
mod = import(module_name)
File "C:\Users\WDAGUtilityAccount\Desktop\blender-3.5.0-windows-x64\blender-3.5.0-windows-x64\3.5\scripts\addons\umodel_tools_init_.py", line 32, in
from . import auto_load # nopep8 pylint: disable=wrong-import-position
File "C:\Users\WDAGUtilityAccount\Desktop\blender-3.5.0-windows-x64\blender-3.5.0-windows-x64\3.5\scripts\addons\umodel_tools\auto_load.py", line 6, in
from ordered_set import OrderedSet
ModuleNotFoundError: No module named 'ordered_set'

errors on install

hi, i m running in some errors on installation.
i made a 1 click addon installer which installs the addon and requirements.txt, but i run in some issues:
install_umodel-error

C:\Users\hanne\AppData\Local\Temp\plugget\blender\umodel-tools\latest\umodel-tools\umodel_tools
Traceback (most recent call last):
  File "C:\Program Files\Blender Foundation\Blender 3.2\3.2\scripts\modules\addon_utils.py", line 335, in enable
    mod = __import__(module_name)
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\modules\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\__init__.py", line 32, in <module>
    from . import auto_load  # nopep8 pylint: disable=wrong-import-position
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\modules\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\auto_load.py", line 6, in <module>
    from ordered_set import OrderedSet
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\modules\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
ModuleNotFoundError: No module named 'ordered_set'
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\utils.py", line 10, in <module>
    from . import preferences
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\modules\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\preferences.py", line 6, in <module>
    from . import game_profiles
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\modules\shiboken2\files.dir\shibokensupport\__feature__.py", line 142, in _import
    return original_import(name, *args, **kwargs)
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\game_profiles\__init__.py", line 16, in <module>
    class GameHandler(t.Protocol):
  File "C:\Users\hanne\AppData\Roaming\Blender Foundation\Blender\3.2\scripts\addons\umodel_tools\game_profiles\__init__.py", line 56, in GameHandler
    ao_mix_node: bpy.types.ShaderNodeMix,
AttributeError: 'module' object has no attribute 'ShaderNodeMix'

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.