Jump to content
The Dark Mod Forums

Custom frob idea


peter_spy

Recommended Posts

Yup, this is more like Bioshock / Dishonored kind of frob, only not that super shiny. I don't have any interactive objects in my FM yet, so I use what I can ;) This is my electric lamp model. It's a good example of an object with high specularity. Notice that standard TDM frob highlights mostly the shiny parts, while contrast remains similar. Cubemap frob looks more like a layer put on top of the object, that's why it's more distinct.

Link to comment
Share on other sites

Nice done, not exaggerated like i like it, btw while editing the fhDoom engine, i found idsoftware played with item highlight for Doom 3, but disabled it for the final game, i was able to enable it again and it was just the case of changing a bool from false to true, i also found that the material shader for it is still in the game and it also uses a cubemap.

itemHighlightShell
{
   nonSolid
	{
     	    blend add
	    cubeMap	env/sheen
            texgen	reflect
	    rgb		parm4
	}
} 

Unfortunately, is a pulse based highlight (on and off) system so it looks to obvious and in your face, but was cool to find how they did it.

Edited by HMart
  • Like 1
Link to comment
Share on other sites

  • 2 months later...

I couldn’t get the proper fresnel program to work

 

frob.vfp was designed to give a fresnel-like frob highlight, but it's unused because of a bug with TGA textures.

 

http://forums.thedarkmod.com/topic/8747-tweaks-to-frob-highlight/?do=findComment&comment=174954

http://forums.thedarkmod.com/topic/10129-tdm-commands-and-variables/?do=findComment&comment=199639

Some things I'm repeatedly thinking about...

 

- louder scream when you're dying

Link to comment
Share on other sites

Sorry, but I really don't like it. One of the worst thing with T3 and T4 was the horrid frob glow.

 

TDMs frob is perfect, not too bright, not too dark. When you know what can be frobbed, it's perfectly easy, and it's something we enjoy learning

about the game; what is touchable and what isn't. Making it obvious just ruins that discovery.

I have an eclectic YouTube channel making videos on a variety of games. Come and have look here:

https://www.youtube.com/c/NeonsStyleHD

 

Dark Mod Missions: Briarwood Manor - available here or in game

http://forums.thedarkmod.com/topic/18980-fan-mission-briarwood-manor-by-neonsstyle-first-mission-6082017-update-16/

 

 

Link to comment
Share on other sites

The default frob is far from perfect; it works well in the dark, but as I said above, finding what is frobable or extinguishing candles, in rooms which are better lit, can be a pain. This fake-fresnel frob is more pronounced and can be tweaked per material, so it's not so in your face, and it works more consistently.

Link to comment
Share on other sites

My 5 cents.

I don't like how TDM handles frob now. Each frobable material has these two extra stages, and not only it makes loading a map slower (because of extra data parsing) but it also adds extra draw call when an entity is selected.

Instead I would propose to highlight the entity in the standard ambient shader by simple color add. (cubemap wrap, etc).

This way once changed in the GPU shader code it would apply to all materials.

It would also allow different. configurable frob visuals.

  • Like 2
Link to comment
Share on other sites

We've had lots of proposals for alternate frobs over the years. It really takes a test-map, or at least a video, to get a good sense of whether a proposal is preferable to what we already have.

Link to comment
Share on other sites

Slightly tweaked frobs per material aren't unknown: tdm_pagan_orb_glow adds some white twice, which gives the orb a bluish frob glow.

I remember finding the frob highlight of textures/darkmod/wood/panels/beam_brown_old too dark to see easily; had I needed to keep that entity frobable I'd probably have tweaked the material def.

(I wondered whether it was a deliberate choice not to give bc_doublebass_* materials frob highlights: a frobable double bass will have only the strings highlighted. Whether that's helpful visual language probably depends on whether one intends to have the frob play a sound or pick up the entity.)

So there's something to be said for being able to control the frob highlight on a per-material basis.

Edit: quoting this here before I forget it's there:

It blends in a portion of _white plus a portion of the diffuse. This is 99.9% effective but there were a few dark textures we had to boost that portion. I recall dark bottles were hard to see. The padlock also. [...] We may from time to time find a texture that needs adjusting. Fortunately its settable individually in every material.

Edited by VanishedOne

Some things I'm repeatedly thinking about...

 

- louder scream when you're dying

Link to comment
Share on other sites

  • 3 months later...

You asked for more tangible example, so here it is:

 

 

This is a bit refined version, although it's probably not that much visible in the video. This material actually uses the same cubemap twice: first stage uses specular texture as alpha to give the grate a subtle shimmer to indicate it's interactive. It's not very pronounced, as lights make the cubemap more dim. But, it's very useful for finding objects in darker scenes. Second stage is actual frob and it uses diffuse texture as alpha, so it's a bit more pronounced.

  • Like 3
Link to comment
Share on other sites

Also, I was a bit worried that in stronger lighting this frob will be less visible, which often happens with standard frob. But, instead of making material instances for different situations, you can just add parm3 to the alpha value and then set it in the model. So the base alpha value in the material can be, e.g. for models lit only with ambient_world (with shaderparm3 = 0). And if you need stronger outline for frob, e.g. in well lit room, you increase shaderparm3 value. For example:

 

Shaderparm3 = 0

obraz.png

 

Shaderparm = 0.5

obraz.png

 

Code:

	// Frobable object outline
	
	{
		maskcolor
		map makealpha (texture)
		alpha .2 + parm3		// modify it as you wish, set shaderparm3 in the model to at least 0!
	}
	{
		blend gl_dst_alpha, gl_one
		maskalpha
		cameraCubeMap	fake_fresnel_cubemap
		texgen		reflect
        }
	
	//	Better frob
	
	{
		if ( parm11 > 0 )
		maskcolor
		map makealpha (texture)
		alpha .4 + parm3	// modify it as you wish, set shaderparm3 in the model to at least 0!
	}
	{
        if ( parm11 > 0 )
		blend gl_dst_alpha, gl_one
		maskalpha
		cameraCubeMap	fake_fresnel_cubemap
		texgen		reflect
        }
Edited by Judith
Link to comment
Share on other sites

I really like what I am seeing. It looks a bit odd on the screenies, but in the video it looks good to me (strange, I know).

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

  • 2 months later...

@Judith could you do a video showing the new fron on some stock items..?

 

Should have done this long time ago, but here goes. This is the default frob in action. Notice that in such lighting conditions it's hard to tell whether these chalices are loot or not, especially if player is in a hurry, sweeping the room in a risky move:

https://www.dropbox.com/s/8r0khi00f00s73i/frob_default.mp4?dl=0

 

Now this has both an initial outline for interactive objects, and the new frob. You may argue that the white outline doesn't fit here, maybe something more orange would be more suitable. And I agree :) Still, IMO with that kind of frob player can see better what's interactive and what's not:

https://www.dropbox.com/s/yaobhqqrk8sv51c/frob_new.mp4?dl=0

  • Like 1
Link to comment
Share on other sites

I like this alot, its very T4 inspired and the frob is both easier to see while at the same time being less garish and in your face as it is now!

 

Have you approched the team about getting this added to the core mod..?

 

Thanks! No, I didn't think about adding it to the core mod yet. I'll add it as a feature proposal in the bugtracker. But I think it might need refinment and more extensive tests (not just loot but doors, junk objects, etc).

 

It looks to me as if in the two videos the lighting on the candle holders differs in unfrobbed state too. They seem to be brighter in frob_new.mp4 . Unfrobbable items like the vases seem not to be affected.

 

Great, that means my idea works ;) That's the "frobable object outline" code at work. That said, this is a gameplay-changing feature i.e. it helps the player see what's static and what's interactive. It might be better if it was left optional, as originally TDM doesn't do that. The way I see it, TDM model of presenting interaction is more like Thief 1-2. What I'm proposing here is more like Dishonored and the like, only a bit more subtle. There are still more tests needed IMO. The outline may work for loot, but what about doors or junk objects? I'm not so sure about that. Best PoC would be a complete list of shaders modified for e.g. Tears of Saint Lucia or A New Job, to see how it works as a system. I have a lot on my plate right now, so no promises, but I'll get back to it, sooner or later.

Link to comment
Share on other sites

BTW: What is "texture" in your code referring to? Is it the diffusemap or do you use a standard texture material-independently?

 


Best PoC would be a complete list of shaders modified for e.g. Tears of Saint Lucia or A New Job, to see how it works as a system.

This should be doable via a script, similar to the one modifying missions for I18N. So you don't have to change all materials manually.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

BTW: What is "texture" in your code referring to? Is it the diffusemap or do you use a standard texture material-independently?

 

For the chalice, I used its normalmap for the outline, as it's a bit more subtle. I used diffuse for the actual frob. You can also use _white in both cases, but it looks more like a plastic wrap or TDS-like frob.

 

Code:

	// Frobable object outline
	
	{
		maskcolor
		map makealpha (models/darkmod/props/textures/gold_chalice_ornate_local) // Object normalmap for outline mask
		alpha .5		// modify it as you wish
	}
	{
		blend gl_dst_alpha, gl_one
		maskalpha
		cameraCubeMap	env/fres
		texgen		reflect
    }


	//	Better frob
	
	{
		if ( parm11 > 0 )
		maskcolor
		map makealpha (models/darkmod/props/textures/gold_chalice_ornate)
		alpha .3		// modify it as you wish
	}
	{
        if ( parm11 > 0 )
		blend gl_dst_alpha, gl_one
		maskalpha
		cameraCubeMap	env/fres
		texgen		reflect
    }

Btw. one thing against the "frobable object outline" is that it adds to the drawcall and triangle count of a model (two additional stages). The frob itself is not an issue, because it doesn't add anything to the scene unless you're highlighting an object. That's why I'd also exclude "junk items" from the outline, since many missions use them extensively.

Link to comment
Share on other sites

I changed a bunch of material files and replaced the standard frob. I ended up using _white so I could replace the code faster. Unfortunately, there's no one-size-fits-all solution in this case. Some objects look pretty decent, other, especially those with darker textures, not so much. Doors and boxy stuff looks like from TDS. This would need tweaking per object. Here are the material files, make sure you backup the originals before using these:

 

https://www.dropbox.com/s/n2xjugnmwhle0rm/01_new_frob_materials.zip?dl=1

 

Edit:

 

Oh, and to properly use these, you need to put this cubemap in the mod env folder: https://www.dropbox.com/s/z8ce4kxy4xakgdc/env.zip?dl=1

Edited by Judith
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

    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
    • OrbWeaver

      I like the new frob highlight but it would nice if it was less "flickery" while moving over objects (especially barred metal doors).
      · 4 replies
    • nbohr1more

      Please vote in the 15th Anniversary Contest Theme Poll
       
      · 0 replies
    • Ansome

      Well then, it's been about a week since I released my first FM and I must say that I was very pleasantly surprised by its reception. I had expected half as much interest in my short little FM as I received and even less when it came to positive feedback, but I am glad that the aspects of my mission that I put the most heart into were often the most appreciated. It was also delightful to read plenty of honest criticism and helpful feedback, as I've already been given plenty of useful pointers on improving my brushwork, level design, and gameplay difficulty.
      I've gotten back into the groove of chipping away at my reading and game list, as well as the endless FM catalogue here, but I may very well try my hand at the 15th anniversary contest should it materialize. That is assuming my eyes are ready for a few more months of Dark Radiant's bright interface while burning the midnight oil, of course!
      · 4 replies
×
×
  • Create New...