Closed Malcolmnixon closed 11 months ago
The first time its loaded without a .godot folder there are a bunch of assert failures on in vhacdVolume.h line 365.
Shouldn't this be a separate reported issue? It happens with a couple of assets, are they not valid in some way?
godot.windows.editor.dev.x86_64.exe!common_assert_to_message_box<wchar_t>(const wchar_t * const expression, const wchar_t * const file_name, const unsigned int line_number, void * const return_address) Line 388 (c:\Users\yasch\AppData\Local\Programs\Microsoft VS Code\minkernel\crts\ucrt\src\appcrt\startup\assert.cpp:388)
godot.windows.editor.dev.x86_64.exe!VHACD::Volume::Voxelize<float>(const float * const points, const unsigned int stridePoints, const unsigned int nPoints, const int * const triangles, const unsigned int strideTriangles, const unsigned int nTriangles, const unsigned __int64 dim, const VHACD::Vec3<double> & barycenter, const double[3][3] & rot) Line 365 (c:\Projects\godot-engine\master\thirdparty\vhacd\inc\vhacdVolume.h:365)
godot.windows.editor.dev.x86_64.exe!VHACD::VHACD::VoxelizeMesh<float>(const float * const points, const unsigned int stridePoints, const unsigned int nPoints, const int * const triangles, const unsigned int strideTriangles, const unsigned int nTriangles, const VHACD::IVHACD::Parameters & params) Line 281 (c:\Projects\godot-engine\master\thirdparty\vhacd\inc\vhacdVHACD.h:281)
godot.windows.editor.dev.x86_64.exe!VHACD::VHACD::ComputeACD<float>(const float * const points, const unsigned int nPoints, const unsigned int * const triangles, const unsigned int nTriangles, const VHACD::IVHACD::Parameters & params) Line 328 (c:\Projects\godot-engine\master\thirdparty\vhacd\inc\vhacdVHACD.h:328)
godot.windows.editor.dev.x86_64.exe!VHACD::VHACD::Compute(const float * const points, const unsigned int nPoints, const unsigned int * const triangles, const unsigned int nTriangles, const VHACD::IVHACD::Parameters & params) Line 452 (c:\Projects\godot-engine\master\thirdparty\vhacd\src\VHACD.cpp:452)
godot.windows.editor.dev.x86_64.exe!convex_decompose(const float * p_vertices, int p_vertex_count, const unsigned int * p_triangles, int p_triangle_count, const Ref<MeshConvexDecompositionSettings> & p_settings, Vector<Vector<unsigned int>> * r_convex_indices) Line 57 (c:\Projects\godot-engine\master\modules\vhacd\register_types.cpp:57)
godot.windows.editor.dev.x86_64.exe!ImporterMesh::convex_decompose(const Ref<MeshConvexDecompositionSettings> & p_settings) Line 984 (c:\Projects\godot-engine\master\scene\resources\importer_mesh.cpp:984)
godot.windows.editor.dev.x86_64.exe!ResourceImporterScene::get_collision_shapes<Dictionary>(const Ref<ImporterMesh> & p_mesh, const Dictionary & p_options, float p_applied_root_scale) Line 406 (c:\Projects\godot-engine\master\editor\import\resource_importer_scene.h:406)
godot.windows.editor.dev.x86_64.exe!ResourceImporterScene::_post_fix_node(Node * p_node, Node * p_root, HashMap<Ref<ImporterMesh>,Vector<Ref<Shape3D>>,HashMapHasherDefault,HashMapComparatorDefault<Ref<ImporterMesh>>,DefaultTypedAllocator<HashMapElement<Ref<ImporterMesh>,Vector<Ref<Shape3D>>>>> & collision_map, Pair<Vector<Vector3>,Vector<int>> & r_occluder_arrays, HashSet<Ref<ImporterMesh>,HashMapHasherDefault,HashMapComparatorDefault<Ref<ImporterMesh>>> & r_scanned_meshes, const Dictionary & p_node_data, const Dictionary & p_material_data, const Dictionary & p_animation_data, float p_animation_fps, float p_applied_root_scale) Line 1238 (c:\Projects\godot-engine\master\editor\import\resource_importer_scene.cpp:1238)
godot.windows.editor.dev.x86_64.exe!ResourceImporterScene::_post_fix_node(Node * p_node, Node * p_root, HashMap<Ref<ImporterMesh>,Vector<Ref<Shape3D>>,HashMapHasherDefault,HashMapComparatorDefault<Ref<ImporterMesh>>,DefaultTypedAllocator<HashMapElement<Ref<ImporterMesh>,Vector<Ref<Shape3D>>>>> & collision_map, Pair<Vector<Vector3>,Vector<int>> & r_occluder_arrays, HashSet<Ref<ImporterMesh>,HashMapHasherDefault,HashMapComparatorDefault<Ref<ImporterMesh>>> & r_scanned_meshes, const Dictionary & p_node_data, const Dictionary & p_material_data, const Dictionary & p_animation_data, float p_animation_fps, float p_applied_root_scale) Line 1096 (c:\Projects\godot-engine\master\editor\import\resource_importer_scene.cpp:1096)
godot.windows.editor.dev.x86_64.exe!ResourceImporterScene::import(const String & p_source_file, const String & p_save_path, const HashMap<StringName,Variant,HashMapHasherDefault,HashMapComparatorDefault<StringName>,DefaultTypedAllocator<HashMapElement<StringName,Variant>>> & p_options, List<String,DefaultAllocator> * r_platform_variants, List<String,DefaultAllocator> * r_gen_files, Variant * r_metadata) Line 2504 (c:\Projects\godot-engine\master\editor\import\resource_importer_scene.cpp:2504)
godot.windows.editor.dev.x86_64.exe!EditorFileSystem::_reimport_file(const String & p_file, const HashMap<StringName,Variant,HashMapHasherDefault,HashMapComparatorDefault<StringName>,DefaultTypedAllocator<HashMapElement<StringName,Variant>>> & p_custom_options, const String & p_custom_importer, Variant * p_generator_parameters) Line 2048 (c:\Projects\godot-engine\master\editor\editor_file_system.cpp:2048)
godot.windows.editor.dev.x86_64.exe!EditorFileSystem::reimport_files(const Vector<String> & p_files) Line 2315 (c:\Projects\godot-engine\master\editor\editor_file_system.cpp:2315)
godot.windows.editor.dev.x86_64.exe!EditorFileSystem::_update_scan_actions() Line 691 (c:\Projects\godot-engine\master\editor\editor_file_system.cpp:691)
godot.windows.editor.dev.x86_64.exe!EditorFileSystem::_notification(int p_what) Line 1283 (c:\Projects\godot-engine\master\editor\editor_file_system.cpp:1283)
godot.windows.editor.dev.x86_64.exe!EditorFileSystem::_notificationv(int p_notification, bool p_reversed) Line 146 (c:\Projects\godot-engine\master\editor\editor_file_system.h:146)
godot.windows.editor.dev.x86_64.exe!Object::notification(int p_notification, bool p_reversed) Line 840 (c:\Projects\godot-engine\master\core\object\object.cpp:840)
godot.windows.editor.dev.x86_64.exe!SceneTree::_process_group(SceneTree::ProcessGroup * p_group, bool p_physics) Line 954 (c:\Projects\godot-engine\master\scene\main\scene_tree.cpp:954)
godot.windows.editor.dev.x86_64.exe!SceneTree::_process(bool p_physics) Line 1031 (c:\Projects\godot-engine\master\scene\main\scene_tree.cpp:1031)
godot.windows.editor.dev.x86_64.exe!SceneTree::process(double p_time) Line 510 (c:\Projects\godot-engine\master\scene\main\scene_tree.cpp:510)
godot.windows.editor.dev.x86_64.exe!Main::iteration() Line 3636 (c:\Projects\godot-engine\master\main\main.cpp:3636)
godot.windows.editor.dev.x86_64.exe!OS_Windows::run() Line 1474 (c:\Projects\godot-engine\master\platform\windows\os_windows.cpp:1474)
godot.windows.editor.dev.x86_64.exe!widechar_main(int argc, wchar_t * * argv) Line 182 (c:\Projects\godot-engine\master\platform\windows\godot_windows.cpp:182)
godot.windows.editor.dev.x86_64.exe!_main() Line 204 (c:\Projects\godot-engine\master\platform\windows\godot_windows.cpp:204)
godot.windows.editor.dev.x86_64.exe!main(int argc, char * * argv) Line 218 (c:\Projects\godot-engine\master\platform\windows\godot_windows.cpp:218)
godot.windows.editor.dev.x86_64.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 232 (c:\Projects\godot-engine\master\platform\windows\godot_windows.cpp:232)
[Inline Frame] godot.windows.editor.dev.x86_64.exe!invoke_main() Line 102 (d:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:102)
godot.windows.editor.dev.x86_64.exe!__scrt_common_main_seh() Line 288 (d:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
kernel32.dll!00007ff81140257d() (Unknown Source:0)
ntdll.dll!00007ff81206aa58() (Unknown Source:0)
Godot version
7022271291a3d2a9cbd6a223d22a29fd775dfc5d
System information
Windows 11, gl_compatibility, NVidia RTX 3070 TI
Issue description
Crash doing a memcpy to null doing the surface upgrade. The code in question is:
The call stack is:
Steps to reproduce
There's a demo project at https://github.com/Malcolmnixon/TiltFiveMapTest which produces the problem.
The first time its loaded without a .godot folder there are a bunch of assert failures on in vhacdVolume.h line 365.
Minimal reproduction project
The link in the reproduce steps does it. I'm not sure about making anything smaller as it seems to require special circumstances to occur.