|
osg::Image* DefaultImage = osgDB::readImageFile("http://www.duote.com/img/zt1.jpg.net");
osg::Node* node = osgDB::readNodeFile("http://121.14.136.116/models/F_001.ive.net");
上面的DefaultImage和node通过.net来readFile,那他们就自动被转化为ProxyNode了吗?如果不用多线程的话,上面的DefaultImage 和node 都会要等到该文件下载完的时候才继续执行,但进入程序时已经可以看见该节点.
我想一遇到文件名有.net的字样的就开个线程来下载,但是_beginthread后,
线程函数只执行到BB->mDefaultImage = osgDB::readImageFile(ImageName);
//参数ImageName就是http://121.14.136.116/models/F_001.ive.net此类字样
//BB是经过强制转换后的当前类的This
这一句就跳回上一句了,并且会跳到其他地方去,也不知道怎么调试了.这样倒是不用等文件全部下载完才能进入程序,进入的很快,但是下载来的文件有问题,显示不正常,很多重复的文件.而且一旦此类需.net的文件多了,就会报错了,断点哪里都停不住,真迷茫.
再请高人给讲一下,这种远程拉来的数据,在本机上要怎样处理才最好呢,想要在下载完成时才显示该节点. |
|