Crash During VDB Import. #83942

Closed
opened 2020-12-18 23:19:00 +01:00 by paul geraskin · 28 comments
Member

System Information
Operating system: Windows 10
Graphics card: Nvidia

Operating system: Linux-5.4.0-58-generic-x86_64-with-debian-bullseye-sid 64 Bits
Graphics card: SVGA3D; build: RELEASE; LLVM; VMware, Inc. 3.3 (Core Profile) Mesa 20.0.8

Blender Version
Broken:

  • 2.92.0 Alpha
  • 2.91.0
    Worked: 2.90.1

Short description of error
Importing the attached OpenVDB file results in Blender crashing. If the same VDB is imported with a lower resolution it doesn't crash. The crash is not caused by Blender running out of memory.

Exact steps for others to reproduce the error

  1. Use Add > Volume > Import OpenVDB and import the attached file.
    It should crash afterwards.
    vdb_out_1.vdb
GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) (/home/dev/01-data/01-git/blender-git/blender/source/blender/gpu/intern/gpu_texture.cc:505)
volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:307)
DRW_volume_batch_cache_get_grid(Volume * volume, VolumeGrid * volume_grid) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:323)
workbench_volume_object_cache_populate(WORKBENCH_Data * vedata, Object * ob, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:222)
workbench_volume_cache_populate(WORKBENCH_Data * vedata, Scene * UNUSED_scene, Object * ob, ModifierData * md, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:334)
workbench_cache_populate(void * ved, Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_engine.c:413)
drw_engines_cache_populate(Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1096)
DRW_draw_render_loop_ex(struct Depsgraph * depsgraph, RenderEngineType * engine_type, ARegion * region, View3D * v3d, GPUViewport * viewport, const bContext * evil_C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1604)
DRW_draw_view(const bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1511)
view3d_draw_view(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1595)
view3d_main_region_draw(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1617)
ED_region_do_draw(bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/screen/area.c:546)
wm_draw_window_offscreen(bContext * C, wmWindow * win, _Bool stereo) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:731)
wm_draw_window(bContext * C, wmWindow * win) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:872)
wm_draw_update(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:1073)
WM_main(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:641)
main(int argc, const char ** argv) (/home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:522)
**System Information** Operating system: Windows 10 Graphics card: Nvidia Operating system: Linux-5.4.0-58-generic-x86_64-with-debian-bullseye-sid 64 Bits Graphics card: SVGA3D; build: RELEASE; LLVM; VMware, Inc. 3.3 (Core Profile) Mesa 20.0.8 **Blender Version** Broken: - 2.92.0 Alpha - 2.91.0 Worked: 2.90.1 **Short description of error** Importing the attached OpenVDB file results in Blender crashing. If the same VDB is imported with a lower resolution it doesn't crash. The crash is not caused by Blender running out of memory. **Exact steps for others to reproduce the error** 1. Use *Add > Volume > Import OpenVDB* and import the attached file. It should crash afterwards. [vdb_out_1.vdb](https://archive.blender.org/developer/F9516848/vdb_out_1.vdb) ```lines GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) (/home/dev/01-data/01-git/blender-git/blender/source/blender/gpu/intern/gpu_texture.cc:505) volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:307) DRW_volume_batch_cache_get_grid(Volume * volume, VolumeGrid * volume_grid) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:323) workbench_volume_object_cache_populate(WORKBENCH_Data * vedata, Object * ob, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:222) workbench_volume_cache_populate(WORKBENCH_Data * vedata, Scene * UNUSED_scene, Object * ob, ModifierData * md, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:334) workbench_cache_populate(void * ved, Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_engine.c:413) drw_engines_cache_populate(Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1096) DRW_draw_render_loop_ex(struct Depsgraph * depsgraph, RenderEngineType * engine_type, ARegion * region, View3D * v3d, GPUViewport * viewport, const bContext * evil_C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1604) DRW_draw_view(const bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1511) view3d_draw_view(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1595) view3d_main_region_draw(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1617) ED_region_do_draw(bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/screen/area.c:546) wm_draw_window_offscreen(bContext * C, wmWindow * win, _Bool stereo) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:731) wm_draw_window(bContext * C, wmWindow * win) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:872) wm_draw_update(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:1073) WM_main(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:641) main(int argc, const char ** argv) (/home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:522) ```
Author
Member

Added subscriber: @PaulGeraskin

Added subscriber: @PaulGeraskin

Added subscriber: @deadpin

Added subscriber: @deadpin

Crashes for me as well. It attempts to create a 3d texture for the volume of size 415x2928x859 which exceeds the individual dimension maximum of 2048 (for me at least).

Crashes for me as well. It attempts to create a 3d texture for the volume of size 415x2928x859 which exceeds the individual dimension maximum of 2048 (for me at least).

Added subscriber: @rjg

Added subscriber: @rjg

Blender does use significantly more memory than you reported (total memory usage on my system is around 10.6 GB on import), but it does crash. The tex is NULL in GPU_texture_swizzle_set. It looks like the cache_grid wasn't properly populated.

GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) (/home/dev/01-data/01-git/blender-git/blender/source/blender/gpu/intern/gpu_texture.cc:505)
volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:307)
DRW_volume_batch_cache_get_grid(Volume * volume, VolumeGrid * volume_grid) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:323)
workbench_volume_object_cache_populate(WORKBENCH_Data * vedata, Object * ob, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:222)
workbench_volume_cache_populate(WORKBENCH_Data * vedata, Scene * UNUSED_scene, Object * ob, ModifierData * md, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:334)
workbench_cache_populate(void * ved, Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_engine.c:413)
drw_engines_cache_populate(Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1096)
DRW_draw_render_loop_ex(struct Depsgraph * depsgraph, RenderEngineType * engine_type, ARegion * region, View3D * v3d, GPUViewport * viewport, const bContext * evil_C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1604)
DRW_draw_view(const bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1511)
view3d_draw_view(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1595)
view3d_main_region_draw(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1617)
ED_region_do_draw(bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/screen/area.c:546)
wm_draw_window_offscreen(bContext * C, wmWindow * win, _Bool stereo) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:731)
wm_draw_window(bContext * C, wmWindow * win) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:872)
wm_draw_update(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:1073)
WM_main(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:641)
main(int argc, const char ** argv) (/home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:522)
Blender does use significantly more memory than you reported (total memory usage on my system is around 10.6 GB on import), but it does crash. The `tex` is `NULL` in `GPU_texture_swizzle_set`. It looks like the `cache_grid` wasn't properly populated. ```lines GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) (/home/dev/01-data/01-git/blender-git/blender/source/blender/gpu/intern/gpu_texture.cc:505) volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:307) DRW_volume_batch_cache_get_grid(Volume * volume, VolumeGrid * volume_grid) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_cache_impl_volume.c:323) workbench_volume_object_cache_populate(WORKBENCH_Data * vedata, Object * ob, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:222) workbench_volume_cache_populate(WORKBENCH_Data * vedata, Scene * UNUSED_scene, Object * ob, ModifierData * md, eV3DShadingColorType color_type) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_volume.c:334) workbench_cache_populate(void * ved, Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/engines/workbench/workbench_engine.c:413) drw_engines_cache_populate(Object * ob) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1096) DRW_draw_render_loop_ex(struct Depsgraph * depsgraph, RenderEngineType * engine_type, ARegion * region, View3D * v3d, GPUViewport * viewport, const bContext * evil_C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1604) DRW_draw_view(const bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/draw/intern/draw_manager.c:1511) view3d_draw_view(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1595) view3d_main_region_draw(const bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_view3d/view3d_draw.c:1617) ED_region_do_draw(bContext * C, ARegion * region) (/home/dev/01-data/01-git/blender-git/blender/source/blender/editors/screen/area.c:546) wm_draw_window_offscreen(bContext * C, wmWindow * win, _Bool stereo) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:731) wm_draw_window(bContext * C, wmWindow * win) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:872) wm_draw_update(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_draw.c:1073) WM_main(bContext * C) (/home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:641) main(int argc, const char ** argv) (/home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:522) ```

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'

At the moment I'm not sure if the issue is that this is improperly handled by the viewport or during import.

At the moment I'm not sure if the issue is that this is improperly handled by the viewport or during import.
Author
Member

@rjg Ah, sorry. I checked at windows memory monitor and it showed not more than 1.5 gb. )
Thanks for clarification.

@rjg Ah, sorry. I checked at windows memory monitor and it showed not more than 1.5 gb. ) Thanks for clarification.
Author
Member

@rjg In houdini it imports during 10 seconds. And it takes about 2.5gb (including the houdini).
image.png

@rjg In houdini it imports during 10 seconds. And it takes about 2.5gb (including the houdini). ![image.png](https://archive.blender.org/developer/F9517685/image.png)

I tested this on a Linux, so the numbers might be different on Windows. If this is indeed that much less on Windows, this would be a separate issue worth investigating.

I tested this on a Linux, so the numbers might be different on Windows. If this is indeed that much less on Windows, this would be a separate issue worth investigating.
Member

Added subscriber: @JacquesLucke

Added subscriber: @JacquesLucke
Member

There are multiple issues at play here.

While I'm not 100% sure, I think the crash is actually caused because there is too little RAM or VRAM. How much do you have?
Windows might not show you that there is too little memory, because the memory is not allocated in many small chunks but in one very large chunk. If the chunk does not fit in memory, the allocation will fail. This is not visible in the task manager.

At least 4 GB of RAM are required for this volume. Probably more than that though. For rendering it has to be converted to a dense volume (that is not ideal and will be fixed later at some point). The dense version of the volume has 1,040,142,720 voxels. Since this is a float grid, we need 4 bytes per voxel.

For me the volume loads without problems (I have 32 GB RAM). However, then there is the next problem. The density grid in the volume contains values between -0.0014 and 0.0014. Therefore they will be pretty much invisible in Blender. With some remapping in code, I managed to make the volume visible as can be seen below. This can probably also be remapped in a shader, but I haven't tried it.

I used voxels- [x] = -voxels- [x] * 10000; in BKE_volume_grid_dense_floats to get this image.
image.png

The real fix here is to support rendering sparse volumes, which require significantly less memory. That is outside of the scope of a bug report though.

There are multiple issues at play here. While I'm not 100% sure, I think the crash is actually caused because there is too little RAM or VRAM. How much do you have? Windows might not show you that there is too little memory, because the memory is not allocated in many small chunks but in one very large chunk. If the chunk does not fit in memory, the allocation will fail. This is not visible in the task manager. At least 4 GB of RAM are required for this volume. Probably more than that though. For rendering it has to be converted to a dense volume (that is not ideal and will be fixed later at some point). The dense version of the volume has `1,040,142,720` voxels. Since this is a float grid, we need 4 bytes per voxel. For me the volume loads without problems (I have 32 GB RAM). However, then there is the next problem. The density grid in the volume contains values between `-0.0014` and `0.0014`. Therefore they will be pretty much invisible in Blender. With some remapping in code, I managed to make the volume visible as can be seen below. This can probably also be remapped in a shader, but I haven't tried it. I used `voxels- [x] = -voxels- [x] * 10000;` in `BKE_volume_grid_dense_floats` to get this image. ![image.png](https://archive.blender.org/developer/F9550358/image.png) The real fix here is to support rendering sparse volumes, which require significantly less memory. That is outside of the scope of a bug report though.
Member

Changed status from 'Confirmed' to: 'Archived'

Changed status from 'Confirmed' to: 'Archived'
Member

I'm closing this, because I'm quite sure it is an out-of-memory issue, even if it does not seem to be one at first.

I'm closing this, because I'm quite sure it is an out-of-memory issue, even if it does not seem to be one at first.
Author
Member

Changed status from 'Archived' to: 'Confirmed'

Changed status from 'Archived' to: 'Confirmed'
Author
Member

Hi,

I have 32 gb of ram. This is certainly not because out of memory issue. Sorry, the image below is in russian.
image.png

I downloaded the latest Blender and I still have a crash.

In houdini I can import 4 or 6 copies of this VDB file and I have no crash.
image.png

I'll reopen the issue if you don't mind.

Hi, I have 32 gb of ram. This is certainly not because out of memory issue. Sorry, the image below is in russian. ![image.png](https://archive.blender.org/developer/F9550425/image.png) I downloaded the latest Blender and I still have a crash. In houdini I can import 4 or 6 copies of this VDB file and I have no crash. ![image.png](https://archive.blender.org/developer/F9550438/image.png) I'll reopen the issue if you don't mind.
Member

Well in that case it could be a Windows or gpu driver related issue.

Comparing this to the memory consumption of Houdini does not make much sense, because Houdini probably only uses the sparse representation which requires significantly less memory. Blender currently has to convert it to a dense volume for viewport rendering.

Well in that case it could be a Windows or gpu driver related issue. Comparing this to the memory consumption of Houdini does not make much sense, because Houdini probably only uses the sparse representation which requires significantly less memory. Blender currently has to convert it to a dense volume for viewport rendering.
Author
Member

I have 452.06 NVidia driver which is pretty fresh,
image.png

There is a crash on Linux too. Just read comments above. This is not OS or video driver problem I guess.

Houdini just shows capacity of memory. It's possible to check in other 3d software which supports VDB. I just have free houdini only to test memory issues.

I have 452.06 NVidia driver which is pretty fresh, ![image.png](https://archive.blender.org/developer/F9550479/image.png) There is a crash on Linux too. Just read comments above. This is not OS or video driver problem I guess. Houdini just shows capacity of memory. It's possible to check in other 3d software which supports VDB. I just have free houdini only to test memory issues.

As I mentioned above, this is exceeding the size of the 3d texture used for viewport display - at least for me. Might not be the only problem, but it's certainly one of them.

The following would explain the bug reporters stack trace in the description.

The offending code is this:

blender.exe!volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) Line 301	C

[1]    cache_grid->texture = GPU_texture_create_3d("volume_grid",
                                                UNPACK3(dense_grid.resolution),
                                                1,
                                                format,
                                                GPU_DATA_FLOAT,
                                                dense_grid.voxels);
[2]    GPU_texture_swizzle_set(cache_grid->texture, (channels == 3) ? "rgb1" : "rrr1");
  • This call returns null because internally the GLTexture::proxy_check call has this int max_3d_size = GLContext::max_texture_3d_size; // THIS IS 2048 for me
blender.exe!blender::gpu::GLTexture::proxy_check(int mip) Line 571
...
    if (size[0] > max_3d_size || size[1] > max_3d_size || size[2] > max_3d_size) {
      return false;
    }

...
...
blender.exe!gpu_texture_create(const char * name, const int w, const int h, const int d, const blender::gpu::eGPUTextureType type, int UNUSED_mips, eGPUTextureFormat tex_format, eGPUDataFormat data_format, const void * pixels) Line 218
...
  if (!success) {
    delete tex;
    return nullptr;
  }

  • Later on blender tries to to touch that null variable - cache_grid->texture
Exception thrown at 0x00007FF61E3D9D52 in blender.exe: 0xC0000005: Access violation reading location 0x0000000000000000.

blender.exe!GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) Line 505	C++
blender.exe!volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) Line 308	C

As I mentioned above, this is exceeding the size of the 3d texture used for viewport display - at least for me. Might not be the only problem, but it's certainly one of them. The following would explain the bug reporters stack trace in the description. The offending code is this: ``` blender.exe!volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) Line 301 C [1] cache_grid->texture = GPU_texture_create_3d("volume_grid", UNPACK3(dense_grid.resolution), 1, format, GPU_DATA_FLOAT, dense_grid.voxels); [2] GPU_texture_swizzle_set(cache_grid->texture, (channels == 3) ? "rgb1" : "rrr1"); ``` - [x] This call returns null because internally the `GLTexture::proxy_check` call has this `int max_3d_size = GLContext::max_texture_3d_size; // THIS IS 2048 for me` ``` blender.exe!blender::gpu::GLTexture::proxy_check(int mip) Line 571 ... if (size[0] > max_3d_size || size[1] > max_3d_size || size[2] > max_3d_size) { return false; } ... ... blender.exe!gpu_texture_create(const char * name, const int w, const int h, const int d, const blender::gpu::eGPUTextureType type, int UNUSED_mips, eGPUTextureFormat tex_format, eGPUDataFormat data_format, const void * pixels) Line 218 ... if (!success) { delete tex; return nullptr; } ``` - [x] Later on blender tries to to touch that null variable - `cache_grid->texture` ``` Exception thrown at 0x00007FF61E3D9D52 in blender.exe: 0xC0000005: Access violation reading location 0x0000000000000000. blender.exe!GPU_texture_swizzle_set(GPUTexture * tex, const char * swizzle) Line 505 C++ blender.exe!volume_grid_cache_get(Volume * volume, VolumeGrid * grid, VolumeBatchCache * cache) Line 308 C ```
Member

As I mentioned above, this is exceeding the size of the 3d texture used for viewport display - at least for me. Might not be the only problem, but it's certainly one of them.

This seems to be the most likely reason for the crash currently. For me the max size is 8192.

You can check what is your max size by running this code in Blenders text editor and checking the output in the terminal.

import bgl
buffer = bgl.Buffer(bgl.GL_INT, 1)
bgl.glGetIntegerv(bgl.GL_MAX_3D_TEXTURE_SIZE, buffer)
max_size = buffer[0]
print(max_size)
> As I mentioned above, this is exceeding the size of the 3d texture used for viewport display - at least for me. Might not be the only problem, but it's certainly one of them. This seems to be the most likely reason for the crash currently. For me the max size is 8192. You can check what is your max size by running this code in Blenders text editor and checking the output in the terminal. ```lang=python import bgl buffer = bgl.Buffer(bgl.GL_INT, 1) bgl.glGetIntegerv(bgl.GL_MAX_3D_TEXTURE_SIZE, buffer) max_size = buffer[0] print(max_size) ```
Member

Changed status from 'Confirmed' to: 'Needs User Info'

Changed status from 'Confirmed' to: 'Needs User Info'
Author
Member

Sorry for delay.

image.png

Sorry for delay. ![image.png](https://archive.blender.org/developer/F9553177/image.png)
Member

Changed status from 'Needs User Info' to: 'Confirmed'

Changed status from 'Needs User Info' to: 'Confirmed'
Member

Thanks. That is the issue then. Your GPU or driver (not sure is responsible for that value) does not support dense 3d textures large enough to fit the volume. You have the same issue as @deadpin.

In the short term, we should improve the error handling and in the long term, we should support showing volumes in the viewport without converting them to a dense 3d texture.

Thanks. That is the issue then. Your GPU or driver (not sure is responsible for that value) does not support dense 3d textures large enough to fit the volume. You have the same issue as @deadpin. In the short term, we should improve the error handling and in the long term, we should support showing volumes in the viewport without converting them to a dense 3d texture.

This issue was referenced by e3ae7d1f2f

This issue was referenced by e3ae7d1f2f4592a0cc9032e2056b2236a39795f8
Member

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'
Jacques Lucke self-assigned this 2021-01-08 12:14:37 +01:00

Added subscriber: @ramonkarlos

Added subscriber: @ramonkarlos

allways crash when import mantaflow generated VDB files. delete mantaflow from Blender. this is a pain to try working on this.

allways crash when import mantaflow generated VDB files. delete mantaflow from Blender. this is a pain to try working on this.
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
6 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#83942
No description provided.