rodecomp/Source/Contents/EffectPrimitiveRendering.h
2026-10-24 00:35:19 +00:00

37 lines
1.1 KiB
C++

#ifndef RAGNAROK_SOURCE_CONTENTS_EFFECTPRIMITIVERENDERING_H
#define RAGNAROK_SOURCE_CONTENTS_EFFECTPRIMITIVERENDERING_H
struct EffectPrimitiveState;
struct RenderObjectState;
struct RenderProjection;
struct RenderQueues;
class RenderCommandPool;
struct EffectVisibilityContext;
// Borrowed original renderer/camera owners. This operation does not replace
// the particle dispatcher's visibility gates or the renderer's queue drain.
struct EffectPrimitiveRenderContext {
const RenderProjection& projection;
const float* cameraMatrix;
RenderQueues& queues;
RenderCommandPool& commands;
const bool& depthAlpha;
const float& depthStart;
const float& depthEnd;
};
void DrawEffectPrimitive15(
EffectPrimitiveState& particle,
const RenderObjectState& render,
EffectPrimitiveRenderContext& context
);
// Type-15 path through the particle dispatcher's parent visibility gate.
void RenderEffectPrimitive15(
EffectPrimitiveState& particle,
const RenderObjectState& render,
EffectPrimitiveRenderContext& context,
const EffectVisibilityContext& visibility
);
#endif