| 122 | } |
| 123 | |
| 124 | void ParticleEmitterGraphCPUExecutor::Init(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, float dt) |
| 125 | { |
| 126 | auto& contextPtr = Context.Get(); |
| 127 | if (!contextPtr) |
| 128 | contextPtr = New<ParticleEmitterGraphCPUContext>(); |
| 129 | auto& context = *contextPtr; |
| 130 | context.GraphStack.Clear(); |
| 131 | context.GraphStack.Push(&_graph); |
| 132 | context.Data = &data; |
| 133 | context.Emitter = emitter; |
| 134 | context.Effect = effect; |
| 135 | context.DeltaTime = dt; |
| 136 | context.ParticleIndex = 0; |
| 137 | context.ViewTask = effect->GetRenderTask(); |
| 138 | context.CallStackSize = 0; |
| 139 | context.Functions.Clear(); |
| 140 | for (int32 i = 0; i < PARTICLE_ATTRIBUTES_MAX_COUNT; i++) |
| 141 | context.AttributesRemappingTable[i] = i; |
| 142 | } |
| 143 | |
| 144 | bool ParticleEmitterGraphCPUExecutor::ComputeBounds(ParticleEmitter* emitter, ParticleEffect* effect, ParticleEmitterInstance& data, BoundingBox& result) |
| 145 | { |
nothing calls this directly
no test coverage detected