Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Splitting Mesh on import? #13

Open
ethosaur opened this issue Nov 20, 2023 · 3 comments
Open

Splitting Mesh on import? #13

ethosaur opened this issue Nov 20, 2023 · 3 comments

Comments

@ethosaur
Copy link

Hi, I was curious could there be any way to split geometry on import? Currently it imports the whole bsp as one mesh, this causes a few issues, such as not being able to cull parts of the map since it all renders at all times, this isn't too big of an issue, because bsp maps tend to be very low poly overall, but it does also cause some issues like reflection probes not reflecting rooms properly, since it tries to stretch the reflection across the whole mesh.

Would it be possible to make it split brushes, based on if its been grouped in editor, or parts have been tied to an entity (doors, func_wall etc) or maybe an option of some kind on import.

I just started learning Godot and programming, so this tool has been pretty useful, but it would really help to have this work too if possible!

Thanks in advance!

@jitspoe
Copy link
Owner

jitspoe commented Nov 27, 2023

You should be able to make an entity -- something outside of the usual Quake entities, so don't do something like "func_group" -- then in your import settings map that to a scene that is just a static body. For example, you could assign a group of brushes to a brush entity called "split_world", then in the entity remap add a key of "split_world" and a value of "res://path/to/static_body_scene.tscn"

@victorbstan
Copy link

victorbstan commented Dec 29, 2023

You can also use "detail" and "wall" in standard Quake FGD, as well as of course the various funcs to split out meshes. The issue with putting things in detail and wall, and I imagine other custom times of group nodes, is that you'll get faces that are on both sides of the mesh hiding each other, and if you do lightmapping, it will waste memory/storage. (could be mitigated by using skip textures on those faces I imagine)

@jitspoe
Copy link
Owner

jitspoe commented Jan 3, 2024

Yeah, if you use this approach, you can apply a skip texture to the faces that are unneeded.

I don't think detail brushes will be separate from the worldspawn. Those just impact vis. You'll have to use a func_wall (or really any custom brush entity, as long as you have an entity remap defined on your import).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants