30#include "NvFlowContext.h"
40 NvFlowFloat4x4 localToWorld;
41 NvFlowFloat4x4 localToWorldVelocity;
42 NvFlowBool32 velocityIsWorldSpace;
43 NvFlowFloat3 position;
46 NvFlowBool32 radiusIsWorldSpace;
47 float allocationScale;
49 NvFlowFloat3 velocity;
57 float coupleRateVelocity;
58 float coupleRateDivergence;
60 float coupleRateTemperature;
63 float coupleRateSmoke;
65 NvFlowUint numSubSteps;
67 float physicsVelocityScale;
68 NvFlowBool32 applyPostPressure;
70 NvFlowBool32 multisample;
73#define NvFlowEmitterSphereParams_default_init { \
113#define NV_FLOW_REFLECT_TYPE NvFlowEmitterSphereParams
114NV_FLOW_REFLECT_BEGIN()
115NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
116NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
117NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
118NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
119NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
120NV_FLOW_REFLECT_VALUE(NvFlowFloat3, position, 0, 0)
121NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
122NV_FLOW_REFLECT_VALUE(
float, radius, 0, 0)
123NV_FLOW_REFLECT_VALUE(NvFlowBool32, radiusIsWorldSpace, 0, 0)
124NV_FLOW_REFLECT_VALUE(
float, allocationScale, 0, 0)
125NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
126NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
127NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
128NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
129NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
130NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
131NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
132NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
133NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
134NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
135NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
136NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
137NV_FLOW_REFLECT_VALUE(NvFlowUint, numSubSteps, 0, 0)
138NV_FLOW_REFLECT_VALUE(
float, physicsVelocityScale, 0, 0)
139NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
140NV_FLOW_REFLECT_VALUE(NvFlowBool32, multisample, 0, 0)
141NV_FLOW_REFLECT_END(&NvFlowEmitterSphereParams_default)
142#undef NV_FLOW_REFLECT_TYPE
150 NvFlowUint64 velocityParamCount;
152 NvFlowUint64 densityParamCount;
155 NvFlowBool32 isPostPressure;
163#define NV_FLOW_REFLECT_TYPE NvFlowEmitterSpherePinsIn
164NV_FLOW_REFLECT_BEGIN()
166NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
167NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
168NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterSphereParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
169NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterSphereParams, densityParams, densityParamCount, eNvFlowReflectHint_pinEnabled, 0)
171NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
172NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
173NV_FLOW_REFLECT_END(0)
174#undef NV_FLOW_REFLECT_TYPE
176#define NV_FLOW_REFLECT_TYPE NvFlowEmitterSpherePinsOut
177NV_FLOW_REFLECT_BEGIN()
179NV_FLOW_REFLECT_END(0)
180#undef NV_FLOW_REFLECT_TYPE
182NV_FLOW_OP_TYPED(NvFlowEmitterSphere)
193 NvFlowUint64 paramCount;
198 NvFlowInt4* locations;
199 NvFlowUint64 locationCount;
202#define NV_FLOW_REFLECT_TYPE NvFlowEmitterSphereAllocatePinsIn
203NV_FLOW_REFLECT_BEGIN()
205NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
206NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
207NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
209NV_FLOW_REFLECT_END(0)
210#undef NV_FLOW_REFLECT_TYPE
212#define NV_FLOW_REFLECT_TYPE NvFlowEmitterSphereAllocatePinsOut
213NV_FLOW_REFLECT_BEGIN()
214NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
215NV_FLOW_REFLECT_END(0)
216#undef NV_FLOW_REFLECT_TYPE
218NV_FLOW_OP_TYPED(NvFlowEmitterSphereAllocate)
226 NvFlowBool32 enabled;
227 NvFlowFloat4x4 localToWorld;
228 NvFlowFloat4x4 localToWorldVelocity;
229 NvFlowBool32 velocityIsWorldSpace;
230 NvFlowFloat3 position;
232 NvFlowFloat3 halfSize;
233 float allocationScale;
235 NvFlowFloat3 velocity;
243 float coupleRateVelocity;
244 float coupleRateDivergence;
246 float coupleRateTemperature;
247 float coupleRateFuel;
248 float coupleRateBurn;
249 float coupleRateSmoke;
251 float physicsVelocityScale;
252 NvFlowBool32 applyPostPressure;
254 NvFlowBool32 multisample;
256 NvFlowFloat4* clippingPlanes;
257 NvFlowUint64 clippingPlaneCount;
258 NvFlowUint* clippingPlaneCounts;
259 NvFlowUint64 clippingPlaneCountCount;
263#define NvFlowEmitterBoxParams_default_init { \
267 1.f, 0.f, 0.f, 0.f, \
268 0.f, 1.f, 0.f, 0.f, \
269 0.f, 0.f, 1.f, 0.f, \
273 1.f, 0.f, 0.f, 0.f, \
274 0.f, 1.f, 0.f, 0.f, \
275 0.f, 0.f, 1.f, 0.f, \
281 {10.f, 10.f, 10.f}, \
305#define NV_FLOW_REFLECT_TYPE NvFlowEmitterBoxParams
306NV_FLOW_REFLECT_BEGIN()
307NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
308NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
309NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
310NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
311NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
312NV_FLOW_REFLECT_VALUE(NvFlowFloat3, position, 0, 0)
313NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
314NV_FLOW_REFLECT_VALUE(NvFlowFloat3, halfSize, 0, 0)
315NV_FLOW_REFLECT_VALUE(
float, allocationScale, 0, 0)
316NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
317NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
318NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
319NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
320NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
321NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
322NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
323NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
324NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
325NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
326NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
327NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
328NV_FLOW_REFLECT_VALUE(
float, physicsVelocityScale, 0, 0)
329NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
330NV_FLOW_REFLECT_VALUE(NvFlowBool32, multisample, 0, 0)
331NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, clippingPlanes, clippingPlaneCount, 0, 0)
332NV_FLOW_REFLECT_ARRAY(NvFlowUint, clippingPlaneCounts, clippingPlaneCountCount, 0, 0)
333NV_FLOW_REFLECT_END(&NvFlowEmitterBoxParams_default)
334#undef NV_FLOW_REFLECT_TYPE
342 NvFlowUint64 velocityParamCount;
344 NvFlowUint64 densityParamCount;
347 NvFlowBool32 isPostPressure;
355#define NV_FLOW_REFLECT_TYPE NvFlowEmitterBoxPinsIn
356NV_FLOW_REFLECT_BEGIN()
358NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
359NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
360NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterBoxParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
361NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterBoxParams, densityParams, densityParamCount, eNvFlowReflectHint_pinEnabled, 0)
363NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
364NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
365NV_FLOW_REFLECT_END(0)
366#undef NV_FLOW_REFLECT_TYPE
368#define NV_FLOW_REFLECT_TYPE NvFlowEmitterBoxPinsOut
369NV_FLOW_REFLECT_BEGIN()
371NV_FLOW_REFLECT_END(0)
372#undef NV_FLOW_REFLECT_TYPE
374NV_FLOW_OP_TYPED(NvFlowEmitterBox)
385 NvFlowUint64 paramCount;
390 NvFlowInt4* locations;
391 NvFlowUint64 locationCount;
394#define NV_FLOW_REFLECT_TYPE NvFlowEmitterBoxAllocatePinsIn
395NV_FLOW_REFLECT_BEGIN()
397NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
398NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
399NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
400NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterBoxParams, params, paramCount, eNvFlowReflectHint_pinEnabled, 0)
401NV_FLOW_REFLECT_END(0)
402#undef NV_FLOW_REFLECT_TYPE
404#define NV_FLOW_REFLECT_TYPE NvFlowEmitterBoxAllocatePinsOut
405NV_FLOW_REFLECT_BEGIN()
406NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
407NV_FLOW_REFLECT_END(0)
408#undef NV_FLOW_REFLECT_TYPE
410NV_FLOW_OP_TYPED(NvFlowEmitterBoxAllocate)
418 NvFlowBool32 enabled;
420 NvFlowFloat4x4 localToWorld;
421 NvFlowFloat4x4 localToWorldVelocity;
422 NvFlowBool32 velocityIsWorldSpace;
423 NvFlowUint numSubSteps;
427 NvFlowBool32 allocateMask;
428 NvFlowFloat3 velocity;
435 NvFlowBool32 colorIsSrgb;
438 float divergenceScale;
439 float temperatureScale;
444 float coupleRateVelocity;
445 float coupleRateDivergence;
446 float coupleRateTemperature;
447 float coupleRateFuel;
448 float coupleRateBurn;
449 float coupleRateSmoke;
451 NvFlowFloat3* pointPositions;
452 NvFlowUint64 pointPositionCount;
453 NvFlowUint64 pointPositionVersion;
454 NvFlowBool32* pointAllocateMasks;
455 NvFlowUint64 pointAllocateMaskCount;
456 NvFlowUint64 pointAllocateMaskVersion;
458 NvFlowFloat3* pointVelocities;
459 NvFlowUint64 pointVelocityCount;
460 NvFlowUint64 pointVelocityVersion;
461 float* pointDivergences;
462 NvFlowUint64 pointDivergenceCount;
463 NvFlowUint64 pointDivergenceVersion;
464 NvFlowFloat3* pointColors;
465 NvFlowUint64 pointColorCount;
466 NvFlowUint64 pointColorVersion;
467 float* pointTemperatures;
468 NvFlowUint64 pointTemperatureCount;
469 NvFlowUint64 pointTemperatureVersion;
471 NvFlowUint64 pointFuelCount;
472 NvFlowUint64 pointFuelVersion;
474 NvFlowUint64 pointBurnCount;
475 NvFlowUint64 pointBurnVersion;
477 NvFlowUint64 pointSmokeCount;
478 NvFlowUint64 pointSmokeVersion;
480 float* pointCoupleRateVelocities;
481 NvFlowUint64 pointCoupleRateVelocityCount;
482 NvFlowUint64 pointCoupleRateVelocityVersion;
483 float* pointCoupleRateDivergences;
484 NvFlowUint64 pointCoupleRateDivergenceCount;
485 NvFlowUint64 pointCoupleRateDivergenceVersion;
486 float* pointCoupleRateTemperatures;
487 NvFlowUint64 pointCoupleRateTemperatureCount;
488 NvFlowUint64 pointCoupleRateTemperatureVersion;
489 float* pointCoupleRateFuels;
490 NvFlowUint64 pointCoupleRateFuelCount;
491 NvFlowUint64 pointCoupleRateFuelVersion;
492 float* pointCoupleRateBurns;
493 NvFlowUint64 pointCoupleRateBurnCount;
494 NvFlowUint64 pointCoupleRateBurnVersion;
495 float* pointCoupleRateSmokes;
496 NvFlowUint64 pointCoupleRateSmokeCount;
497 NvFlowUint64 pointCoupleRateSmokeVersion;
499 NvFlowBool32 applyPostPressure;
500 NvFlowBool32 enableStreaming;
501 NvFlowBool32 streamOnce;
502 NvFlowBool32 streamClearAtStart;
503 NvFlowUint streamingBatchSize;
504 NvFlowBool32 updateCoarseDensity;
507#define NvFlowEmitterPointParams_default_init { \
511 1.f, 0.f, 0.f, 0.f, \
512 0.f, 1.f, 0.f, 0.f, \
513 0.f, 0.f, 1.f, 0.f, \
517 1.f, 0.f, 0.f, 0.f, \
518 0.f, 1.f, 0.f, 0.f, \
519 0.f, 0.f, 1.f, 0.f, \
599#define NV_FLOW_REFLECT_TYPE NvFlowEmitterPointParams
600NV_FLOW_REFLECT_BEGIN()
601NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
602NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
603NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
604NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
605NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
606NV_FLOW_REFLECT_VALUE(NvFlowUint, numSubSteps, 0, 0)
607NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
608NV_FLOW_REFLECT_VALUE(NvFlowBool32, allocateMask, 0, 0)
609NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
610NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
611NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
612NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
613NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
614NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
615NV_FLOW_REFLECT_VALUE(NvFlowBool32, colorIsSrgb, 0, 0)
616NV_FLOW_REFLECT_VALUE(
float, velocityScale, 0, 0)
617NV_FLOW_REFLECT_VALUE(
float, divergenceScale, 0, 0)
618NV_FLOW_REFLECT_VALUE(
float, temperatureScale, 0, 0)
619NV_FLOW_REFLECT_VALUE(
float, fuelScale, 0, 0)
620NV_FLOW_REFLECT_VALUE(
float, burnScale, 0, 0)
621NV_FLOW_REFLECT_VALUE(
float, smokeScale, 0, 0)
622NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
623NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
624NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
625NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
626NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
627NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
628NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, pointPositions, pointPositionCount, pointPositionVersion, eNvFlowReflectHint_asset, "asset(array)")
629NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowBool32, pointAllocateMasks, pointAllocateMaskCount, pointAllocateMaskVersion, eNvFlowReflectHint_asset, "asset(array)")
630NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, pointVelocities, pointVelocityCount, pointVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
631NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointDivergences, pointDivergenceCount, pointDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
632NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, pointColors, pointColorCount, pointColorVersion, eNvFlowReflectHint_asset, "asset(array)")
633NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointTemperatures, pointTemperatureCount, pointTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
634NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointFuels, pointFuelCount, pointFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
635NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointBurns, pointBurnCount, pointBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
636NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointSmokes, pointSmokeCount, pointSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
637NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateVelocities, pointCoupleRateVelocityCount, pointCoupleRateVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
638NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateDivergences, pointCoupleRateDivergenceCount, pointCoupleRateDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
639NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateTemperatures, pointCoupleRateTemperatureCount, pointCoupleRateTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
640NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateFuels, pointCoupleRateFuelCount, pointCoupleRateFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
641NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateBurns, pointCoupleRateBurnCount, pointCoupleRateBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
642NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, pointCoupleRateSmokes, pointCoupleRateSmokeCount, pointCoupleRateSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
643NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
644NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableStreaming, 0, 0)
645NV_FLOW_REFLECT_VALUE(NvFlowBool32, streamOnce, 0, 0)
646NV_FLOW_REFLECT_VALUE(NvFlowBool32, streamClearAtStart, 0, 0)
647NV_FLOW_REFLECT_VALUE(NvFlowUint, streamingBatchSize, 0, 0)
648NV_FLOW_REFLECT_VALUE(NvFlowBool32, updateCoarseDensity, 0, 0)
649NV_FLOW_REFLECT_END(&NvFlowEmitterPointParams_default)
650#undef NV_FLOW_REFLECT_TYPE
665 NvFlowUint64 velocityParamCount;
667 NvFlowUint64 densityParamCount;
671 NvFlowBool32 isPostPressure;
680#define NV_FLOW_REFLECT_TYPE NvFlowEmitterPointPinsIn
681NV_FLOW_REFLECT_BEGIN()
683NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
684NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
685NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterPointParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
686NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterPointParams, densityParams, densityParamCount, eNvFlowReflectHint_pinEnabled, 0)
688NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
689NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, coarseDensity, eNvFlowReflectHint_pinEnabledMutable, 0)
690NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
692NV_FLOW_REFLECT_END(0)
693#undef NV_FLOW_REFLECT_TYPE
695#define NV_FLOW_REFLECT_TYPE NvFlowEmitterPointPinsOut
696NV_FLOW_REFLECT_BEGIN()
698NV_FLOW_REFLECT_END(0)
699#undef NV_FLOW_REFLECT_TYPE
701NV_FLOW_OP_TYPED(NvFlowEmitterPoint)
712 NvFlowUint64 paramCount;
713 NvFlowUint3 baseBlockDimBits;
718 NvFlowInt4* locations;
719 NvFlowUint64 locationCount;
722 NvFlowUint64 clearLayerCount;
725#define NV_FLOW_REFLECT_TYPE NvFlowEmitterPointAllocatePinsIn
726NV_FLOW_REFLECT_BEGIN()
728NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
729NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
730NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
732NV_FLOW_REFLECT_VALUE(NvFlowUint3, baseBlockDimBits, eNvFlowReflectHint_pinEnabledGlobal, 0)
733NV_FLOW_REFLECT_END(0)
734#undef NV_FLOW_REFLECT_TYPE
736#define NV_FLOW_REFLECT_TYPE NvFlowEmitterPointAllocatePinsOut
737NV_FLOW_REFLECT_BEGIN()
738NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
740NV_FLOW_REFLECT_ARRAY(
int, clearLayers, clearLayerCount, eNvFlowReflectHint_pinEnabled, 0)
741NV_FLOW_REFLECT_END(0)
742#undef NV_FLOW_REFLECT_TYPE
744NV_FLOW_OP_TYPED(NvFlowEmitterPointAllocate)
752 NvFlowBool32 enabled;
754 NvFlowFloat4x4 localToWorld;
755 NvFlowFloat4x4 localToWorldVelocity;
756 NvFlowBool32 velocityIsWorldSpace;
757 NvFlowUint numSubSteps;
764 NvFlowBool32 allocateMask;
765 NvFlowFloat3 velocity;
772 NvFlowBool32 orientationLeftHanded;
773 NvFlowBool32 colorIsSrgb;
776 float divergenceScale;
777 float temperatureScale;
782 float coupleRateVelocity;
783 float coupleRateDivergence;
784 float coupleRateTemperature;
785 float coupleRateFuel;
786 float coupleRateBurn;
787 float coupleRateSmoke;
789 int* meshSubsetFaceCounts;
790 NvFlowUint64 meshSubsetFaceCountCount;
791 NvFlowUint64 meshSubsetFaceCountVersion;
792 int* meshSubsetLayers;
793 NvFlowUint64 meshSubsetLayerCount;
794 NvFlowUint64 meshSubsetLayerVersion;
795 NvFlowBool32* meshSubsetEnableds;
796 NvFlowUint64 meshSubsetEnabledCount;
797 NvFlowUint64 meshSubsetEnabledVersion;
799 NvFlowFloat3* meshPositions;
800 NvFlowUint64 meshPositionCount;
801 NvFlowUint64 meshPositionVersion;
802 int* meshFaceVertexIndices;
803 NvFlowUint64 meshFaceVertexIndexCount;
804 NvFlowUint64 meshFaceVertexIndexVersion;
805 int* meshFaceVertexCounts;
806 NvFlowUint64 meshFaceVertexCountCount;
807 NvFlowUint64 meshFaceVertexCountVersion;
809 NvFlowFloat3* meshVelocities;
810 NvFlowUint64 meshVelocityCount;
811 NvFlowUint64 meshVelocityVersion;
812 float* meshDivergences;
813 NvFlowUint64 meshDivergenceCount;
814 NvFlowUint64 meshDivergenceVersion;
815 NvFlowFloat3* meshColors;
816 NvFlowUint64 meshColorCount;
817 NvFlowUint64 meshColorVersion;
818 float* meshTemperatures;
819 NvFlowUint64 meshTemperatureCount;
820 NvFlowUint64 meshTemperatureVersion;
822 NvFlowUint64 meshFuelCount;
823 NvFlowUint64 meshFuelVersion;
825 NvFlowUint64 meshBurnCount;
826 NvFlowUint64 meshBurnVersion;
828 NvFlowUint64 meshSmokeCount;
829 NvFlowUint64 meshSmokeVersion;
831 float* meshCoupleRateVelocities;
832 NvFlowUint64 meshCoupleRateVelocityCount;
833 NvFlowUint64 meshCoupleRateVelocityVersion;
834 float* meshCoupleRateDivergences;
835 NvFlowUint64 meshCoupleRateDivergenceCount;
836 NvFlowUint64 meshCoupleRateDivergenceVersion;
837 float* meshCoupleRateTemperatures;
838 NvFlowUint64 meshCoupleRateTemperatureCount;
839 NvFlowUint64 meshCoupleRateTemperatureVersion;
840 float* meshCoupleRateFuels;
841 NvFlowUint64 meshCoupleRateFuelCount;
842 NvFlowUint64 meshCoupleRateFuelVersion;
843 float* meshCoupleRateBurns;
844 NvFlowUint64 meshCoupleRateBurnCount;
845 NvFlowUint64 meshCoupleRateBurnVersion;
846 float* meshCoupleRateSmokes;
847 NvFlowUint64 meshCoupleRateSmokeCount;
848 NvFlowUint64 meshCoupleRateSmokeVersion;
850 float physicsVelocityScale;
851 NvFlowBool32 applyPostPressure;
854#define NvFlowEmitterMeshParams_default_init { \
858 1.f, 0.f, 0.f, 0.f, \
859 0.f, 1.f, 0.f, 0.f, \
860 0.f, 0.f, 1.f, 0.f, \
864 1.f, 0.f, 0.f, 0.f, \
865 0.f, 1.f, 0.f, 0.f, \
866 0.f, 0.f, 1.f, 0.f, \
957#define NV_FLOW_REFLECT_TYPE NvFlowEmitterMeshParams
958NV_FLOW_REFLECT_BEGIN()
959NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
960NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
961NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
962NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
963NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
964NV_FLOW_REFLECT_VALUE(NvFlowUint, numSubSteps, 0, 0)
965NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
966NV_FLOW_REFLECT_VALUE(
float, minDistance, 0, 0)
967NV_FLOW_REFLECT_VALUE(
float, maxDistance, 0, 0)
968NV_FLOW_REFLECT_VALUE(NvFlowBool32, allocateMask, 0, 0)
969NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
970NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
971NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
972NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
973NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
974NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
975NV_FLOW_REFLECT_VALUE(NvFlowBool32, orientationLeftHanded, 0, 0)
976NV_FLOW_REFLECT_VALUE(NvFlowBool32, colorIsSrgb, 0, 0)
977NV_FLOW_REFLECT_VALUE(
float, velocityScale, 0, 0)
978NV_FLOW_REFLECT_VALUE(
float, divergenceScale, 0, 0)
979NV_FLOW_REFLECT_VALUE(
float, temperatureScale, 0, 0)
980NV_FLOW_REFLECT_VALUE(
float, fuelScale, 0, 0)
981NV_FLOW_REFLECT_VALUE(
float, burnScale, 0, 0)
982NV_FLOW_REFLECT_VALUE(
float, smokeScale, 0, 0)
983NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
984NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
985NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
986NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
987NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
988NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
989NV_FLOW_REFLECT_ARRAY_VERSIONED(
int, meshSubsetFaceCounts, meshSubsetFaceCountCount, meshSubsetFaceCountVersion, eNvFlowReflectHint_asset, "asset(array)")
990NV_FLOW_REFLECT_ARRAY_VERSIONED(
int, meshSubsetLayers, meshSubsetLayerCount, meshSubsetLayerVersion, eNvFlowReflectHint_asset, "asset(array)")
991NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowBool32, meshSubsetEnableds, meshSubsetEnabledCount, meshSubsetEnabledVersion, eNvFlowReflectHint_asset, "asset(array)")
992NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, meshPositions, meshPositionCount, meshPositionVersion, eNvFlowReflectHint_asset, "asset(array)")
993NV_FLOW_REFLECT_ARRAY_VERSIONED(
int, meshFaceVertexIndices, meshFaceVertexIndexCount, meshFaceVertexIndexVersion, eNvFlowReflectHint_asset, "asset(array)")
994NV_FLOW_REFLECT_ARRAY_VERSIONED(
int, meshFaceVertexCounts, meshFaceVertexCountCount, meshFaceVertexCountVersion, eNvFlowReflectHint_asset, "asset(array)")
995NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, meshVelocities, meshVelocityCount, meshVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
996NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshDivergences, meshDivergenceCount, meshDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
997NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, meshColors, meshColorCount, meshColorVersion, eNvFlowReflectHint_asset, "asset(array)")
998NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshTemperatures, meshTemperatureCount, meshTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
999NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshFuels, meshFuelCount, meshFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
1000NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshBurns, meshBurnCount, meshBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
1001NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshSmokes, meshSmokeCount, meshSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
1002NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateVelocities, meshCoupleRateVelocityCount, meshCoupleRateVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
1003NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateDivergences, meshCoupleRateDivergenceCount, meshCoupleRateDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
1004NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateTemperatures, meshCoupleRateTemperatureCount, meshCoupleRateTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
1005NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateFuels, meshCoupleRateFuelCount, meshCoupleRateFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
1006NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateBurns, meshCoupleRateBurnCount, meshCoupleRateBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
1007NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, meshCoupleRateSmokes, meshCoupleRateSmokeCount, meshCoupleRateSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
1008NV_FLOW_REFLECT_VALUE(
float, physicsVelocityScale, 0, 0)
1009NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
1010NV_FLOW_REFLECT_END(&NvFlowEmitterMeshParams_default)
1011#undef NV_FLOW_REFLECT_TYPE
1026 NvFlowUint64 velocityParamCount;
1028 NvFlowUint64 densityParamCount;
1031 NvFlowBool32 isPostPressure;
1040#define NV_FLOW_REFLECT_TYPE NvFlowEmitterMeshPinsIn
1041NV_FLOW_REFLECT_BEGIN()
1043NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1044NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1045NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterMeshParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
1046NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterMeshParams, densityParams, densityParamCount, eNvFlowReflectHint_pinEnabled, 0)
1048NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
1049NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
1051NV_FLOW_REFLECT_END(0)
1052#undef NV_FLOW_REFLECT_TYPE
1054#define NV_FLOW_REFLECT_TYPE NvFlowEmitterMeshPinsOut
1055NV_FLOW_REFLECT_BEGIN()
1057NV_FLOW_REFLECT_END(0)
1058#undef NV_FLOW_REFLECT_TYPE
1060NV_FLOW_OP_TYPED(NvFlowEmitterMesh)
1071 NvFlowUint64 paramCount;
1072 NvFlowUint3 baseBlockDimBits;
1077 NvFlowInt4* locations;
1078 NvFlowUint64 locationCount;
1082#define NV_FLOW_REFLECT_TYPE NvFlowEmitterMeshAllocatePinsIn
1083NV_FLOW_REFLECT_BEGIN()
1085NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1086NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
1087NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1089NV_FLOW_REFLECT_VALUE(NvFlowUint3, baseBlockDimBits, eNvFlowReflectHint_pinEnabledGlobal, 0)
1090NV_FLOW_REFLECT_END(0)
1091#undef NV_FLOW_REFLECT_TYPE
1093#define NV_FLOW_REFLECT_TYPE NvFlowEmitterMeshAllocatePinsOut
1094NV_FLOW_REFLECT_BEGIN()
1095NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
1097NV_FLOW_REFLECT_END(0)
1098#undef NV_FLOW_REFLECT_TYPE
1100NV_FLOW_OP_TYPED(NvFlowEmitterMeshAllocate)
1108 NvFlowBool32 enabled;
1110 NvFlowFloat4x4 localToWorld;
1111 NvFlowFloat4x4 localToWorldVelocity;
1112 NvFlowBool32 velocityIsWorldSpace;
1113 NvFlowFloat3 position;
1115 NvFlowFloat3 halfSize;
1116 float allocationScale;
1118 NvFlowFloat3 velocity;
1126 NvFlowBool32 colorIsSrgb;
1128 float velocityScale;
1129 float divergenceScale;
1130 float temperatureScale;
1135 float coupleRateVelocity;
1136 float coupleRateDivergence;
1138 float coupleRateTemperature;
1139 float coupleRateFuel;
1140 float coupleRateBurn;
1141 float coupleRateSmoke;
1143 NvFlowUint textureWidth;
1144 NvFlowUint textureHeight;
1145 NvFlowUint textureDepth;
1146 NvFlowUint textureFirstElement;
1148 NvFlowFloat3* textureVelocities;
1149 NvFlowUint64 textureVelocityCount;
1150 NvFlowUint64 textureVelocityVersion;
1151 float* textureDivergences;
1152 NvFlowUint64 textureDivergenceCount;
1153 NvFlowUint64 textureDivergenceVersion;
1154 float* textureTemperatures;
1155 NvFlowUint64 textureTemperatureCount;
1156 NvFlowUint64 textureTemperatureVersion;
1157 float* textureFuels;
1158 NvFlowUint64 textureFuelCount;
1159 NvFlowUint64 textureFuelVersion;
1160 float* textureBurns;
1161 NvFlowUint64 textureBurnCount;
1162 NvFlowUint64 textureBurnVersion;
1163 float* textureSmokes;
1164 NvFlowUint64 textureSmokeCount;
1165 NvFlowUint64 textureSmokeVersion;
1167 float* textureCoupleRateVelocities;
1168 NvFlowUint64 textureCoupleRateVelocityCount;
1169 NvFlowUint64 textureCoupleRateVelocityVersion;
1170 float* textureCoupleRateDivergences;
1171 NvFlowUint64 textureCoupleRateDivergenceCount;
1172 NvFlowUint64 textureCoupleRateDivergenceVersion;
1173 float* textureCoupleRateTemperatures;
1174 NvFlowUint64 textureCoupleRateTemperatureCount;
1175 NvFlowUint64 textureCoupleRateTemperatureVersion;
1176 float* textureCoupleRateFuels;
1177 NvFlowUint64 textureCoupleRateFuelCount;
1178 NvFlowUint64 textureCoupleRateFuelVersion;
1179 float* textureCoupleRateBurns;
1180 NvFlowUint64 textureCoupleRateBurnCount;
1181 NvFlowUint64 textureCoupleRateBurnVersion;
1182 float* textureCoupleRateSmokes;
1183 NvFlowUint64 textureCoupleRateSmokeCount;
1184 NvFlowUint64 textureCoupleRateSmokeVersion;
1186 NvFlowBool32 applyPostPressure;
1189#define NvFlowEmitterTextureParams_default_init { \
1193 1.f, 0.f, 0.f, 0.f, \
1194 0.f, 1.f, 0.f, 0.f, \
1195 0.f, 0.f, 1.f, 0.f, \
1196 0.f, 0.f, 0.f, 1.f \
1199 1.f, 0.f, 0.f, 0.f, \
1200 0.f, 1.f, 0.f, 0.f, \
1201 0.f, 0.f, 1.f, 0.f, \
1202 0.f, 0.f, 0.f, 1.f \
1207 {10.f, 10.f, 10.f}, \
1209 {0.f, 0.f, 400.f}, \
1272#define NV_FLOW_REFLECT_TYPE NvFlowEmitterTextureParams
1273NV_FLOW_REFLECT_BEGIN()
1274NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
1275NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
1276NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
1277NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
1278NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
1279NV_FLOW_REFLECT_VALUE(NvFlowFloat3, position, 0, 0)
1280NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
1281NV_FLOW_REFLECT_VALUE(NvFlowFloat3, halfSize, 0, 0)
1282NV_FLOW_REFLECT_VALUE(
float, allocationScale, 0, 0)
1283NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
1284NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
1285NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
1286NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
1287NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
1288NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
1289NV_FLOW_REFLECT_VALUE(NvFlowBool32, colorIsSrgb, 0, 0)
1290NV_FLOW_REFLECT_VALUE(
float, velocityScale, 0, 0)
1291NV_FLOW_REFLECT_VALUE(
float, divergenceScale, 0, 0)
1292NV_FLOW_REFLECT_VALUE(
float, temperatureScale, 0, 0)
1293NV_FLOW_REFLECT_VALUE(
float, fuelScale, 0, 0)
1294NV_FLOW_REFLECT_VALUE(
float, burnScale, 0, 0)
1295NV_FLOW_REFLECT_VALUE(
float, smokeScale, 0, 0)
1296NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
1297NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
1298NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
1299NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
1300NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
1301NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
1302NV_FLOW_REFLECT_VALUE(NvFlowUint, textureWidth, 0, 0)
1303NV_FLOW_REFLECT_VALUE(NvFlowUint, textureHeight, 0, 0)
1304NV_FLOW_REFLECT_VALUE(NvFlowUint, textureDepth, 0, 0)
1305NV_FLOW_REFLECT_VALUE(NvFlowUint, textureFirstElement, 0, 0)
1306NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowFloat3, textureVelocities, textureVelocityCount, textureVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
1307NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureDivergences, textureDivergenceCount, textureDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
1308NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureTemperatures, textureTemperatureCount, textureTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
1309NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureFuels, textureFuelCount, textureFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
1310NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureBurns, textureBurnCount, textureBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
1311NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureSmokes, textureSmokeCount, textureSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
1312NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateVelocities, textureCoupleRateVelocityCount, textureCoupleRateVelocityVersion, eNvFlowReflectHint_asset, "asset(array)")
1313NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateDivergences, textureCoupleRateDivergenceCount, textureCoupleRateDivergenceVersion, eNvFlowReflectHint_asset, "asset(array)")
1314NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateTemperatures, textureCoupleRateTemperatureCount, textureCoupleRateTemperatureVersion, eNvFlowReflectHint_asset, "asset(array)")
1315NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateFuels, textureCoupleRateFuelCount, textureCoupleRateFuelVersion, eNvFlowReflectHint_asset, "asset(array)")
1316NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateBurns, textureCoupleRateBurnCount, textureCoupleRateBurnVersion, eNvFlowReflectHint_asset, "asset(array)")
1317NV_FLOW_REFLECT_ARRAY_VERSIONED(
float, textureCoupleRateSmokes, textureCoupleRateSmokeCount, textureCoupleRateSmokeVersion, eNvFlowReflectHint_asset, "asset(array)")
1318NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
1319NV_FLOW_REFLECT_END(&NvFlowEmitterTextureParams_default)
1320#undef NV_FLOW_REFLECT_TYPE
1328 NvFlowUint64 velocityParamCount;
1330 NvFlowUint64 densityParamCount;
1333 NvFlowBool32 isPostPressure;
1341#define NV_FLOW_REFLECT_TYPE NvFlowEmitterTexturePinsIn
1342NV_FLOW_REFLECT_BEGIN()
1344NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1345NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1346NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterTextureParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
1349NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
1350NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
1351NV_FLOW_REFLECT_END(0)
1352#undef NV_FLOW_REFLECT_TYPE
1354#define NV_FLOW_REFLECT_TYPE NvFlowEmitterTexturePinsOut
1355NV_FLOW_REFLECT_BEGIN()
1357NV_FLOW_REFLECT_END(0)
1358#undef NV_FLOW_REFLECT_TYPE
1360NV_FLOW_OP_TYPED(NvFlowEmitterTexture)
1371 NvFlowUint64 paramCount;
1376 NvFlowInt4* locations;
1377 NvFlowUint64 locationCount;
1380#define NV_FLOW_REFLECT_TYPE NvFlowEmitterTextureAllocatePinsIn
1381NV_FLOW_REFLECT_BEGIN()
1383NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1384NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
1385NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1387NV_FLOW_REFLECT_END(0)
1388#undef NV_FLOW_REFLECT_TYPE
1390#define NV_FLOW_REFLECT_TYPE NvFlowEmitterTextureAllocatePinsOut
1391NV_FLOW_REFLECT_BEGIN()
1392NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
1393NV_FLOW_REFLECT_END(0)
1394#undef NV_FLOW_REFLECT_TYPE
1396NV_FLOW_OP_TYPED(NvFlowEmitterTextureAllocate)
1404 NvFlowBool32 enabled;
1406 NvFlowFloat4x4 localToWorld;
1407 NvFlowFloat4x4 localToWorldVelocity;
1408 NvFlowBool32 velocityIsWorldSpace;
1411 float allocationScale;
1413 NvFlowFloat3 velocity;
1421 NvFlowBool32 colorIsSrgb;
1423 float velocityScale;
1424 float divergenceScale;
1425 float temperatureScale;
1430 float coupleRateVelocity;
1431 float coupleRateDivergence;
1433 float coupleRateTemperature;
1434 float coupleRateFuel;
1435 float coupleRateBurn;
1436 float coupleRateSmoke;
1441 NvFlowUint* nanoVdbDistances;
1442 NvFlowUint64 nanoVdbDistanceCount;
1443 NvFlowUint64 nanoVdbDistanceVersion;
1444 NvFlowUint64 nanoVdbDistanceFirstElement;
1446 NvFlowUint* nanoVdbVelocities;
1447 NvFlowUint64 nanoVdbVelocityCount;
1448 NvFlowUint64 nanoVdbVelocityVersion;
1449 NvFlowUint64 nanoVdbVelocityFirstElement;
1451 NvFlowUint* nanoVdbDivergences;
1452 NvFlowUint64 nanoVdbDivergenceCount;
1453 NvFlowUint64 nanoVdbDivergenceVersion;
1454 NvFlowUint64 nanoVdbDivergenceFirstElement;
1456 NvFlowUint* nanoVdbTemperatures;
1457 NvFlowUint64 nanoVdbTemperatureCount;
1458 NvFlowUint64 nanoVdbTemperatureVersion;
1459 NvFlowUint64 nanoVdbTemperatureFirstElement;
1461 NvFlowUint* nanoVdbFuels;
1462 NvFlowUint64 nanoVdbFuelCount;
1463 NvFlowUint64 nanoVdbFuelVersion;
1464 NvFlowUint64 nanoVdbFuelFirstElement;
1466 NvFlowUint* nanoVdbBurns;
1467 NvFlowUint64 nanoVdbBurnCount;
1468 NvFlowUint64 nanoVdbBurnVersion;
1469 NvFlowUint64 nanoVdbBurnFirstElement;
1471 NvFlowUint* nanoVdbSmokes;
1472 NvFlowUint64 nanoVdbSmokeCount;
1473 NvFlowUint64 nanoVdbSmokeVersion;
1474 NvFlowUint64 nanoVdbSmokeFirstElement;
1476 NvFlowUint* nanoVdbCoupleRateVelocities;
1477 NvFlowUint64 nanoVdbCoupleRateVelocityCount;
1478 NvFlowUint64 nanoVdbCoupleRateVelocityVersion;
1479 NvFlowUint64 nanoVdbCoupleRateVelocityFirstElement;
1481 NvFlowUint* nanoVdbCoupleRateDivergences;
1482 NvFlowUint64 nanoVdbCoupleRateDivergenceCount;
1483 NvFlowUint64 nanoVdbCoupleRateDivergenceVersion;
1484 NvFlowUint64 nanoVdbCoupleRateDivergenceFirstElement;
1486 NvFlowUint* nanoVdbCoupleRateTemperatures;
1487 NvFlowUint64 nanoVdbCoupleRateTemperatureCount;
1488 NvFlowUint64 nanoVdbCoupleRateTemperatureVersion;
1489 NvFlowUint64 nanoVdbCoupleRateTemperatureFirstElement;
1491 NvFlowUint* nanoVdbCoupleRateFuels;
1492 NvFlowUint64 nanoVdbCoupleRateFuelCount;
1493 NvFlowUint64 nanoVdbCoupleRateFuelVersion;
1494 NvFlowUint64 nanoVdbCoupleRateFuelFirstElement;
1496 NvFlowUint* nanoVdbCoupleRateBurns;
1497 NvFlowUint64 nanoVdbCoupleRateBurnCount;
1498 NvFlowUint64 nanoVdbCoupleRateBurnVersion;
1499 NvFlowUint64 nanoVdbCoupleRateBurnFirstElement;
1501 NvFlowUint* nanoVdbCoupleRateSmokes;
1502 NvFlowUint64 nanoVdbCoupleRateSmokeCount;
1503 NvFlowUint64 nanoVdbCoupleRateSmokeVersion;
1504 NvFlowUint64 nanoVdbCoupleRateSmokeFirstElement;
1506 NvFlowUint* nanoVdbRgba8s;
1507 NvFlowUint64 nanoVdbRgba8Count;
1508 NvFlowUint64 nanoVdbRgba8Version;
1509 NvFlowUint64 nanoVdbRgba8FirstElement;
1511 NvFlowBool32 applyPostPressure;
1512 NvFlowBool32 allocateActiveLeaves;
1515#define NvFlowEmitterNanoVdbParams_default_init { \
1519 1.f, 0.f, 0.f, 0.f, \
1520 0.f, 1.f, 0.f, 0.f, \
1521 0.f, 0.f, 1.f, 0.f, \
1522 0.f, 0.f, 0.f, 1.f \
1525 1.f, 0.f, 0.f, 0.f, \
1526 0.f, 1.f, 0.f, 0.f, \
1527 0.f, 0.f, 1.f, 0.f, \
1528 0.f, 0.f, 0.f, 1.f \
1615#define NV_FLOW_REFLECT_TYPE NvFlowEmitterNanoVdbParams
1616NV_FLOW_REFLECT_BEGIN()
1617NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
1618NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
1619NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorld, eNvFlowReflectHint_transientNoEdit, 0)
1620NV_FLOW_REFLECT_VALUE(NvFlowFloat4x4, localToWorldVelocity, eNvFlowReflectHint_transientNoEdit, 0)
1621NV_FLOW_REFLECT_VALUE(NvFlowBool32, velocityIsWorldSpace, 0, 0)
1622NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
1623NV_FLOW_REFLECT_VALUE(
float, allocationScale, 0, 0)
1624NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocity, 0, 0)
1625NV_FLOW_REFLECT_VALUE(
float, divergence, 0, 0)
1626NV_FLOW_REFLECT_VALUE(
float, temperature, 0, 0)
1627NV_FLOW_REFLECT_VALUE(
float, fuel, 0, 0)
1628NV_FLOW_REFLECT_VALUE(
float, burn, 0, 0)
1629NV_FLOW_REFLECT_VALUE(
float, smoke, 0, 0)
1630NV_FLOW_REFLECT_VALUE(NvFlowBool32, colorIsSrgb, 0, 0)
1631NV_FLOW_REFLECT_VALUE(
float, velocityScale, 0, 0)
1632NV_FLOW_REFLECT_VALUE(
float, divergenceScale, 0, 0)
1633NV_FLOW_REFLECT_VALUE(
float, temperatureScale, 0, 0)
1634NV_FLOW_REFLECT_VALUE(
float, fuelScale, 0, 0)
1635NV_FLOW_REFLECT_VALUE(
float, burnScale, 0, 0)
1636NV_FLOW_REFLECT_VALUE(
float, smokeScale, 0, 0)
1637NV_FLOW_REFLECT_VALUE(
float, coupleRateVelocity, 0, 0)
1638NV_FLOW_REFLECT_VALUE(
float, coupleRateDivergence, 0, 0)
1639NV_FLOW_REFLECT_VALUE(
float, coupleRateTemperature, 0, 0)
1640NV_FLOW_REFLECT_VALUE(
float, coupleRateFuel, 0, 0)
1641NV_FLOW_REFLECT_VALUE(
float, coupleRateBurn, 0, 0)
1642NV_FLOW_REFLECT_VALUE(
float, coupleRateSmoke, 0, 0)
1643NV_FLOW_REFLECT_VALUE(
float, minDistance, 0, 0)
1644NV_FLOW_REFLECT_VALUE(
float, maxDistance, 0, 0)
1645NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbDistances, nanoVdbDistanceCount, nanoVdbDistanceVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1646NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbDistanceFirstElement, 0, 0)
1647NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbVelocities, nanoVdbVelocityCount, nanoVdbVelocityVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1648NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbVelocityFirstElement, 0, 0)
1649NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbDivergences, nanoVdbDivergenceCount, nanoVdbDivergenceVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1650NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbDivergenceFirstElement, 0, 0)
1651NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbTemperatures, nanoVdbTemperatureCount, nanoVdbTemperatureVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1652NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbTemperatureFirstElement, 0, 0)
1653NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbFuels, nanoVdbFuelCount, nanoVdbFuelVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1654NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbFuelFirstElement, 0, 0)
1655NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbBurns, nanoVdbBurnCount, nanoVdbBurnVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1656NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbBurnFirstElement, 0, 0)
1657NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbSmokes, nanoVdbSmokeCount, nanoVdbSmokeVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1658NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbSmokeFirstElement, 0, 0)
1659NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateVelocities, nanoVdbCoupleRateVelocityCount, nanoVdbCoupleRateVelocityVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1660NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateVelocityFirstElement, 0, 0)
1661NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateDivergences, nanoVdbCoupleRateDivergenceCount, nanoVdbCoupleRateDivergenceVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1662NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateDivergenceFirstElement, 0, 0)
1663NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateTemperatures, nanoVdbCoupleRateTemperatureCount, nanoVdbCoupleRateTemperatureVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1664NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateTemperatureFirstElement, 0, 0)
1665NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateFuels, nanoVdbCoupleRateFuelCount, nanoVdbCoupleRateFuelVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1666NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateFuelFirstElement, 0, 0)
1667NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateBurns, nanoVdbCoupleRateBurnCount, nanoVdbCoupleRateBurnVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1668NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateBurnFirstElement, 0, 0)
1669NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbCoupleRateSmokes, nanoVdbCoupleRateSmokeCount, nanoVdbCoupleRateSmokeVersion, eNvFlowReflectHint_asset, "asset(nanovdb)")
1670NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbCoupleRateSmokeFirstElement, 0, 0)
1671NV_FLOW_REFLECT_ARRAY_VERSIONED(NvFlowUint, nanoVdbRgba8s, nanoVdbRgba8Count, nanoVdbRgba8Version, eNvFlowReflectHint_asset, "asset(nanovdb)")
1672NV_FLOW_REFLECT_VALUE(NvFlowUint64, nanoVdbRgba8FirstElement, 0, 0)
1673NV_FLOW_REFLECT_VALUE(NvFlowBool32, applyPostPressure, 0, 0)
1674NV_FLOW_REFLECT_VALUE(NvFlowBool32, allocateActiveLeaves, 0, 0)
1675NV_FLOW_REFLECT_END(&NvFlowEmitterNanoVdbParams_default)
1676#undef NV_FLOW_REFLECT_TYPE
1684 NvFlowUint64 velocityParamCount;
1686 NvFlowUint64 densityParamCount;
1689 NvFlowBool32 isPostPressure;
1697#define NV_FLOW_REFLECT_TYPE NvFlowEmitterNanoVdbPinsIn
1698NV_FLOW_REFLECT_BEGIN()
1700NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1701NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1702NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowEmitterNanoVdbParams, velocityParams, velocityParamCount, eNvFlowReflectHint_pinEnabled, 0)
1705NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, valueTemp, eNvFlowReflectHint_pinEnabledMutable, 0)
1706NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPostPressure, eNvFlowReflectHint_pinEnabled, 0)
1707NV_FLOW_REFLECT_END(0)
1708#undef NV_FLOW_REFLECT_TYPE
1710#define NV_FLOW_REFLECT_TYPE NvFlowEmitterNanoVdbPinsOut
1711NV_FLOW_REFLECT_BEGIN()
1713NV_FLOW_REFLECT_END(0)
1714#undef NV_FLOW_REFLECT_TYPE
1716NV_FLOW_OP_TYPED(NvFlowEmitterNanoVdb)
1727 NvFlowUint64 paramCount;
1732 NvFlowInt4* locations;
1733 NvFlowUint64 locationCount;
1736#define NV_FLOW_REFLECT_TYPE NvFlowEmitterNanoVdbAllocatePinsIn
1737NV_FLOW_REFLECT_BEGIN()
1739NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1740NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
1741NV_FLOW_REFLECT_VALUE(
float, deltaTime, eNvFlowReflectHint_pinEnabledGlobal, 0)
1743NV_FLOW_REFLECT_END(0)
1744#undef NV_FLOW_REFLECT_TYPE
1746#define NV_FLOW_REFLECT_TYPE NvFlowEmitterNanoVdbAllocatePinsOut
1747NV_FLOW_REFLECT_BEGIN()
1748NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
1749NV_FLOW_REFLECT_END(0)
1750#undef NV_FLOW_REFLECT_TYPE
1752NV_FLOW_OP_TYPED(NvFlowEmitterNanoVdbAllocate)
1767 NvFlowBool32 sdfMode;
1768 const NvFlowFloat4* positions;
1769 NvFlowUint64 positionCount;
1770 const NvFlowFloat3* positionFloat3s;
1771 NvFlowUint64 positionFloat3Count;
1772 const NvFlowFloat4* anisotropyE1s;
1773 NvFlowUint64 anisotropyE1Count;
1774 const NvFlowFloat4* anisotropyE2s;
1775 NvFlowUint64 anisotropyE2Count;
1776 const NvFlowFloat4* anisotropyE3s;
1777 NvFlowUint64 anisotropyE3Count;
1778 NvFlowUint smoothIterations;
1779 float allocationScale;
1780 float allocationOffset;
1783#define NvFlowEllipsoidRasterParams_default_init { \
1803#define NV_FLOW_REFLECT_TYPE NvFlowEllipsoidRasterParams
1804NV_FLOW_REFLECT_BEGIN()
1805NV_FLOW_REFLECT_VALUE(
float, scale, 0, 0)
1806NV_FLOW_REFLECT_VALUE(
float, density, 0, 0)
1807NV_FLOW_REFLECT_VALUE(NvFlowBool32, sdfMode, 0, 0)
1808NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, positions, positionCount, eNvFlowReflectHint_asset, "asset(array)")
1809NV_FLOW_REFLECT_ARRAY(NvFlowFloat3, positionFloat3s, positionFloat3Count, eNvFlowReflectHint_asset, "asset(array)")
1810NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, anisotropyE1s, anisotropyE1Count, eNvFlowReflectHint_asset, "asset(array)")
1811NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, anisotropyE2s, anisotropyE2Count, eNvFlowReflectHint_asset, "asset(array)")
1812NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, anisotropyE3s, anisotropyE3Count, eNvFlowReflectHint_asset, "asset(array)")
1813NV_FLOW_REFLECT_VALUE(NvFlowUint, smoothIterations, 0, 0)
1814NV_FLOW_REFLECT_VALUE(
float, allocationScale, 0, 0)
1815NV_FLOW_REFLECT_VALUE(
float, allocationOffset, 0, 0)
1816NV_FLOW_REFLECT_END(&NvFlowEllipsoidRasterParams_default)
1817#undef NV_FLOW_REFLECT_TYPE
1825 NvFlowUint64 paramCount;
1834#define NV_FLOW_REFLECT_TYPE NvFlowEllipsoidRasterPinsIn
1835NV_FLOW_REFLECT_BEGIN()
1837NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1841NV_FLOW_REFLECT_END(0)
1842#undef NV_FLOW_REFLECT_TYPE
1844#define NV_FLOW_REFLECT_TYPE NvFlowEllipsoidRasterPinsOut
1845NV_FLOW_REFLECT_BEGIN()
1847NV_FLOW_REFLECT_END(0)
1848#undef NV_FLOW_REFLECT_TYPE
1850NV_FLOW_OP_TYPED(NvFlowEllipsoidRaster)
1858 NvFlowUint64 paramCount;
1864 NvFlowInt4* locations;
1865 NvFlowUint64 locationCount;
1868#define NV_FLOW_REFLECT_TYPE NvFlowEllipsoidRasterAllocatePinsIn
1869NV_FLOW_REFLECT_BEGIN()
1871NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1872NV_FLOW_REFLECT_VALUE(
NvFlowSparseParams, sparseParams, eNvFlowReflectHint_pinEnabled, 0)
1874NV_FLOW_REFLECT_END(0)
1875#undef NV_FLOW_REFLECT_TYPE
1877#define NV_FLOW_REFLECT_TYPE NvFlowEllipsoidRasterAllocatePinsOut
1878NV_FLOW_REFLECT_BEGIN()
1880NV_FLOW_REFLECT_ARRAY(NvFlowInt4, locations, locationCount, eNvFlowReflectHint_pinEnabled, 0)
1881NV_FLOW_REFLECT_END(0)
1882#undef NV_FLOW_REFLECT_TYPE
1884NV_FLOW_OP_TYPED(NvFlowEllipsoidRasterAllocate)
1890 NvFlowBool32 enabled;
1891 NvFlowFloat3 lightDirection;
1892 NvFlowFloat3 lightPosition;
1893 NvFlowBool32 isPointLight;
1895 float stepSizeScale;
1896 float stepOffsetScale;
1898 NvFlowUint numSteps;
1899 NvFlowBool32 coarsePropagate;
1902#define NvFlowShadowParams_default_init { \
1914static const NvFlowShadowParams NvFlowShadowParams_default = NvFlowShadowParams_default_init;
1916#define NV_FLOW_REFLECT_TYPE NvFlowShadowParams
1917NV_FLOW_REFLECT_BEGIN()
1918NV_FLOW_REFLECT_VALUE(NvFlowBool32, enabled, 0, 0)
1919NV_FLOW_REFLECT_VALUE(NvFlowFloat3, lightDirection, 0, 0)
1920NV_FLOW_REFLECT_VALUE(NvFlowFloat3, lightPosition, 0, 0)
1921NV_FLOW_REFLECT_VALUE(NvFlowBool32, isPointLight, 0, 0)
1922NV_FLOW_REFLECT_VALUE(
float, attenuation, 0, 0)
1923NV_FLOW_REFLECT_VALUE(
float, stepSizeScale, 0, 0)
1924NV_FLOW_REFLECT_VALUE(
float, stepOffsetScale, 0, 0)
1925NV_FLOW_REFLECT_VALUE(
float, minIntensity, 0, 0)
1926NV_FLOW_REFLECT_VALUE(NvFlowUint, numSteps, 0, 0)
1927NV_FLOW_REFLECT_VALUE(NvFlowBool32, coarsePropagate, 0, 0)
1928NV_FLOW_REFLECT_END(&NvFlowShadowParams_default)
1929#undef NV_FLOW_REFLECT_TYPE
1936 NvFlowUint64 paramCount;
1937 NvFlowTextureTransient* colormap;
1947#define NV_FLOW_REFLECT_TYPE NvFlowShadowPinsIn
1948NV_FLOW_REFLECT_BEGIN()
1950NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
1951NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowShadowParams, params, paramCount, eNvFlowReflectHint_pinEnabled, 0)
1952NV_FLOW_REFLECT_POINTER(NvFlowTextureTransient, colormap, eNvFlowReflectHint_pinEnabled, 0)
1954NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, coarseDensity, eNvFlowReflectHint_pinEnabled, 0)
1955NV_FLOW_REFLECT_END(0)
1956#undef NV_FLOW_REFLECT_TYPE
1958#define NV_FLOW_REFLECT_TYPE NvFlowShadowPinsOut
1959NV_FLOW_REFLECT_BEGIN()
1960NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, densityShadow, eNvFlowReflectHint_pinEnabled, 0)
1961NV_FLOW_REFLECT_END(0)
1962#undef NV_FLOW_REFLECT_TYPE
1964NV_FLOW_OP_TYPED(NvFlowShadow)
1970 NvFlowBool32 enableSpeedAsTemperature;
1971 NvFlowBool32 enableVelocityAsDensity;
1972 NvFlowFloat3 velocityScale;
1975#define NvFlowDebugVolumeParams_default_init { \
1978 {0.01f, 0.01f, 0.01f} \
1982#define NV_FLOW_REFLECT_TYPE NvFlowDebugVolumeParams
1983NV_FLOW_REFLECT_BEGIN()
1984NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableSpeedAsTemperature, 0, 0)
1985NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableVelocityAsDensity, 0, 0)
1986NV_FLOW_REFLECT_VALUE(NvFlowFloat3, velocityScale, 0, 0)
1987NV_FLOW_REFLECT_END(&NvFlowDebugVolumeParams_default)
1988#undef NV_FLOW_REFLECT_TYPE
1995 NvFlowUint64 paramCount;
2005#define NV_FLOW_REFLECT_TYPE NvFlowDebugVolumePinsIn
2006NV_FLOW_REFLECT_BEGIN()
2008NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
2011NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, densityShadow, eNvFlowReflectHint_pinEnabled, 0)
2012NV_FLOW_REFLECT_END(0)
2013#undef NV_FLOW_REFLECT_TYPE
2015#define NV_FLOW_REFLECT_TYPE NvFlowDebugVolumePinsOut
2016NV_FLOW_REFLECT_BEGIN()
2017NV_FLOW_REFLECT_VALUE(
NvFlowSparseTexture, densityShadow, eNvFlowReflectHint_pinEnabled, 0)
2018NV_FLOW_REFLECT_END(0)
2019#undef NV_FLOW_REFLECT_TYPE
2021NV_FLOW_OP_TYPED(NvFlowDebugVolume)
2027 NvFlowBool32 enableCloudMode;
2028 NvFlowFloat3 sunDirection;
2029 NvFlowFloat3 ambientColor;
2030 float ambientMultiplier;
2031 float densityMultiplier;
2032 NvFlowFloat3 volumeBaseColor;
2033 float volumeColorMultiplier;
2034 float shadowStepMultiplier;
2036 NvFlowFloat3 attenuationMultiplier;
2039#define NvFlowRayMarchCloudParams_default_init { \
2042 {0.4f, 0.55f, 0.9f}, \
2045 {1.1f, 1.f, 0.95f}, \
2053#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchCloudParams
2054NV_FLOW_REFLECT_BEGIN()
2055NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableCloudMode, 0, 0)
2056NV_FLOW_REFLECT_VALUE(NvFlowFloat3, sunDirection, 0, 0)
2057NV_FLOW_REFLECT_VALUE(NvFlowFloat3, ambientColor, 0, 0)
2058NV_FLOW_REFLECT_VALUE(
float, ambientMultiplier, 0, 0)
2059NV_FLOW_REFLECT_VALUE(
float, densityMultiplier, 0, 0)
2060NV_FLOW_REFLECT_VALUE(NvFlowFloat3, volumeBaseColor, 0, 0)
2061NV_FLOW_REFLECT_VALUE(
float, volumeColorMultiplier, 0, 0)
2062NV_FLOW_REFLECT_VALUE(
float, shadowStepMultiplier, 0, 0)
2063NV_FLOW_REFLECT_VALUE(
int, numShadowSteps, 0, 0)
2064NV_FLOW_REFLECT_VALUE(NvFlowFloat3, attenuationMultiplier, 0, 0)
2065NV_FLOW_REFLECT_END(&NvFlowRayMarchCloudParams_default)
2066#undef NV_FLOW_REFLECT_TYPE
2070 NvFlowBool32 enableBlockWireframe;
2071 NvFlowBool32 enableRawMode;
2074 float stepSizeScale;
2079#define NvFlowRayMarchParams_default_init { \
2086 NvFlowRayMarchCloudParams_default_init \
2088static const NvFlowRayMarchParams NvFlowRayMarchParams_default = NvFlowRayMarchParams_default_init;
2090#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchParams
2091NV_FLOW_REFLECT_BEGIN()
2092NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableBlockWireframe, 0, 0)
2093NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableRawMode, 0, 0)
2094NV_FLOW_REFLECT_VALUE(
float, colorScale, 0, 0)
2095NV_FLOW_REFLECT_VALUE(
float, attenuation, 0, 0)
2096NV_FLOW_REFLECT_VALUE(
float, stepSizeScale, 0, 0)
2097NV_FLOW_REFLECT_VALUE(
float, shadowFactor, 0, 0)
2099NV_FLOW_REFLECT_END(&NvFlowRayMarchParams_default)
2100#undef NV_FLOW_REFLECT_TYPE
2104 NvFlowBool32 enableBlockWireframe;
2105 float stepSizeScale;
2106 float densityThreshold;
2107 NvFlowBool32 refractionMode;
2108 NvFlowBool32 visualizeNormals;
2110 NvFlowFloat3 fluidColor;
2111 float fluidAbsorptionCoefficient;
2112 NvFlowFloat3 fluidSpecularReflectance;
2113 NvFlowFloat3 fluidDiffuseReflectance;
2114 NvFlowFloat3 fluidRadiance;
2117#define NvFlowRayMarchIsosurfaceParams_default_init { \
2124 {0.9f, 0.9f, 1.f}, \
2126 {0.1f, 0.1f, 0.1f}, \
2127 {0.1f, 0.1f, 0.1f}, \
2132#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchIsosurfaceParams
2133NV_FLOW_REFLECT_BEGIN()
2134NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableBlockWireframe, 0, 0)
2135NV_FLOW_REFLECT_VALUE(
float, stepSizeScale, 0, 0)
2136NV_FLOW_REFLECT_VALUE(
float, densityThreshold, 0, 0)
2137NV_FLOW_REFLECT_VALUE(NvFlowBool32, refractionMode, 0, 0)
2138NV_FLOW_REFLECT_VALUE(NvFlowBool32, visualizeNormals, 0, 0)
2139NV_FLOW_REFLECT_VALUE(
float, fluidIoR, 0, 0)
2140NV_FLOW_REFLECT_VALUE(NvFlowFloat3, fluidColor, 0, 0)
2141NV_FLOW_REFLECT_VALUE(
float, fluidAbsorptionCoefficient, 0, 0)
2142NV_FLOW_REFLECT_VALUE(NvFlowFloat3, fluidSpecularReflectance, 0, 0)
2143NV_FLOW_REFLECT_VALUE(NvFlowFloat3, fluidDiffuseReflectance, 0, 0)
2144NV_FLOW_REFLECT_VALUE(NvFlowFloat3, fluidRadiance, 0, 0)
2145NV_FLOW_REFLECT_END(&NvFlowRayMarchIsosurfaceParams_default)
2146#undef NV_FLOW_REFLECT_TYPE
2148#define NvFlowRayMarchColormapParams_default_pointCount_init 6u
2149static const NvFlowUint64 NvFlowRayMarchColormapParams_default_pointCount = NvFlowRayMarchColormapParams_default_pointCount_init;
2150#define NvFlowRayMarchColormapParams_default_xPoints_init { \
2158static const float NvFlowRayMarchColormapParams_default_xPoints[NvFlowRayMarchColormapParams_default_pointCount_init] = NvFlowRayMarchColormapParams_default_xPoints_init;
2160#define NvFlowRayMarchColormapParams_default_colorScalePoints_init { \
2168static const float NvFlowRayMarchColormapParams_default_colorScalePoints[NvFlowRayMarchColormapParams_default_pointCount_init] = NvFlowRayMarchColormapParams_default_colorScalePoints_init;
2170#define NvFlowRayMarchColormapParams_default_rgbaPoints_smoke_init { \
2171 { 0.9f, 0.9f, 0.9f, 0.004902f }, \
2172 { 0.9f, 0.9f, 0.9f, 0.904902f }, \
2173 { 0.9f, 0.9f, 0.9f, 0.904902f }, \
2174 { 0.9f, 0.9f, 0.9f, 0.904902f }, \
2175 { 0.9f, 0.9f, 0.9f, 0.904902f }, \
2176 { 0.9f, 0.9f, 0.9f, 0.904902f }, \
2178static const NvFlowFloat4 NvFlowRayMarchColormapParams_default_rgbaPoints_smoke[NvFlowRayMarchColormapParams_default_pointCount_init] = NvFlowRayMarchColormapParams_default_rgbaPoints_smoke_init;
2180#define NvFlowRayMarchColormapParams_default_rgbaPoints_fire_init { \
2181 { 0.015400f, 0.017700f, 0.015400f, 0.004902f }, \
2182 { 0.035750f, 0.035750f, 0.035750f, 0.504902f }, \
2183 { 0.035750f, 0.035750f, 0.035750f, 0.504902f }, \
2184 { 1.f, 0.1594125f, 0.0135315f, 0.800000f }, \
2185 { 13.534992f, 2.986956f, 0.125991f, 0.800000f }, \
2186 { 78.08f, 39.04f, 6.1f, 0.700000f }, \
2188static const NvFlowFloat4 NvFlowRayMarchColormapParams_default_rgbaPoints_fire[NvFlowRayMarchColormapParams_default_pointCount_init] = NvFlowRayMarchColormapParams_default_rgbaPoints_fire_init;
2192 NvFlowUint resolution;
2193 const float* xPoints;
2194 NvFlowUint64 xPointCount;
2195 const NvFlowFloat4* rgbaPoints;
2196 NvFlowUint64 rgbaPointCount;
2197 const float* colorScalePoints;
2198 NvFlowUint64 colorScalePointCount;
2202#define NvFlowRayMarchColormapParams_default_init { \
2204 NvFlowRayMarchColormapParams_default_xPoints, \
2205 NvFlowRayMarchColormapParams_default_pointCount_init, \
2206 NvFlowRayMarchColormapParams_default_rgbaPoints_smoke, \
2207 NvFlowRayMarchColormapParams_default_pointCount_init, \
2208 NvFlowRayMarchColormapParams_default_colorScalePoints, \
2209 NvFlowRayMarchColormapParams_default_pointCount_init, \
2214#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchColormapParams
2215NV_FLOW_REFLECT_BEGIN()
2216NV_FLOW_REFLECT_VALUE(NvFlowUint, resolution, 0, 0)
2217NV_FLOW_REFLECT_ARRAY(
float, xPoints, xPointCount, 0, 0)
2218NV_FLOW_REFLECT_ARRAY(NvFlowFloat4, rgbaPoints, rgbaPointCount, 0, 0)
2219NV_FLOW_REFLECT_ARRAY(
float, colorScalePoints, colorScalePointCount, 0, 0)
2220NV_FLOW_REFLECT_VALUE(
float, colorScale, 0, 0)
2221NV_FLOW_REFLECT_END(&NvFlowRayMarchColormapParams_default)
2222#undef NV_FLOW_REFLECT_TYPE
2226 const NvFlowFloat4x4* view;
2227 const NvFlowFloat4x4* projection;
2228 const NvFlowFloat4x4* projectionJittered;
2229 NvFlowUint textureWidth;
2230 NvFlowUint textureHeight;
2231 NvFlowUint sceneDepthWidth;
2232 NvFlowUint sceneDepthHeight;
2233 NvFlowTextureTransient* sceneDepthIn;
2234 NvFlowFormat sceneColorFormat;
2235 NvFlowTextureTransient* sceneColorIn;
2236 NvFlowTextureTransient** pSceneColorOut;
2246 NvFlowUint64 paramCount;
2249 NvFlowTextureTransient* colormap;
2251 float compositeColorScale;
2259#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchPinsIn
2260NV_FLOW_REFLECT_BEGIN()
2262NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
2263NV_FLOW_REFLECT_POINTER_ARRAY(
NvFlowRayMarchParams, params, paramCount, eNvFlowReflectHint_pinEnabled, 0)
2266NV_FLOW_REFLECT_POINTER(NvFlowTextureTransient, colormap, eNvFlowReflectHint_pinEnabled, 0)
2268NV_FLOW_REFLECT_VALUE(
float, compositeColorScale, eNvFlowReflectHint_pinEnabled, 0)
2269NV_FLOW_REFLECT_END(0)
2270#undef NV_FLOW_REFLECT_TYPE
2272#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchPinsOut
2273NV_FLOW_REFLECT_BEGIN()
2274NV_FLOW_REFLECT_VALUE(NvFlowUint, unused, 0, 0)
2275NV_FLOW_REFLECT_END(0)
2276#undef NV_FLOW_REFLECT_TYPE
2278NV_FLOW_OP_TYPED(NvFlowRayMarch)
2285 NvFlowUint64 paramCount;
2290 NvFlowTextureTransient* colormap;
2293#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchUpdateColormapPinsIn
2294NV_FLOW_REFLECT_BEGIN()
2296NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
2298NV_FLOW_REFLECT_END(0)
2299#undef NV_FLOW_REFLECT_TYPE
2301#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchUpdateColormapPinsOut
2302NV_FLOW_REFLECT_BEGIN()
2303NV_FLOW_REFLECT_POINTER(NvFlowTextureTransient, colormap, eNvFlowReflectHint_pinEnabled, 0)
2304NV_FLOW_REFLECT_END(0)
2305#undef NV_FLOW_REFLECT_TYPE
2307NV_FLOW_OP_TYPED(NvFlowRayMarchUpdateColormap)
2314 NvFlowUint64 paramCount;
2317 float compositeColorScale;
2325#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchIsosurfacePinsIn
2326NV_FLOW_REFLECT_BEGIN()
2328NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
2332NV_FLOW_REFLECT_VALUE(
float, compositeColorScale, eNvFlowReflectHint_pinEnabled, 0)
2333NV_FLOW_REFLECT_END(0)
2334#undef NV_FLOW_REFLECT_TYPE
2336#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchIsosurfacePinsOut
2337NV_FLOW_REFLECT_BEGIN()
2338NV_FLOW_REFLECT_VALUE(NvFlowUint, unused, 0, 0)
2339NV_FLOW_REFLECT_END(0)
2340#undef NV_FLOW_REFLECT_TYPE
2342NV_FLOW_OP_TYPED(NvFlowRayMarchIsosurface)
2348 NvFlowTextureTransient* texture;
2351 NvFlowFormat format;
2356 NvFlowTextureTransient* texture;
2359#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchCopyTexturePinsIn
2360NV_FLOW_REFLECT_BEGIN()
2362NV_FLOW_REFLECT_POINTER(NvFlowContext,
context, eNvFlowReflectHint_pinEnabledGlobal, 0)
2363NV_FLOW_REFLECT_POINTER(NvFlowTextureTransient, texture, eNvFlowReflectHint_pinEnabled, 0)
2364NV_FLOW_REFLECT_VALUE(NvFlowUint, width, eNvFlowReflectHint_pinEnabled, 0)
2365NV_FLOW_REFLECT_VALUE(NvFlowUint, height, eNvFlowReflectHint_pinEnabled, 0)
2366NV_FLOW_REFLECT_ENUM(format, eNvFlowReflectHint_pinEnabled, 0)
2367NV_FLOW_REFLECT_END(0)
2368#undef NV_FLOW_REFLECT_TYPE
2370#define NV_FLOW_REFLECT_TYPE NvFlowRayMarchCopyTexturePinsOut
2371NV_FLOW_REFLECT_BEGIN()
2372NV_FLOW_REFLECT_POINTER(NvFlowTextureTransient, texture, eNvFlowReflectHint_pinEnabled, 0)
2373NV_FLOW_REFLECT_END(0)
2374#undef NV_FLOW_REFLECT_TYPE
2376NV_FLOW_OP_TYPED(NvFlowRayMarchCopyTexture)
2382 NV_FLOW_REFLECT_INTERFACE();
2425#define NV_FLOW_REFLECT_TYPE NvFlowExtOpList
2426NV_FLOW_REFLECT_BEGIN()
2427NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterSphere, 0, 0)
2428NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterSphereAllocate, 0, 0)
2429NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterBox, 0, 0)
2430NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterBoxAllocate, 0, 0)
2431NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterPoint, 0, 0)
2432NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterPointAllocate, 0, 0)
2433NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterTexture, 0, 0)
2434NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterTextureAllocate, 0, 0)
2435NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterNanoVdb, 0, 0)
2436NV_FLOW_REFLECT_FUNCTION_POINTER(pEmitterNanoVdbAllocate, 0, 0)
2437NV_FLOW_REFLECT_FUNCTION_POINTER(pEllipsoidRaster, 0, 0)
2438NV_FLOW_REFLECT_FUNCTION_POINTER(pEllipsoidRasterAllocate, 0, 0)
2439NV_FLOW_REFLECT_FUNCTION_POINTER(pShadow, 0, 0)
2440NV_FLOW_REFLECT_FUNCTION_POINTER(pDebugVolume, 0, 0)
2441NV_FLOW_REFLECT_FUNCTION_POINTER(pRayMarch, 0, 0)
2442NV_FLOW_REFLECT_FUNCTION_POINTER(pRayMarchUpdateColormap, 0, 0)
2443NV_FLOW_REFLECT_FUNCTION_POINTER(pRayMarchIsosurface, 0, 0)
2444NV_FLOW_REFLECT_FUNCTION_POINTER(pRayMarchCopyTexture, 0, 0)
2445NV_FLOW_REFLECT_END(0)
2446NV_FLOW_REFLECT_INTERFACE_IMPL()
2447#undef NV_FLOW_REFLECT_TYPE
2456typedef struct NvFlowGrid NvFlowGrid;
2460 NvFlowUint maxLocations;
2461 NvFlowUint maxLocationsIsosurface;
2464#define NvFlowGridDesc_default_init { \
2468static const NvFlowGridDesc NvFlowGridDesc_default = NvFlowGridDesc_default_init;
2481 float densityCellSize;
2482 NvFlowBool32 enableSmallBlocks;
2483 NvFlowBool32 enableLowPrecisionVelocity;
2484 NvFlowBool32 enableLowPrecisionDensity;
2485 NvFlowBool32 forceClear;
2486 NvFlowBool32 forceDisableEmitters;
2487 NvFlowBool32 forceDisableCoreSimulation;
2488 NvFlowBool32 simulateWhenPaused;
2489 NvFlowUint blockMinLifetime;
2490 float stepsPerSecond;
2492 NvFlowUint maxStepsPerSimulate;
2493 NvFlowBool32 enableVariableTimeStep;
2494 NvFlowBool32 interpolateTimeSteps;
2495 NvFlowUint velocitySubSteps;
2503#define NvFlowGridSimulateLayerParams_default_init { \
2521 NvFlowAdvectionCombustionParams_default_init, \
2522 NvFlowVorticityParams_default_init, \
2523 NvFlowPressureParams_default_init, \
2524 NvFlowSummaryAllocateParams_default_init, \
2525 NvFlowSparseNanoVdbExportParams_default_init \
2529#define NV_FLOW_REFLECT_TYPE NvFlowGridSimulateLayerParams
2530NV_FLOW_REFLECT_BEGIN()
2531NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
2532NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
2533NV_FLOW_REFLECT_VALUE(
float, densityCellSize, 0, 0)
2534NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableSmallBlocks, 0, 0)
2535NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableLowPrecisionVelocity, 0, 0)
2536NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableLowPrecisionDensity, 0, 0)
2537NV_FLOW_REFLECT_VALUE(NvFlowBool32, forceClear, 0, 0)
2538NV_FLOW_REFLECT_VALUE(NvFlowBool32, forceDisableEmitters, 0, 0)
2539NV_FLOW_REFLECT_VALUE(NvFlowBool32, forceDisableCoreSimulation, 0, 0)
2540NV_FLOW_REFLECT_VALUE(NvFlowBool32, simulateWhenPaused, 0, 0)
2541NV_FLOW_REFLECT_VALUE(NvFlowUint, blockMinLifetime, 0, 0)
2542NV_FLOW_REFLECT_VALUE(
float, stepsPerSecond, 0, 0)
2543NV_FLOW_REFLECT_VALUE(
float, timeScale, 0, 0)
2544NV_FLOW_REFLECT_VALUE(NvFlowUint, maxStepsPerSimulate, 0, 0)
2545NV_FLOW_REFLECT_VALUE(NvFlowBool32, enableVariableTimeStep, 0, 0)
2546NV_FLOW_REFLECT_VALUE(NvFlowBool32, interpolateTimeSteps, 0, 0)
2547NV_FLOW_REFLECT_VALUE(NvFlowUint, velocitySubSteps, 0, 0)
2553NV_FLOW_REFLECT_END(&NvFlowGridSimulateLayerParams_default)
2554#undef NV_FLOW_REFLECT_TYPE
2566#define NvFlowGridOffscreenLayerParams_default_init { \
2569 NvFlowShadowParams_default_init, \
2570 NvFlowRayMarchColormapParams_default_init, \
2571 NvFlowDebugVolumeParams_default_init \
2575#define NV_FLOW_REFLECT_TYPE NvFlowGridOffscreenLayerParams
2576NV_FLOW_REFLECT_BEGIN()
2577NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
2578NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
2582NV_FLOW_REFLECT_END(&NvFlowGridOffscreenLayerParams_default)
2583#undef NV_FLOW_REFLECT_TYPE
2592#define NvFlowGridRenderLayerParams_default_init { \
2595 NvFlowRayMarchParams_default_init \
2599#define NV_FLOW_REFLECT_TYPE NvFlowGridRenderLayerParams
2600NV_FLOW_REFLECT_BEGIN()
2601NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
2602NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
2604NV_FLOW_REFLECT_END(&NvFlowGridRenderLayerParams_default)
2605#undef NV_FLOW_REFLECT_TYPE
2611 float densityCellSize;
2616#define NvFlowGridIsosurfaceLayerParams_default_init { \
2620 NvFlowEllipsoidRasterParams_default_init, \
2621 NvFlowRayMarchIsosurfaceParams_default_init \
2625#define NV_FLOW_REFLECT_TYPE NvFlowGridIsosurfaceLayerParams
2626NV_FLOW_REFLECT_BEGIN()
2627NV_FLOW_REFLECT_VALUE(NvFlowUint64, luid, eNvFlowReflectHint_transientNoEdit, 0)
2628NV_FLOW_REFLECT_VALUE(
int, layer, 0, 0)
2629NV_FLOW_REFLECT_VALUE(
float, densityCellSize, 0, 0)
2632NV_FLOW_REFLECT_END(&NvFlowGridIsosurfaceLayerParams_default)
2633#undef NV_FLOW_REFLECT_TYPE
2638 double absoluteSimTime;
2640 NvFlowBool32 globalForceClear;
2641 const NvFlowUint8* userdata;
2642 NvFlowUint64 userdataSizeInBytes;
2648 NvFlowUint64 snapshotCount;
2655 NvFlowBufferTransient* sparseBuffer;
2656 NvFlowTextureTransient* densityTexture;
2657 NvFlowTextureTransient* velocityTexture;
2658 NvFlowTextureTransient* colormap;
2665 NvFlowBufferTransient* sparseBuffer;
2666 NvFlowTextureTransient* densityTexture;
2672 NV_FLOW_REFLECT_INTERFACE();
2674 NvFlowGrid*(NV_FLOW_ABI* createGrid)(
2682 void(NV_FLOW_ABI* destroyGrid)(
2687 void(NV_FLOW_ABI* resetGrid)(
2693 void(NV_FLOW_ABI* simulate)(
2697 NvFlowBool32 globalForceClear
2700 void(NV_FLOW_ABI* offscreen)(
2706 void(NV_FLOW_ABI* getRenderData)(
2712 void(NV_FLOW_ABI* render)(
2716 const NvFlowFloat4x4* view,
2717 const NvFlowFloat4x4* projection,
2718 const NvFlowFloat4x4* projectionJittered,
2721 NvFlowUint sceneDepthWidth,
2722 NvFlowUint sceneDepthHeight,
2723 float compositeColorScale,
2724 NvFlowTextureTransient* sceneDepthIn,
2725 NvFlowFormat sceneColorFormat,
2726 NvFlowTextureTransient* sceneColorIn,
2727 NvFlowTextureTransient** pSceneColorOut
2730 void(NV_FLOW_ABI* updateIsosurface)(
2736 void(NV_FLOW_ABI* getIsosurfaceData)(
2742 void(NV_FLOW_ABI* renderIsosurface)(
2746 const NvFlowFloat4x4* view,
2747 const NvFlowFloat4x4* projection,
2748 const NvFlowFloat4x4* projectionJittered,
2751 NvFlowUint sceneDepthWidth,
2752 NvFlowUint sceneDepthHeight,
2753 float compositeColorScale,
2754 NvFlowTextureTransient* sceneDepthIn,
2755 NvFlowFormat sceneColorFormat,
2756 NvFlowTextureTransient* sceneColorIn,
2757 NvFlowTextureTransient** pSceneColorOut
2760 void(NV_FLOW_ABI* copyTexture)(
2765 NvFlowFormat sceneColorFormat,
2766 NvFlowTextureTransient* sceneColorIn,
2767 NvFlowTextureTransient** pSceneColorOut
2770 NvFlowUint(NV_FLOW_ABI* getActiveBlockCount)(NvFlowGrid* grid);
2772 NvFlowUint(NV_FLOW_ABI* getActiveBlockCountIsosurface)(NvFlowGrid* grid);
2774 void(NV_FLOW_ABI* setResourceMinLifetime)(NvFlowContext*
context, NvFlowGrid* grid, NvFlowUint64 minLifetime);
2777#define NV_FLOW_REFLECT_TYPE NvFlowGridInterface
2778NV_FLOW_REFLECT_BEGIN()
2779NV_FLOW_REFLECT_FUNCTION_POINTER(createGrid, 0, 0)
2780NV_FLOW_REFLECT_FUNCTION_POINTER(destroyGrid, 0, 0)
2781NV_FLOW_REFLECT_FUNCTION_POINTER(resetGrid, 0, 0)
2782NV_FLOW_REFLECT_FUNCTION_POINTER(simulate, 0, 0)
2783NV_FLOW_REFLECT_FUNCTION_POINTER(offscreen, 0, 0)
2784NV_FLOW_REFLECT_FUNCTION_POINTER(getRenderData, 0, 0)
2785NV_FLOW_REFLECT_FUNCTION_POINTER(render, 0, 0)
2786NV_FLOW_REFLECT_FUNCTION_POINTER(updateIsosurface, 0, 0)
2787NV_FLOW_REFLECT_FUNCTION_POINTER(getIsosurfaceData, 0, 0)
2788NV_FLOW_REFLECT_FUNCTION_POINTER(renderIsosurface, 0, 0)
2789NV_FLOW_REFLECT_FUNCTION_POINTER(copyTexture, 0, 0)
2790NV_FLOW_REFLECT_FUNCTION_POINTER(getActiveBlockCount, 0, 0)
2791NV_FLOW_REFLECT_FUNCTION_POINTER(getActiveBlockCountIsosurface, 0, 0)
2792NV_FLOW_REFLECT_FUNCTION_POINTER(setResourceMinLifetime, 0, 0)
2793NV_FLOW_REFLECT_END(0)
2794NV_FLOW_REFLECT_INTERFACE_IMPL()
2795#undef NV_FLOW_REFLECT_TYPE
2805struct NvFlowGridParams;
2806typedef struct NvFlowGridParams NvFlowGridParams;
2808struct NvFlowGridParamsSnapshot;
2809typedef struct NvFlowGridParamsSnapshot NvFlowGridParamsSnapshot;
2811struct NvFlowGridParamsNamed;
2812typedef struct NvFlowGridParamsNamed NvFlowGridParamsNamed;
2816 NV_FLOW_REFLECT_INTERFACE();
2818 NvFlowGridParams*(NV_FLOW_ABI* createGridParams)();
2820 void(NV_FLOW_ABI* destroyGridParams)(NvFlowGridParams* gridParams);
2822 void(NV_FLOW_ABI* enumerateParamTypes)(
2823 NvFlowGridParams* gridParams,
2824 const char** pTypenames,
2825 const char** pDisplayTypenames,
2827 NvFlowUint64* pCount
2830 void(NV_FLOW_ABI* getVersion)(
2831 NvFlowGridParams* gridParams,
2832 NvFlowUint64* pStagingVersion,
2833 NvFlowUint64* pMinActiveVersion
2836 void(NV_FLOW_ABI* commitParams)(
2837 NvFlowGridParams* gridParams,
2841 NvFlowBool32(NV_FLOW_ABI* resetParams)(NvFlowGridParams* gridParams);
2843 NvFlowGridParamsSnapshot*(NV_FLOW_ABI* getParamsSnapshot)(
2844 NvFlowGridParams* gridParams,
2845 double absoluteSimTime,
2849 NvFlowBool32(NV_FLOW_ABI* mapParamsDesc)(
2850 NvFlowGridParams* gridParams,
2851 NvFlowGridParamsSnapshot* snapshot,
2855 void(NV_FLOW_ABI* unmapParamsDesc)(
2856 NvFlowGridParams* gridParams,
2857 NvFlowGridParamsSnapshot* snapshot
2860 NvFlowGridParamsNamed*(NV_FLOW_ABI* createGridParamsNamed)(
const char* name);
2862 int(NV_FLOW_ABI* destroyGridParamsNamed)(NvFlowGridParamsNamed* gridParamsNamed);
2864 NvFlowGridParams*(NV_FLOW_ABI* mapGridParamsNamed)(NvFlowGridParamsNamed* gridParamsNamed);
2868#define NV_FLOW_REFLECT_TYPE NvFlowGridParamsInterface
2869NV_FLOW_REFLECT_BEGIN()
2870NV_FLOW_REFLECT_FUNCTION_POINTER(createGridParams, 0, 0)
2871NV_FLOW_REFLECT_FUNCTION_POINTER(destroyGridParams, 0, 0)
2872NV_FLOW_REFLECT_FUNCTION_POINTER(enumerateParamTypes, 0, 0)
2873NV_FLOW_REFLECT_FUNCTION_POINTER(getVersion, 0, 0)
2874NV_FLOW_REFLECT_FUNCTION_POINTER(commitParams, 0, 0)
2875NV_FLOW_REFLECT_FUNCTION_POINTER(resetParams, 0, 0)
2876NV_FLOW_REFLECT_FUNCTION_POINTER(getParamsSnapshot, 0, 0)
2877NV_FLOW_REFLECT_FUNCTION_POINTER(mapParamsDesc, 0, 0)
2878NV_FLOW_REFLECT_FUNCTION_POINTER(unmapParamsDesc, 0, 0)
2879NV_FLOW_REFLECT_FUNCTION_POINTER(createGridParamsNamed, 0, 0)
2880NV_FLOW_REFLECT_FUNCTION_POINTER(destroyGridParamsNamed, 0, 0)
2881NV_FLOW_REFLECT_FUNCTION_POINTER(mapGridParamsNamed, 0, 0)
2882NV_FLOW_REFLECT_END(0)
2883NV_FLOW_REFLECT_INTERFACE_IMPL()
2884#undef NV_FLOW_REFLECT_TYPE
2892struct NvFlowThreadPool;
2893typedef struct NvFlowThreadPool NvFlowThreadPool;
2895typedef void(*NvFlowThreadPoolTask_t)(NvFlowUint taskIdx, NvFlowUint threadIdx,
void* sharedMem,
void* userdata);
2899 NV_FLOW_REFLECT_INTERFACE();
2901 NvFlowUint(NV_FLOW_ABI* getDefaultThreadCount)();
2903 NvFlowThreadPool*(NV_FLOW_ABI* create)(NvFlowUint threadCount, NvFlowUint64 sharedMemorySizeInBytes);
2905 void(NV_FLOW_ABI* destroy)(NvFlowThreadPool* pool);
2907 NvFlowUint(NV_FLOW_ABI* getThreadCount)(NvFlowThreadPool* pool);
2909 void(NV_FLOW_ABI* execute)(NvFlowThreadPool* pool, NvFlowUint taskCount, NvFlowUint taskGranularity, NvFlowThreadPoolTask_t task,
void* userdata);
2912#define NV_FLOW_REFLECT_TYPE NvFlowThreadPoolInterface
2913NV_FLOW_REFLECT_BEGIN()
2914NV_FLOW_REFLECT_FUNCTION_POINTER(getDefaultThreadCount, 0, 0)
2915NV_FLOW_REFLECT_FUNCTION_POINTER(create, 0, 0)
2916NV_FLOW_REFLECT_FUNCTION_POINTER(destroy, 0, 0)
2917NV_FLOW_REFLECT_FUNCTION_POINTER(getThreadCount, 0, 0)
2918NV_FLOW_REFLECT_FUNCTION_POINTER(execute, 0, 0)
2919NV_FLOW_REFLECT_END(0)
2920NV_FLOW_REFLECT_INTERFACE_IMPL()
2921#undef NV_FLOW_REFLECT_TYPE
2929struct NvFlowContextOpt;
2930typedef struct NvFlowContextOpt NvFlowContextOpt;
2934 NV_FLOW_REFLECT_INTERFACE();
2936 NvFlowContextOpt*(NV_FLOW_ABI* create)(
NvFlowContextInterface* backendContextInterface, NvFlowContext* backendContext);
2938 void(NV_FLOW_ABI* destroy)(NvFlowContextOpt* contextOpt);
2940 void(NV_FLOW_ABI* getContext)(NvFlowContextOpt* contextOpt,
NvFlowContextInterface** pContextInterface, NvFlowContext** pContext);
2942 void(NV_FLOW_ABI* flush)(NvFlowContextOpt* contextOpt);
2944 NvFlowBufferTransient*(NV_FLOW_ABI* importBackendBufferTransient)(NvFlowContextOpt* contextOpt, NvFlowBufferTransient* backendBufferTransient);
2946 NvFlowTextureTransient*(NV_FLOW_ABI* importBackendTextureTransient)(NvFlowContextOpt* contextOpt, NvFlowTextureTransient* backendTextureTransient);
2948 void(NV_FLOW_ABI* exportBufferTransient)(NvFlowContextOpt* contextOpt, NvFlowBufferTransient* bufferTransient, NvFlowBufferTransient** pBackendBufferTransient);
2950 void(NV_FLOW_ABI* exportTextureTransient)(NvFlowContextOpt* contextOpt, NvFlowTextureTransient* textureTransient, NvFlowTextureTransient** pBackendTextureTransient);
2952 void(NV_FLOW_ABI* setResourceMinLifetime)(NvFlowContextOpt* contextOpt, NvFlowUint64 minLifetime);
2955#define NV_FLOW_REFLECT_TYPE NvFlowContextOptInterface
2956NV_FLOW_REFLECT_BEGIN()
2957NV_FLOW_REFLECT_FUNCTION_POINTER(create, 0, 0)
2958NV_FLOW_REFLECT_FUNCTION_POINTER(destroy, 0, 0)
2959NV_FLOW_REFLECT_FUNCTION_POINTER(getContext, 0, 0)
2960NV_FLOW_REFLECT_FUNCTION_POINTER(flush, 0, 0)
2961NV_FLOW_REFLECT_FUNCTION_POINTER(importBackendBufferTransient, 0, 0)
2962NV_FLOW_REFLECT_FUNCTION_POINTER(importBackendTextureTransient, 0, 0)
2963NV_FLOW_REFLECT_FUNCTION_POINTER(exportBufferTransient, 0, 0)
2964NV_FLOW_REFLECT_FUNCTION_POINTER(exportTextureTransient, 0, 0)
2965NV_FLOW_REFLECT_FUNCTION_POINTER(setResourceMinLifetime, 0, 0)
2966NV_FLOW_REFLECT_END(0)
2967NV_FLOW_REFLECT_INTERFACE_IMPL()
2968#undef NV_FLOW_REFLECT_TYPE
2976struct NvFlowDeviceManager;
2977typedef struct NvFlowDeviceManager NvFlowDeviceManager;
2981 NvFlowUint8 deviceUUID[16u];
2982 NvFlowUint8 deviceLUID[8u];
2983 NvFlowUint deviceNodeMask;
2984 NvFlowBool32 deviceLUIDValid;
2989 NvFlowUint deviceIndex;
2990 NvFlowBool32 enableExternalUsage;
2991 NvFlowLogPrint_t logPrint;
2994struct NvFlowSwapchainDesc;
2995typedef struct NvFlowSwapchainDesc NvFlowSwapchainDesc;
2997#if defined(NV_FLOW_SWAPCHAIN_DESC)
2998struct NvFlowSwapchainDesc
3001 HINSTANCE hinstance;
3007 NvFlowFormat format;
3012typedef struct NvFlowDevice NvFlowDevice;
3014struct NvFlowDeviceQueue;
3015typedef struct NvFlowDeviceQueue NvFlowDeviceQueue;
3017struct NvFlowDeviceSemaphore;
3018typedef struct NvFlowDeviceSemaphore NvFlowDeviceSemaphore;
3020struct NvFlowSwapchain;
3021typedef struct NvFlowSwapchain NvFlowSwapchain;
3032 NV_FLOW_REFLECT_INTERFACE();
3034 NvFlowDeviceManager*(NV_FLOW_ABI* createDeviceManager)(NvFlowBool32 enableValidationOnDebugBuild,
NvFlowThreadPoolInterface* threadPoolInterface, NvFlowUint threadCount);
3036 void(NV_FLOW_ABI* destroyDeviceManager)(NvFlowDeviceManager* manager);
3038 NvFlowBool32(NV_FLOW_ABI* enumerateDevices)(NvFlowDeviceManager* manager, NvFlowUint deviceIndex,
NvFlowPhysicalDeviceDesc* pDesc);
3041 NvFlowDevice*(NV_FLOW_ABI* createDevice)(NvFlowDeviceManager* manager,
const NvFlowDeviceDesc* desc);
3043 void(NV_FLOW_ABI* destroyDevice)(NvFlowDeviceManager* manager, NvFlowDevice* device);
3046 NvFlowDeviceSemaphore*(NV_FLOW_ABI* createSemaphore)(NvFlowDevice* device);
3048 void(NV_FLOW_ABI* destroySemaphore)(NvFlowDeviceSemaphore* semaphore);
3050 void(NV_FLOW_ABI* getSemaphoreExternalHandle)(NvFlowDeviceSemaphore* semaphore,
void* dstHandle, NvFlowUint64 dstHandleSize);
3052 void(NV_FLOW_ABI* closeSemaphoreExternalHandle)(NvFlowDeviceSemaphore* semaphore,
const void* srcHandle, NvFlowUint64 srcHandleSize);
3055 NvFlowDeviceQueue*(NV_FLOW_ABI* getDeviceQueue)(NvFlowDevice* device);
3057 int(NV_FLOW_ABI* flush)(NvFlowDeviceQueue* queue, NvFlowUint64* flushedFrameID, NvFlowDeviceSemaphore* waitSemaphore, NvFlowDeviceSemaphore* signalSemaphore);
3059 NvFlowUint64(NV_FLOW_ABI* getLastFrameCompleted)(NvFlowDeviceQueue* queue);
3061 void(NV_FLOW_ABI* waitForFrame)(NvFlowDeviceQueue* queue, NvFlowUint64 frameFrameID);
3063 void(NV_FLOW_ABI* waitIdle)(NvFlowDeviceQueue* queue);
3067 NvFlowContext*(NV_FLOW_ABI* getContext)(NvFlowDeviceQueue* queue);
3070 NvFlowSwapchain*(NV_FLOW_ABI* createSwapchain)(NvFlowDeviceQueue* queue,
const NvFlowSwapchainDesc* desc);
3072 void(NV_FLOW_ABI* destroySwapchain)(NvFlowSwapchain* swapchain);
3074 void(NV_FLOW_ABI* resizeSwapchain)(NvFlowSwapchain* swapchain, NvFlowUint width, NvFlowUint height);
3076 int(NV_FLOW_ABI* presentSwapchain)(NvFlowSwapchain* swapchain, NvFlowBool32 vsync, NvFlowUint64* flushedFrameID);
3078 NvFlowTexture*(NV_FLOW_ABI* getSwapchainFrontTexture)(NvFlowSwapchain* swapchain);
3081 void(NV_FLOW_ABI* enableProfiler)(NvFlowContext*
context,
void* userdata, void(NV_FLOW_ABI* reportEntries)(
void* userdata, NvFlowUint64 captureID, NvFlowUint numEntries,
NvFlowProfilerEntry* entries));
3083 void(NV_FLOW_ABI* disableProfiler)(NvFlowContext*
context);
3086 NvFlowUint64(NV_FLOW_ABI* registerBufferId)(NvFlowContext*
context, NvFlowBuffer* buffer);
3088 NvFlowUint64(NV_FLOW_ABI* registerTextureId)(NvFlowContext*
context, NvFlowTexture* texture);
3090 void(NV_FLOW_ABI* unregisterBufferId)(NvFlowContext*
context, NvFlowUint64 bufferId);
3092 void(NV_FLOW_ABI* unregisterTextureId)(NvFlowContext*
context, NvFlowUint64 textureId);
3094 void(NV_FLOW_ABI* setResourceMinLifetime)(NvFlowContext*
context, NvFlowUint64 minLifetime);
3097 void(NV_FLOW_ABI* getBufferExternalHandle)(NvFlowContext*
context, NvFlowBuffer* buffer,
void* dstHandle, NvFlowUint64 dstHandleSize, NvFlowUint64* pBufferSizeInBytes);
3099 void(NV_FLOW_ABI* closeBufferExternalHandle)(NvFlowContext*
context, NvFlowBuffer* buffer,
const void* srcHandle, NvFlowUint64 srcHandleSize);
3103#define NV_FLOW_REFLECT_TYPE NvFlowDeviceInterface
3104NV_FLOW_REFLECT_BEGIN()
3105NV_FLOW_REFLECT_FUNCTION_POINTER(createDeviceManager, 0, 0)
3106NV_FLOW_REFLECT_FUNCTION_POINTER(destroyDeviceManager, 0, 0)
3107NV_FLOW_REFLECT_FUNCTION_POINTER(enumerateDevices, 0, 0)
3108NV_FLOW_REFLECT_FUNCTION_POINTER(createDevice, 0, 0)
3109NV_FLOW_REFLECT_FUNCTION_POINTER(destroyDevice, 0, 0)
3110NV_FLOW_REFLECT_FUNCTION_POINTER(createSemaphore, 0, 0)
3111NV_FLOW_REFLECT_FUNCTION_POINTER(destroySemaphore, 0, 0)
3112NV_FLOW_REFLECT_FUNCTION_POINTER(getSemaphoreExternalHandle, 0, 0)
3113NV_FLOW_REFLECT_FUNCTION_POINTER(closeSemaphoreExternalHandle, 0, 0)
3114NV_FLOW_REFLECT_FUNCTION_POINTER(getDeviceQueue, 0, 0)
3115NV_FLOW_REFLECT_FUNCTION_POINTER(flush, 0, 0)
3116NV_FLOW_REFLECT_FUNCTION_POINTER(getLastFrameCompleted, 0, 0)
3117NV_FLOW_REFLECT_FUNCTION_POINTER(waitForFrame, 0, 0)
3118NV_FLOW_REFLECT_FUNCTION_POINTER(waitIdle, 0, 0)
3119NV_FLOW_REFLECT_FUNCTION_POINTER(getContextInterface, 0, 0)
3120NV_FLOW_REFLECT_FUNCTION_POINTER(getContext, 0, 0)
3121NV_FLOW_REFLECT_FUNCTION_POINTER(createSwapchain, 0, 0)
3122NV_FLOW_REFLECT_FUNCTION_POINTER(destroySwapchain, 0, 0)
3123NV_FLOW_REFLECT_FUNCTION_POINTER(resizeSwapchain, 0, 0)
3124NV_FLOW_REFLECT_FUNCTION_POINTER(presentSwapchain, 0, 0)
3125NV_FLOW_REFLECT_FUNCTION_POINTER(getSwapchainFrontTexture, 0, 0)
3126NV_FLOW_REFLECT_FUNCTION_POINTER(enableProfiler, 0, 0)
3127NV_FLOW_REFLECT_FUNCTION_POINTER(disableProfiler, 0, 0)
3128NV_FLOW_REFLECT_FUNCTION_POINTER(registerBufferId, 0, 0)
3129NV_FLOW_REFLECT_FUNCTION_POINTER(registerTextureId, 0, 0)
3130NV_FLOW_REFLECT_FUNCTION_POINTER(unregisterBufferId, 0, 0)
3131NV_FLOW_REFLECT_FUNCTION_POINTER(unregisterTextureId, 0, 0)
3132NV_FLOW_REFLECT_FUNCTION_POINTER(setResourceMinLifetime, 0, 0)
3133NV_FLOW_REFLECT_FUNCTION_POINTER(getBufferExternalHandle, 0, 0)
3134NV_FLOW_REFLECT_FUNCTION_POINTER(closeBufferExternalHandle, 0, 0)
3135NV_FLOW_REFLECT_END(0)
3136NV_FLOW_REFLECT_INTERFACE_IMPL()
3137#undef NV_FLOW_REFLECT_TYPE
3145struct NvFlowRadixSort;
3146typedef struct NvFlowRadixSort NvFlowRadixSort;
3150 NV_FLOW_REFLECT_INTERFACE();
3154 void(NV_FLOW_ABI* destroy)(NvFlowContext*
context, NvFlowRadixSort* radixSort);
3156 void(NV_FLOW_ABI* reserve)(NvFlowContext*
context, NvFlowRadixSort* radixSort, NvFlowUint numKeys);
3158 void(NV_FLOW_ABI* getInputBuffers)(NvFlowContext*
context, NvFlowRadixSort* radixSort, NvFlowBufferTransient** pKeyBuffer, NvFlowBufferTransient** pValBuffer);
3160 void(NV_FLOW_ABI* sort)(NvFlowContext*
context, NvFlowRadixSort* radixSort, NvFlowUint numKeys, NvFlowUint numKeyBits);
3162 void(NV_FLOW_ABI* getOutputBuffers)(NvFlowContext*
context, NvFlowRadixSort* radixSort, NvFlowBufferTransient** pKeyBuffer, NvFlowBufferTransient** pValBuffer);
3165#define NV_FLOW_REFLECT_TYPE NvFlowRadixSortInterface
3166NV_FLOW_REFLECT_BEGIN()
3167NV_FLOW_REFLECT_FUNCTION_POINTER(create, 0, 0)
3168NV_FLOW_REFLECT_FUNCTION_POINTER(destroy, 0, 0)
3169NV_FLOW_REFLECT_FUNCTION_POINTER(reserve, 0, 0)
3170NV_FLOW_REFLECT_FUNCTION_POINTER(getInputBuffers, 0, 0)
3171NV_FLOW_REFLECT_FUNCTION_POINTER(sort, 0, 0)
3172NV_FLOW_REFLECT_FUNCTION_POINTER(getOutputBuffers, 0, 0)
3173NV_FLOW_REFLECT_END(0)
3174NV_FLOW_REFLECT_INTERFACE_IMPL()
3175#undef NV_FLOW_REFLECT_TYPE
Definition NvFlowContext.h:362
Definition NvFlowExt.h:2933
Definition NvFlowReflect.h:488
********************************* DebugVolume ***************************************
Definition NvFlowExt.h:1969
Definition NvFlowExt.h:1991
Definition NvFlowExt.h:2001
Definition NvFlowExt.h:2988
Definition NvFlowExt.h:3031
Definition NvFlowExt.h:1853
Definition NvFlowExt.h:1862
********************************* Ellipsoid Raster ***************************************
Definition NvFlowExt.h:1757
Definition NvFlowExt.h:1764
Definition NvFlowExt.h:1820
Definition NvFlowExt.h:1830
********************************* EmitterBoxAllocate ***************************************
Definition NvFlowExt.h:379
Definition NvFlowExt.h:389
********************************* EmitterBox ***************************************
Definition NvFlowExt.h:223
Definition NvFlowExt.h:337
Definition NvFlowExt.h:351
********************************* EmitterMeshAllocate ***************************************
Definition NvFlowExt.h:1065
Definition NvFlowExt.h:1076
Definition NvFlowExt.h:1014
********************************* EmitterMesh ***************************************
Definition NvFlowExt.h:749
Definition NvFlowExt.h:1021
Definition NvFlowExt.h:1036
********************************* EmitterNanoVdbAllocate ***************************************
Definition NvFlowExt.h:1721
Definition NvFlowExt.h:1731
********************************* EmitterNanoVdb ***************************************
Definition NvFlowExt.h:1401
Definition NvFlowExt.h:1679
Definition NvFlowExt.h:1693
********************************* EmitterPointAllocate ***************************************
Definition NvFlowExt.h:706
Definition NvFlowExt.h:717
Definition NvFlowExt.h:653
********************************* EmitterPoint ***************************************
Definition NvFlowExt.h:415
Definition NvFlowExt.h:660
Definition NvFlowExt.h:676
********************************* EmitterSphereAllocate ***************************************
Definition NvFlowExt.h:187
Definition NvFlowExt.h:197
********************************* EmitterSphere ***************************************
Definition NvFlowExt.h:36
Definition NvFlowExt.h:145
Definition NvFlowExt.h:159
********************************* EmitterTextureAllocate ***************************************
Definition NvFlowExt.h:1365
Definition NvFlowExt.h:1375
********************************* EmitterTexture ***************************************
Definition NvFlowExt.h:1105
Definition NvFlowExt.h:1323
Definition NvFlowExt.h:1337
********************************* NvFlowExtOpList ***************************************
Definition NvFlowExt.h:2381
Definition NvFlowExt.h:2459
Definition NvFlowExt.h:2671
Definition NvFlowExt.h:2664
Definition NvFlowExt.h:2608
Definition NvFlowExt.h:2558
Definition NvFlowExt.h:2636
Definition NvFlowExt.h:2646
Definition NvFlowExt.h:2815
Definition NvFlowExt.h:2654
Definition NvFlowExt.h:2586
Definition NvFlowExt.h:2478
********************************* NvFlowOpList ***************************************
Definition NvFlow.h:1007
Definition NvFlowExt.h:2980
********************************* Pressure ***************************************
Definition NvFlow.h:772
Definition NvFlowExt.h:3024
Definition NvFlowExt.h:3149
********************************* RayMarch ***************************************
Definition NvFlowExt.h:2026
Definition NvFlowExt.h:2191
Definition NvFlowExt.h:2345
Definition NvFlowExt.h:2355
Definition NvFlowExt.h:2103
Definition NvFlowExt.h:2310
Definition NvFlowExt.h:2321
Definition NvFlowExt.h:2069
Definition NvFlowExt.h:2242
Definition NvFlowExt.h:2255
Definition NvFlowExt.h:2225
Definition NvFlowExt.h:2281
Definition NvFlowExt.h:2289
Definition NvFlowReflect.h:182
********************************* Shadow ***************************************
Definition NvFlowExt.h:1889
Definition NvFlowExt.h:1932
Definition NvFlowExt.h:1943
********************************* SparseNanoVdbExport ***************************************
Definition NvFlow.h:414
********************************* Summary ***************************************
Definition NvFlow.h:904
Definition NvFlowExt.h:2898
********************************* Vorticity ***************************************
Definition NvFlow.h:821