It's hard to believe it's been almost five years since the launch of Sony Online Entertainment's EverQuest II. While the world of Norrath has certainly evolved so has the technology bringing it to us. With advances in CPU's, graphics cards, and programming there is plenty of modifications which can bring us a more polished game. On the front lines of such changes are folks like Ryan "Imago-Quem" Favale who spearheads graphical programming and uses fancy terms that strike fear into the heart of the unlearned. Ten Ton Hammer had the opportunity to ask Ryan a few questions about the graphical upgrades coming to EverQuest II, and he shared a little of what to expect.

Ten Ton Hammer: Thanks for talking with us. How long have you been with SOE and what do you do?

I’ve been with SOE for 8 months as of March 14th, 2009.

I’m the graphics programmer for EverQuest II.  This means I’m responsible for how things look in EQII as it relates to visual effects like texturing, shading, lighting, shadowing, glowing, blurring, reflecting, refracting, etc..  Right now the EQII engine is fully functional so what I do is fix any of these things that are broken, extend their functionality, optimize their performance, and add other new graphical effects the engine currently does not have.

Ten Ton Hammer: Well then you would be the perfect person to tell us about the changes being made to shading.

style="margin: 10px; border-collapse: collapse; float: right; width: 200px;"
border="1">

href="http://www.tentonhammer.com/node/65922"> src="/image/view/65922/preview"
style="border: 2px solid ; width: 200px;">

Notice this shadow versus the other one

I’ve worked in all shader versions throughout my career from version 1.1 all the way through 4.0.  Using this knowledge base we’re currently evaluating techniques to upgrade performance in the area of shaders while maintaining backwards compatibility.  Shading is a vague term and could technically apply to my entire expertise.  There are a lot of possibilities going forward, including extra special effects, and we’re making sure we’re planning the right ones for our players.

Ten Ton Hammer: You've mentioned on the forums many shadows will move from CPU shadows to GPU shadows?  Can you explain the difference to those who might not quite grasp the technicals?

Yes, a new technique called shadow maps was implemented for the new GPU shadows.  They do not remove the option for the current CPU shadow system.

The current CPU shadow system works by casting a ray from the light through the silhouette edges of every object.  This builds a volume.  Anything inside the volume does not receive light.

Shadow maps is a relatively new technique used in more and more games today.  Since EQII’s current engine uses almost exclusively 1.1 Shaders the new shadow system required a specialized shadow map technique integrated within the shading layers of EQII.  This was developed specifically for the EQII engine.   

In general shadow maps are created by drawing all objects from the point of view of the light and also from the point of view of the player.  The depth’s are recorded per pixel per object and compared between each view to determine which pixels the player can see and the light cannot.  Light is generally omitted from these pixels.  Usually multiple shots are taken from the view of the light to increase quality.

The EQII CPU Shadow Volumes require geometry for all shadows being casted.  This means anything that has transparent pieces, like tree branches, cannot cast shadows using Shadow Volumes.  The new EQII GPU Shadow Maps cast shadows through transparent pieces.

The EQII CPU Shadow Volumes are very sharp, contrary to what we see in reality in the majority of cases.  They cannot be fuzzy on their edges.  With the GPU Shadow Map technique we are able to blur the edges of the shadows to make them look much more realistic.

The GPU Shadow Maps also solve some silhouette edge tracing issues the CPU Volume Shadows have with flat objects like very thin cloth, armor, or other objects very thin.

Depending on your hardware setup you can receive a significant performance boost, eliminating those choppy screens, and keep your environment shadows on.  We’ve seen speeds up to 200% using the new GPU Shadows compared to the current CPU Shadows.

Ten Ton Hammer: I'm just going to nod my head and smile like I completely understand. Was this primarily an optimization of the EverQuest II engine or something to make the game look better?

Both. 

Ten Ton Hammer: So how did the idea to do this get started? 

It started with a CPU shadow bug.  Holes were showing up in some armor sets.  We found these holes could not be patched without an entirely new shadow system or all new, more expensive, art work.  The idea of a new updated shadow system got the art team all excited, so we made plans to investigate.  After getting my hands dirty with the engine we realized a new shadow map system would need to be invented for the EQII engine in order to work with its current framework.  There was talk of shadow maps being faster than CPU shadow volumes.  It was hard to say how much or if at all from the beginning.  In general we knew GPU shadow maps should, in theory, be faster when there are lots of objects creating shadows.  After prototyping we knew point light shadow maps would need to be a separate, more sophisticated feature (due to 6 extra scenes rendered per light), and so we shot for sunlight shadows alone.  As the work progressed, more and more “good looks” were added (eg. dynamic leaf shadows, fuzzy edges, fading).

Ten Ton Hammer: Good looks are always beneficial but were the changes possible from advances in hardware/software or was this just better programming?

These changes were possible from advances in hardware speed and capabilities.

style="margin: 10px; border-collapse: collapse; float: left; width: 200px;"
border="1">

href="http://www.tentonhammer.com/node/65923"> src="/image/view/65923/preview"
style="border: 2px solid ; width: 200px;">

Does this look better?

Ten Ton Hammer: Now to the important question, what kind of system will players need to see a noticeable difference? I know a few people who try and laptop it.

EQII’s GPU Shadow Maps require a Shader Model 3.0 supporting card with R32F render target support.  These cards are relatively cheap today.

Ten Ton Hammer: In which areas or objects will the changes be most obvious?  Are there any specific zones you think people will be impressed with?

The current GPU Shadow Map upgrade is written exclusively for sunlight, and “moonlight”, shadows, so you’ll only see them when your character is outdoors.  Nearly all outdoor zones will display the new GPU shadows.  The more architecture, objects, and characters in view the more gain you should see in performance as opposed to the CPU shadows.  A lot of Qeynos zones have trees in them you can observe the new shadows on.  Also, the griffins and other birds will show their feathers now with GPU shadows.

Ten Ton Hammer: Qeynos does have trees doesn't it? I should stop and look around for once. Ok last question. Are there similar graphic changes planned after this update is completed?

I’d love to create and integrate point light shadow maps (for fire-pits, torches, indoor lighting, etc.) into the system, but there is no concrete plan available to present at this time.

Well there you have it, some graphical changes are coming and it should make the game shinier for almost everyone. While there is no specific ETA on when they'll be implemented they have been taking feedback on the Official Forums for some time. You can see the changes on the Test server right now but look for them to hit Live sometime in the very near future.


To read the latest guides, news, and features you can visit our EverQuest II Game Page.

Last Updated: Mar 29, 2016

Comments