Re: [Algorithms] Simplified Dynamic Lighting For Animated Characters
Brought to you by:
vexxed72
From: Eric M. <ema...@um...> - 2001-08-31 01:43:50
|
Hey David, clever method. I never really thought of treating omni's and such as directionals at run-time. makes sense. Are all lights treated equally? (i.e. same falloff and intensity?) Could you give me an example of when you'd bake the lighting calculations, I'm having difficult thinking of one. It seems like if an objetc is dynamic, even if it does come to rest, it has the potential of moving again. do you handle such an event? Now, unless I missed something, it sounds like the method you described, while greatly simplifing the lighting calculations for T&L, still falls victim to the same "over-shaded" look I'm trying to avoid. hmm...maybe I should post a couple screens to demonstrate what I'm talking about seeing as how I'm having difficulty finding the right words.. :) thanks for the response cheers E. On Fri, 31 Aug 2001, David Hunt wrote: > Don't know if this completely relevant - but this is what I'm currently > doing which is also HT&L friendly. > For each moving object each frame I collect each of the affecting lights, > pick the heaviest n of them then replace them with faked > infinite/directional versions that approximate the same behaviour. Eg. A > point light becomes a directional light with direction light->object centre > and so on. > The advantage of doing this is that an infinite light is considerably > cheaper to do the light math on than any other type, it also unifies our > light model so we don't have to worry about any strange light type types > getting through to our render subsystem. > At this point your characters will look very directionally lit - to get > round this I juice a bit of each directional light off into the ambient for > the object - and hey presto. I also have timers running on all dynamically > lit objects which get reset each time it or a light near it moves, when the > timer gets to 0 I bake the lighting into the vertices and turn off dynamic > lighting. > > > David > |