Notice: Trying to access array offset on value of type bool in /srv/http/osirion/tracker/scripts/details.php on line 222 FS#12 : Light Flare Occlusion

Project::OSiRiON

  • Status New
  • Percent Complete
    0%
  • Task Type Feature Request
  • Category src → render
  • Assigned To
    Stijn Buys
  • Operating System All
  • Severity Low
  • Priority Very Low
  • Reported Version Development
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Project::OSiRiON
Opened by Evan Goers - 2011-02-25

FS#12 - Light Flare Occlusion

Having light flares occlude behind objects would allow more detailed flares to be used. The following is a screenshot from Mass Effect, and is the back of the Normandy:
http://www.bioware.com/_commonext/images/me/screenshots/dlc/masseffect_01_1280x760.jpg

If this were tried in Osirion with a regular light entity and a similar flare texture, it would be partially visible from behind surfaces, which is not the desired effect as the light shouldn't be making a flare if it's seen from behind a wall. This is also the reason why most of the flares in Osirion are circular, because a horizontal flare(also known as the 'film-style' flare) is too difficult to get right when it can move in all angles.

In the end, this might actually lower performance a tiny bit because each flare has to be checked if it's behind a surface, but if a flare is completely blocked, it shouldn't render at all which would make up for the loss.

Q3 has several methods of doing this, including a timed fade, real fade, and instant.

Timed fade: when a flare becomes visible, begin rendering the quad and slowly increase its size and alpha from 0 until it reaches the size indicated by the entity. The rate of size increase is based on a simple timer.
Real fade: like timed fade, begin rendering the quad once visible but instead of using a fixed timer, only increase the size and alpha depending on how much of the flare is in view. I believe this is done via the size indicated in the entity, and is based on how much of it at its full size is visible(I'm guessing an invisible quad at max size is used to test this). This method is best because it can be tweaked to allow the flare to overlap the surfaces in front of it by a small amount, making it look very realistic.
Instant: the flare is instantly visible at max size and alpha as soon as the light entity's origin is visible by the camera.

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing