The saga continues!

The problem basically is that a certain flag for effects, which forces it
to get rendered just before the view model and out of the leaf system (
FLAGS_DRAW_BEFORE_VIEW_MODEL ), is not working properly.

There's a function CParticleMgr::DrawBeforeViewModelEffects that is not
called at all in my pipeline. I see it's called from ViewDrawScene_Intro
which calls DrawWorldAndEntities, but my pipeline passes through the
function WaterDrawWorldAndEntities where this thing is not called. Did I
break the pipeline somewhere or is it a bug? I can add the function
somewhere in my pipeline, and then my muzzle flashes work properly, but
they still get rendered in the main loop when it's not culled which
triggers an assert. I can fix that easily, just wondering where it or I
went wrong & what caused the bug in the first place.

-- Maarten


> Just a quick update, to maybe still ring a bell somewhere: apparently my
> muzzle flash for my view model has a bounding box that is being tested
> against world geometry, if I turn on the debug I clearly see the muzzle
> flash disappearing the moment the bounding box is completely in the world
> geometry somewhere ( floors, walls, ceilings ). I assume it shouldn't, or
> at the very least, the bounding box in view space is obviously
> inconsistent with the world test.
>
> Gonna try to prevent that somehow, but if anyone knows this problem, or
> what might cause it, feel free to share :)
>
> -- maarten
>
>> Hi list!
>>
>> I'm debugging an issue with our muzzle flashes and wanted to check if
>> one
>> of you could give me an answer faster than I can debug it myself.
>> Basically, our muzzle flash particles are invisible when you look down
>> when you're on the ground or when you look up near a ceiling. I thought
>> maybe some bounding box issue ( the particles are appearing/disappearing
>> while you look up & down, eg when I set the lifetime to 10 seconds I can
>> easily test this ).
>>
>> I've used some logging to debug the difference between both, and one
>> difference is that, when the muzzle flash is created when looking down,
>> it's calling CSimpleEmitter::SimulateParticles which decides it should
>> remove certain particles when their lifetime has touched something
>> between
>> 0.25 and 1 sec. Lifetime of my muzzle flash particles is 10 sec, so I'm
>> not even sure if these particles are the same, but even so, this does
>> not
>> happen at all when I fire the gun in a straight angle ( in this case the
>> particles are removed properly by CLocalSpaceEmitter when their lifetime
>> hits 10 seconds ).
>>
>> Does this ring any bells? Anyone properly understand how
>> CLocalSpaceEmitter and CSimpleEmitter interact/function and why the
>> visibility of such particles can be position/angle dependent?
>>
>> Thanks in advance,
>>
>> maarten
>>
>>
>> _______________________________________________
>> To unsubscribe, edit your list preferences, or view the list archives,
>> please visit:
>> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>>
>>
>>
>
>
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives,
> please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
>
>
>



_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to