javier.serrano Posted February 19, 2019 Share Posted February 19, 2019 Hi, we have been developing an application in SDK 2.7.1 with Qt integration and recently we needed to change our working directory to *project_folder*/bin/. We assemebled our project by making an .ung file for each data/ subfolder (same as is done with core.ung), but in log file we found that engine detects a GUID collision with all materials and properties (except base ones). The problem is that custom materials/shaders which are overriden from engine .ung files, stop working (we guess override is not working due to GUID collision). We have managed to reproduce the issue in Qml sample (with material_ball and ground_grid materials). We hope you can give us some feedback of how can we solve this problem. Regards, Javier Qml.7z Link to comment
silent Posted February 20, 2019 Share Posted February 20, 2019 Hi Javier, If I understand you correctly you need to move all the contents from <Project>/data to <Project>/bin directory (including built-in core.ung editor2.ung and so on)? Plus additionally you want to pack all the content to ung archives? How the final project structure will look like in this case? Could you please also show us your final launcher script that you are running and how do you use ung tool (where it's located and which command line arguments were passed to it)? Thanks! 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
javier.serrano Posted February 25, 2019 Author Share Posted February 25, 2019 (edited) Hi Silent, sorry for late response. We need to move all dependencies (.dll files mostly) to bin/ folder while application resources (.ung and others) remain at data/ folder. We also need to launch application from bin/ folder, as working directory. In the sample we have attached previously, the Qml sample is started from bin/. That is why some dlls were copied from sdk to bin/ folder (because default launch path was changed and libraries were not found). Thanks, Javier Edited February 25, 2019 by javier.serrano Link to comment
silent Posted February 26, 2019 Share Posted February 26, 2019 Hi Javier, I was unable to find any custom materials in the attached project. I've also created a separate QML application (based on 2.7.1 SDK) and there is no guids collisions. When you moved engine dll and executable you forgot to change the data_path argument in main.qml file (it's relative to the binary location). I've also removed secondary data_path since it's no longer required to load core materials: UnigineItem { args: ["-data_path", "../", "-console_command", "world_load data/qml_world"]; } Just in case I've also added guids.db file that was created by the filesystem_save_guids console command. Please, check the attached archive (there is no dlls and binaries, just copy them from your previous app). qml_2.7.1_moved_folders.zip 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
Recommended Posts