vadim.beleaev Posted January 27, 2021 Share Posted January 27, 2021 Добрый день. SDK Version : Unigine2 Engineering 2.13.0.1 Загрузка FBX в рантайме. var nodeName = Import.DoImport(fileName, dataDir); NodeReference noderef = new NodeReference(nodeName); Загрузка NodeReference noderef = new NodeReference(nodeName); вызывает краш на некоторых fbx. При этом создаются файлы ноды, и можно отдельно загрузить меш файл. Пример FBX прилагаю Alu_Chair.zip Link to comment
silent Posted January 28, 2021 Share Posted January 28, 2021 Вадим, а в пустом проекте воспроизводится? Такой код не вызывает никаких крашей с FBX из архива: private void Update() { if(App.GetKeyState(App.KEY_F1) == 1) { App.ClearKeyState(App.KEY_F1); string file_name = "Alu_Chair.FBX"; string data_dir = ""; var node_name = Import.DoImport(file_name, data_dir); Log.MessageLine("nodeName:" + node_name); if(node_name != string.Empty) { try { NodeReference noderef = new NodeReference(node_name); if(noderef != null) { Log.MessageLine(noderef.NodeName); } else { Log.MessageLine("null"); } } catch (System.Exception ex) { Log.MessageLine("ex"); Log.MessageLine(ex.Message); throw; } } } } How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
vadim.beleaev Posted January 28, 2021 Author Share Posted January 28, 2021 Спасибо за помощь. Да код работает, проблема появляется если указать string data_dir = "RuntimеData/"; или что-то подобное, при этом создаётся директория, в неё записываются файлы ноды, но происходит крэш при загрузке ноды. Причём если загрузить rp_sophia_animated_003_idling.fbx, то всё работает и с установленной директорией data_dir = "RuntimеData/"; Sophia.zip Link to comment
silent Posted January 29, 2021 Share Posted January 29, 2021 В слове Runtime у вас e набрана на русском - это так и задумано? :) Попробуйте импротировать так: string abs_data_dir = System.IO.Path.Join(Engine.DataPath, "RuntimеData/"); var node_name = Import.DoImport(file_name, abs_data_dir) Этот способ должен убрать краши. Причину мы нашли, похоже на баг в файловой системе. Попробуем починить в будущих версиях. How to submit a good bug report --- FTP server for test scenes and user uploads: ftp://files.unigine.com user: upload password: 6xYkd6vLYWjpW6SN Link to comment
vadim.beleaev Posted February 2, 2021 Author Share Posted February 2, 2021 On 1/29/2021 at 6:25 AM, silent said: string abs_data_dir = System.IO.Path.Join(Engine.DataPath, "RuntimеData/"); var node_name = Import.DoImport(file_name, abs_data_dir) Этот способ должен убрать краши. Да, спасибо помогло. Link to comment
Recommended Posts