Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add simulation data support in OptiX engine #737

Merged
merged 22 commits into from
Mar 1, 2019

Conversation

karjonas
Copy link
Contributor

No description provided.

brayns/common/transferFunction/TransferFunction.cpp Outdated Show resolved Hide resolved
engines/optix/cuda/renderer/BasicSimulation.cu Outdated Show resolved Hide resolved
engines/optix/cuda/renderer/BasicSimulation.cu Outdated Show resolved Hide resolved
engines/optix/cuda/renderer/BasicSimulation.cu Outdated Show resolved Hide resolved
engines/optix/cuda/renderer/BasicSimulation.cu Outdated Show resolved Hide resolved
engines/optix/OptiXModel.cpp Outdated Show resolved Hide resolved
engines/optix/OptiXModel.cpp Outdated Show resolved Hide resolved
engines/optix/OptiXModel.cpp Outdated Show resolved Hide resolved
engines/optix/OptiXScene.cpp Outdated Show resolved Hide resolved
engines/optix/cuda/geometry/TrianglesMesh.cu Outdated Show resolved Hide resolved
Copy link
Contributor

@hernando hernando left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a test as well?

@karjonas karjonas force-pushed the simdata1 branch 2 times, most recently from ae4f547 to 4fc66fb Compare February 28, 2019 10:29
@karjonas
Copy link
Contributor Author

Issues fixed

@@ -595,4 +602,60 @@ AbstractSimulationHandlerPtr Model::getSimulationHandler() const
{
return _simulationHandler;
}

bool Model::commitSimulation()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't the transfer function used for volumes (i.e. not only for simulation)?


bool Model::_commitTransferFunction()
{
if (!_transferFunction.isModified() && _hasCommitedTransferFunction())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would remove _hasCommitedTransferFunction. I know you're just translating the original code, but the performance benefit is debatable while it complicates maintenance (the purpose of the function is not clear and forces any coder to look at the derive classes implementation to get the full picture).


const auto animationFrame = _animationParameters.getFrame();

if (_hasCommitedSimulationData() &&
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as for the transfer function.
I even think it's completely unnecessary because once you have called _commitSimulationDataImpl, this part of the condition is always true and the first time you evaluate it, the second part is always false because the current animation frame gets updated in line 652 (and only there).


modelDesc->getModel().getSimulationHandler()->waitReady();
// NOTE: Replace for-loop with samples per pixel when available in OptiX
for (int i = 0; i < 100; ++i)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need to many samples to make it consistent?

hernando
hernando previously approved these changes Mar 1, 2019
Copy link
Contributor

@hernando hernando left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job!

@karjonas karjonas merged commit 8eab0d4 into BlueBrain:master Mar 1, 2019
@karjonas karjonas deleted the simdata1 branch March 1, 2019 12:35
tribal-tec pushed a commit to tribal-tec/Brayns that referenced this pull request Apr 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants