Area Rendering/Camera Customization
Symphony
Member, Developer Posts: 142
Currently, there are a lot of suggestions pertaining to client-side area viewing options. Some factors for motivations for changes include:
I'm going to split this discussion into three different subjects:
An area designer might use fog to obscure the terrain of a gloomy suspense filled haunted forest, making it difficult for adventurers to find their way out. This would be a futile design effort if the players could turn off the fog, see straight to the other side of the area, and lead their party directly to safety.
Area designers I've worked with are very particular about the look and style of the areas they make. As area designers are in control of fog levels, and ambient colors, perhaps it would be best to also allow them to set maximums for variable fog distance, placeable and tile rendering, force disable/enable contrast and vibrance shaders, with specific values or ranges.
However, there are certainly others who want to climb to the top of the mountain and screenshot the entire area to share and remember their accomplishment. Personally, if it is only a single frame, I would like it if there were options to allow a "best graphics" screenshot, automatically, even if the current settings are tuned for performance framerates.
There is also frequent mention of allowing not just textural levels of model quality, but also either automatic "Level of Detail" (LOD) high-poly/low-poly renderings for models up-close/at-range, but permanent higher/lower levels may be desirable as a setting for higher/lower performing machines.
It may be desired by the community not only to have a full option for framing the action, but even memorized/customized preferred angles, for quick overview toggling, perimeter scanning, and enemy targeting.
Additionally, the idea of continual development does allow some new camera considerations to take place. "unlocking" the camera from character-focus, to pan "off screen", "scry", "follow an arrow", "peer into the distance" or "focus on current target" are concepts that could be considered, and even the addition of multiple camera game objects could lead to a 3d NWN gaming experience, or the ability to "picture in picture" remotely view different parts of an area at the same time. This could also dramatically improve and expand the ability to create cutscenes.
Personally, instead of abusing adjustable gamma to see in extra dark places on dark monitors or in bright environments, I'd much prefer custom shaders be made, perhaps even toggle-able, to allow darkvision and low-light vision to give the camera a completely different viewing mode, akin to night vision goggle imagery and otherwise.
Here's the Trello card in the Input Trello.
Discuss!
- Increased machine power
New shader support
Area aesthetic design control
Player-friendly interfacing (convenient viewing/targeting)
Recent development (loss of "camera hak" exe's, removal of gamma slider)
I'm going to split this discussion into three different subjects:
- Area specification (for area designers)
Client video settings (for chosen performance / appearance compromise)
Camera features
Area specification:
There has been a lot of toolset requests. While the emphasis of efforts have been focused on the game client, certain modifications can be added to area property formats allowing for toolset specified graphical parameters that fall within this discussion. It may be the case that creators want to disable, when appropriate, access to some of the adjustable features here.An area designer might use fog to obscure the terrain of a gloomy suspense filled haunted forest, making it difficult for adventurers to find their way out. This would be a futile design effort if the players could turn off the fog, see straight to the other side of the area, and lead their party directly to safety.
Area designers I've worked with are very particular about the look and style of the areas they make. As area designers are in control of fog levels, and ambient colors, perhaps it would be best to also allow them to set maximums for variable fog distance, placeable and tile rendering, force disable/enable contrast and vibrance shaders, with specific values or ranges.
Client video settings:
NWN is played by a wide variety of machines. Because of its vintage, there are some who can barely play it on minimum settings, while others use their computers for far more demanding graphics performing games. However grass and fog render settings are "softcoded", it should be considered that some may need to "cut down" on the number of visible objects on the screen, so that the game remains playable, especially in dangerous and crowded environments with a lot of action taking place.However, there are certainly others who want to climb to the top of the mountain and screenshot the entire area to share and remember their accomplishment. Personally, if it is only a single frame, I would like it if there were options to allow a "best graphics" screenshot, automatically, even if the current settings are tuned for performance framerates.
There is also frequent mention of allowing not just textural levels of model quality, but also either automatic "Level of Detail" (LOD) high-poly/low-poly renderings for models up-close/at-range, but permanent higher/lower levels may be desirable as a setting for higher/lower performing machines.
Camera features:
While the removal of min/max parameters for pitch and zoom angles (E.G. Camera Hak) is the most popular of requested features, there has been a history (if a forgotten one) of either the game becoming poorly represented with unlimited viewing angles (holes in skyboxes, lack of ceilings, etc.), or even area designers feeling that "First person views" were not an angle they were designing for.It may be desired by the community not only to have a full option for framing the action, but even memorized/customized preferred angles, for quick overview toggling, perimeter scanning, and enemy targeting.
Additionally, the idea of continual development does allow some new camera considerations to take place. "unlocking" the camera from character-focus, to pan "off screen", "scry", "follow an arrow", "peer into the distance" or "focus on current target" are concepts that could be considered, and even the addition of multiple camera game objects could lead to a 3d NWN gaming experience, or the ability to "picture in picture" remotely view different parts of an area at the same time. This could also dramatically improve and expand the ability to create cutscenes.
Personally, instead of abusing adjustable gamma to see in extra dark places on dark monitors or in bright environments, I'd much prefer custom shaders be made, perhaps even toggle-able, to allow darkvision and low-light vision to give the camera a completely different viewing mode, akin to night vision goggle imagery and otherwise.
Here's the Trello card in the Input Trello.
Discuss!
6
Comments
So, to achieve what you are proposing would require the server to stream the area as the clients see more of it. The magnitude of the code change aside, this will also require a lot more communication. Which means more lag, and a serious drop in UX when lag hits, as you'd literally walk off the map. If you're worried about cheaters, fog is not on your side.
People do get lost in NWN in low visibility areas without "area streaming". Someone remotely determined could invalidate the the entire lighting engine, but that shouldn't be part of the design consideration of the delivered and unmodified product.
As far as things not stopping the "cheating" of anyone remotely determined, I don't think that should ever really be the goal for our purposes. There are many ways to cheat that simply don't occur to people or are too inconvenient to bother with except for the aforementioned determined, but you don't design for them. There is a difference between a one dude fiddling around with said data to briefly be the hero in a fictional fog scenario (which they could have done all this time) and having a button everyone knows about in the settings that says "disable fog, reveal map", for example In this instance, maybe leaving it as an ini setting that required a restart would have been better, because while they can still kill your atmosphere with ease, chances are they weren't going to appreciate it, anyway.
(Note that I'm not suggesting anyone was planning on including such buttons, heh, just trying to illustrate that it was never about how you're suddenly going to be able to cheat.)
Areas:
NWN2 had some features set per area, I think I remember bloom and color saturation as the most used. A mod maker could make a very vibrant and colorful faerie plane and a dark and sinister nightmare black and white horror just by fiddling with a few sliders.
Area properties as well as scripting functions to control and switch things live would be splendid. I believe NWShader also had a scripting method to allow advanced effects so having the new shader operate with some scripting module side would be good. I'm not sure how NWN EE intends custom shaders to work exactly but having them in haks might be a idea.
Clients:
I'd like to show things more than 50 units of distance but have this separate from rules and mechanics. Looking over the mountain from the peak and being able to see everything should not cause uncapped perception events.
That all said it's not all about per area but also per character. Blindness is one of those effects that is client side only while nobody else can see your screen just went black. It would be nice to have more of that kind of visual effect control too.
Camera:
Being able to control the camera might be interesting too. Right now the only camera altering effect I can think of is the camera shake but it might be interesting to experiment with a camera wobble for drunkenness or poisoned states. Scry is also something I have often thought about before, you can sort of do it with familiar possession and then setting familiar to cutscene invisibility but that isn't the best method for a number of reasons.
Darkvision and low-light are things I think about often, for an underdark there is nothing less immersive than either everyone can see perfectly or nobody can see anything. NWN2 had a version of this but it had some problems too, it would be nice to script control vision for this purpse. So a toggle feat or a spell could extend vision range, like improved darkvision feats extend the range. In this instance you would also need to be able to modify perception range rules and mechanics too if you want it to be accurate. I don't think NWN2 fiddled with ranges just colored dark areas in a lighter bubble.
Camera unlock is the override/hak everyone has so I don't even remember playing the game any other way.
Caution on compatibility - at least one popular camera unlock mod broke every cutscene we tested. Just saying.
I'd really like to see settings for shader effects configurable per area in the Area Properties. At minimum, I'd like to see DoF, Bloom, and Ambient Occlusion, with others available for more specialized effects like the already-mentioned darkvision, dream states, planar travel, etc. In my opinion, players should have a limited ability to override builders' settings. Module builders put a lot of work into making their creations look exactly how they want, and it would be discouraging if players could just make all that work for naught just by adjusting a few sliders. Shaders should largely be treated like lighting in that sense - a part of area design left to the individual builder's "vision."
Removing the limits from the camera view angle would be even more effective if there were improvements made to the Drive mode, allowing characters to be steered by the camera as in most other games, and enabling the kind of WASD movement that is commonplace for first- and third-person games.
As a player, I have to go with what makes the game fun for me, and honestly the way fog works in NWN is not fun for me. I found and installed a camera hack that removed fog and unlocked the camera for a longer viewing perspective and have never regretted it. I do occasionally try out content with fog 'on' just to check what its like, and while yes it often looks spooky and mysterious the first time thru, it quickly becomes frustrating trying to navigate.
So, while I can understand the author/artist side of things, I'd have to vote for an easy to use "Remove Fog" or Fog Density slider (with one end being 'off) be available as a client menu setting or client INI setting.
I'd also love to be able to set the distance where objects and creatures are rendered, so that with the improved visual distance I could actually see more content too. But I agree that perception *events* still need to be limited to tactical distance.
i have many thoughts and ideas on how to improve the areas in NWN.EE. So let get me started right away with what i´m thinking will never happen :
Shadowmaps! I have read in one of the earliest interviews on original NWN that there were thougths about shadowmaps/ areamaps. But because of the faster loading vertex shadow system it was abandoned, in short story!
So please bring back shadow maps. They are very nice and pretty easy to do in any 3d modeling app.
Adding a blend (sun) filter/ shader like in NWN2 or oblivion (to name just two games of old). I like this old filter and it´s also pretty easy to do for a modder. Or make the specular shader working finally . Because they never worked in the original game...
thank you and well that´s it for now
There is a workaorung using a blend option in the txi file but they then interfere with magic spells...
-JFK
a. unlock the camera so you can move it above the horizontal
b. set the minimum zoom level to the toons eyes or just above their head
c. make fog/view range a configurable item in game.
Please leave it that way!!!
I think there's talk of having ceilings added to tilesets, so I do hope the camera hack extension does creep in at the same time. Yes?
This is a board where you can vote for features: https://trello.com/b/Lb79bbgy/neverwinter-nights-input
This is a board showing what is currently under development: https://trello.com/b/K0C0i8wF/neverwinter-nights-enhanced-edition
This is what the city I'm building looks like in the toolset:
And this is what players see in game:
I really just want players to be able to see where they are going. A realistic eye level view creates a more immersive world.
And lets say there are archers up on the wall. How are you supposed to be able to target them if you can't see them?
-JFK
Nice looking areas!
After playing around with the values I think max pitch should default to 80 so you can get a proper third person view of a landscape without editing ini files. I'm guessing most players are like me and don't even know you can do that.
With that in mind, I wonder how practical it would be for the client to treat any fog distance set at the default or further (45+ meters) to instead be "scale based on video settings", while treating lower fog distances as an actual intentional fog value.
You basically need 2 views. A top down zoomed out tactical overview and an immersive eye level OTS view with a free look. DAO has a really good camera where you can quickly mouse wheel between these two views. And a free mouse look in the lower OTS view. It just works amazingly well giving you everything you need and quickly. I think the enhanced future graphics also need the best camera angles to do them justice.
And tilesets should have ceilings too.