-
Notifications
You must be signed in to change notification settings - Fork 21
Fix 16-bits and anisotropic raw volumes bugs #358
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1, except for missing Changelog update
@@ -81,15 +75,13 @@ class NoMemoryUnit : public MemoryUnit | |||
class ConstMemoryUnit : public MemoryUnit | |||
{ | |||
public: | |||
ConstMemoryUnit( const uint8_t* ptr, const size_t size ); | |||
explicit ConstMemoryUnit( const uint8_t* ptr ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How is this possible that the size is unused? With a raw pointer you always need a size, the only exception I know of is the '\0' terminated c_str, but no such convention seems to be used / documented here...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So as per our discussion, the whole MemoryUnit classes should be rewritten, but this is a bigger story. Meanwhile, this "cleanup" is OK as it highlights the underlying design issues.
@@ -253,6 +233,50 @@ struct RayCastRenderer::Impl | |||
_computedSamplesPerRay = std::max( maxVoxelsAtLOD, (float)minSamplesPerRay ); | |||
} | |||
|
|||
Vector2f dataSourceRange; | |||
uint32_t shaderDataType; | |||
switch( _dataSource.getVolumeInfo().dataType ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this switch is too long to be inlined and should be moved back to one or two separate methods.
No description provided.