Add Chromium-only Blender WebEngine parity work
This commit is contained in:
43
blender-5.2.0/extern/mantaflow/patches/liquid-mesh-performance.patch
vendored
Normal file
43
blender-5.2.0/extern/mantaflow/patches/liquid-mesh-performance.patch
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
diff --git a/extern/mantaflow/preprocessed/plugin/flip.cpp b/extern/mantaflow/preprocessed/plugin/flip.cpp
|
||||
index 8757958d4b0..f5d7147c34f 100644
|
||||
--- a/extern/mantaflow/preprocessed/plugin/flip.cpp
|
||||
+++ b/extern/mantaflow/preprocessed/plugin/flip.cpp
|
||||
@@ -1012,6 +1012,7 @@ struct ComputeAveragedLevelsetWeight : public KernelBase {
|
||||
const ParticleIndexSystem &indexSys,
|
||||
LevelsetGrid &phi,
|
||||
const Real radius,
|
||||
+ const Real sradiusInv,
|
||||
const ParticleDataImpl<int> *ptype,
|
||||
const int exclude,
|
||||
Grid<Vec3> *save_pAcc = nullptr,
|
||||
@@ -1020,8 +1021,6 @@ struct ComputeAveragedLevelsetWeight : public KernelBase {
|
||||
const Vec3 gridPos = Vec3(i, j, k) + Vec3(0.5); // shifted by half cell
|
||||
Real phiv = radius * 1.0; // outside
|
||||
|
||||
- // loop over neighborhood, similar to ComputeUnionLevelsetPindex
|
||||
- const Real sradiusInv = 1. / (4. * radius * radius);
|
||||
const int r = int(radius) + 1;
|
||||
// accumulators
|
||||
Real wacc = 0.;
|
||||
@@ -1120,17 +1119,19 @@ struct ComputeAveragedLevelsetWeight : public KernelBase {
|
||||
{
|
||||
const int _maxX = maxX;
|
||||
const int _maxY = maxY;
|
||||
+ // loop over neighborhood, similar to ComputeUnionLevelsetPindex
|
||||
+ const Real sradiusInv = 1. / (4. * radius * radius);
|
||||
if (maxZ > 1) {
|
||||
for (int k = __r.begin(); k != (int)__r.end(); k++)
|
||||
for (int j = 0; j < _maxY; j++)
|
||||
for (int i = 0; i < _maxX; i++)
|
||||
- op(i, j, k, parts, index, indexSys, phi, radius, ptype, exclude, save_pAcc, save_rAcc);
|
||||
+ op(i, j, k, parts, index, indexSys, phi, radius, sradiusInv, ptype, exclude, save_pAcc, save_rAcc);
|
||||
}
|
||||
else {
|
||||
const int k = 0;
|
||||
for (int j = __r.begin(); j != (int)__r.end(); j++)
|
||||
for (int i = 0; i < _maxX; i++)
|
||||
- op(i, j, k, parts, index, indexSys, phi, radius, ptype, exclude, save_pAcc, save_rAcc);
|
||||
+ op(i, j, k, parts, index, indexSys, phi, radius, sradiusInv, ptype, exclude, save_pAcc, save_rAcc);
|
||||
}
|
||||
}
|
||||
void run()
|
||||
Reference in New Issue
Block a user