Giter Club home page Giter Club logo

blender_bsp_importer's People

Contributors

illwieckz avatar somaz 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

blender_bsp_importer's Issues

[shaders] implement fog

Shader attribute fogParms is not implemented. Also pull the fog brush from the bsp to get the complete volume instead of relying on the fog surface.

[shaders] implement portals

Mirror shader stages aren't implemented. Shader attribute portal needs to be recognised. Maybe implement alphaGen portal too.

[bsp] incorrect texture coordinates on planar patches

The addon doesn't cull rows and colums. It uses controll points for interpolating texture coordinates which doesn't happen in id tech 3 because it culls the interpolated data on planar patches. This leads to false texture coordinates in the blender import.

[general] PK3 VFS

Adding a virtual file system will remove the need of unpacking all the map data. Supporting multiple base paths will be much easier too once the virtual file system is incorporated.

Since blender doesn't offer image loaders from bytestreams, we need to add a temporary folder where textures get unpacked to when needed.

Error importing JK III:JA map

after unpacking all .pk3 and installing the plugin on blender 2.83 I get this error when I try to import a map.
Error

further information:

  • unpacked at c:/desktop in a folder called JKIII
  • this folder is also set as the base folder in blender plug in preferences.
  • JKIII is the Steam-Version
  • After import, only the props are getting importet.

feel free to ask, if you need more information. Thank you in advance

[lightmaps] Baking deluxemaps

Id tech 3 deluxemaps refere to a texture storing an averaged light incident vector, which is used to get normal mapping on lightmapped surfaces in some id tech 3 engines. There are two different types of deluxemaps. World space and tangent space ones. Engines typically only support one type of deluxemap.

Exception when enabling the plugin on M2

Hello,
I am using a MacBook Air with an M2 processor and when I attempt to enable the v0.9.634 of the Addon on Blender 3.6.10 and Blender 4 (latest version as of this date), I get this exception:

addon_utils.disable: import_bsp not disabled
addon_utils.disable: import_bsp not disabled
Modules Installed (import_bsp) from '/Users/yasirnacak/Blender Models/import_bsp.zip' into '/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons'
Traceback (most recent call last):
  File "/Applications/Blender.app/Contents/Resources/3.6/scripts/modules/addon_utils.py", line 333, in enable
    mod = __import__(module_name)
  File "/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons/import_bsp/__init__.py", line 42, in <module>
    from . import UI
  File "/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons/import_bsp/UI.py", line 21, in <module>
    from . import BspClasses
  File "/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons/import_bsp/BspClasses.py", line 17, in <module>
    from . import QuakeShader
  File "/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons/import_bsp/QuakeShader.py", line 28, in <module>
    from . import QuakeSky
  File "/Users/yasirnacak/Library/Application Support/Blender/3.6/scripts/addons/import_bsp/QuakeSky.py", line 155, in <module>
    shader = gpu.types.GPUShader(vertex_shader, fragment_shader)
Exception: Shader Compile Error, see console for more details

[shaders] implement missing texture maps (RTCW / ET specific)

(RTCW / ET specific)

  • implicit
  • implicitBlend
  • implicitMask
  • $dlight

----------------------------- probably mostly unused:

  • map32// only use this texture if 16 bit color depth
  • mapcomp// only use this texture if compression is enabled
  • mapnocomp// only use this texture if compression is not available or disabled
  • animmapcomp// only use this texture if compression is enabled
  • animmapnocomp// only use this texture if compression is not available or disabled

Add reimport functionality

Add vertex color export and import. This will help with new iterations of maps when mapping.

Paint a map, save color data, later import new iteration of map, import color data.
Color data will be stored based on position. Multiple precision level will be stored, so that moved vertices still find a match.

[ent] entites with model2

Currently the addon only shows either the burshwork or the model in the model2 key. Need to show both.

Different basepaths for different games

It would be handy if you could set different base paths for different games, so you don't have to overwrite them everytime you want to load a map from a different game.

Blender 3.0 support

There are two occurences of variables that are named now in the blender api. Still need to check full functionality after fixing these.

[lightmaps] export correct number of lightmaps when using external lightmaps

Imported a BSP with two external lightmaps
Extended to 4 Lightmaps by placing LightmapUVs on empty space on the atlas
Bake lightmap
Patch BSP (Lightmaps UVs, Lightmaps, External, Flip, Delete LMs)

Result:

lm_0000 and lm_0001 were written as tiles from the atlas, lm_0002 and lm_0003 ommited
I created them manually using Photoshop and they do work. Meaning UV transfer was successful, registering of the lightmaps as well - just the export did not work.

The external lightmaps had an initial resolution of 4096² and the atlas of 4 lightmaps was 8192²

What works fine was using smaller resolutions or patching BSPs that had only internal lms.

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.