Jump to content
The Dark Mod Forums

func_static renaming makes it dissapear


Recommended Posts

I think I found a bug. :)

 

I created a patch, and a brush. The patch I copied and rotated and fit it to the other end of the brushcylinder. Then I converted these three objects to a func_static. Now when I go into the entity editor and click on name it has the default generated name func_static_1. When I changed that name the entity dissepears. I also saved it to disc and looked into the map, but it was nowhere to be found.

 

I think I found the reason. Apparently a func_static, that is converted in such a manner doesn't really have a model, so it associates the name with the model. Now when I changed both, the name and the model, then it was back again.

 

I don't know if this is possible, but I think in such cases it would be good if the editor would automatically replace both entries, instead of only the one.

Gerhard

Link to comment
Share on other sites

That's a known issue (http://bugs.angua.at/view.php?id=263), and I even had a go at it once, but my solution didn't work out.

 

I'm afraid this can't be solved on a low level (the Doom3Group class itself), but I have another idea that would involve the Entity Inspector, which could catch "name" key changes of func_statics.

Link to comment
Share on other sites

Yes, that't what I meant where it should be implemented. I'm just not sure if you can reliably detect such a specific "brush" entity from some other entity which has a real model assigned and the name is just the same as the model.

Gerhard

Link to comment
Share on other sites

It is of course possible to detect them, because if it weren't possible we wouldn't have func_statics at all. If a mapper has a "real" model and assigns the same "name" == "model", it's his own fault.

 

The problem with my first solution attempt was that if I changed the model key accordingly at low-levels, some nasty Callbacks were triggered which had unwanted side-effects.

 

Tackling this on a high-level is not exactly cool, because this algorithm shouldn't be implemented there - but if I can't think of any other solution, this would be the way to go.

Link to comment
Share on other sites

The problem is that both the "name" and "model" keys already have callbacks and start to interfere. I already tried to disable the callback temporarily to be able to change the "model" key without interference, but this broke the func_statics on map load (the spawnargs are set in no specific order and there were cases where the func_static wasn't recognised any more).

 

This whole design that func_static can be used for "real" models and for static world geometry is pretty cumbersome in the editor.

Link to comment
Share on other sites

Can you put in a mutex, e.g.

 

bool _blockCallbacks;

 

in the class definition, and then

 

// Name callback
{
if (!_blockCallbacks && currentName == currentModel) {
	_blockCallbacks = true;
	setModelKey(newName);
	_blockCallbacks = false;
}
}

// Model callback
{
if (!_blockCallbacks && currentName == currentModel) {
	_blockCallbacks = true;
	setName(newModel);
	_blockCallbacks = false;
}
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • OrbWeaver

      Has anyone had any luck with textures from Polyhaven? Their OpenEXR normal maps seem too washed out and give incorrect shading in the engine.
      · 4 replies
    • datiswous

      I tried to upscale the TDM logo video. First try:

      briefing_video.mp4 You can test it ingame by making a copy of the core tdm_gui.mtr and place it in your-tdm-root/materials/ , then edit line 249 of that file into the location where you placed the new briefing.mp4 file.
      What I did was I extracted all the image files, then used Upscayl to upscale the images using General photo (Real-Esrgan) upscale setting and then turn it back into a video.
      I might have to crop it a bit, the logo looks smaller on screen (or maybe it's actually better this way?). My video editor turned it into a 16:9 video, which I think overal looks better than 1:1 video of original.
      · 1 reply
    • nbohr1more

      Trying to be productive on my down-time before Capcom releases Akuma and my son is constantly on my PC playing Street Fighter...
      · 1 reply
    • OrbWeaver

      Finally got round to publishing a tutorial on baking normal maps in Blender, since most of the ones we have are inaccessible or years out of date.
      · 2 replies
    • nbohr1more

      The FAQ wiki is almost a proper FAQ now. Probably need to spin-off a bunch of the "remedies" for playing older TDM versions into their own article.
      · 1 reply
×
×
  • Create New...