// Read FileFIBITMAP * bmp = NULL;
FREE_IMAGE_FORMAT fif = FIF_UNKNOWN;
fif = FreeImage_GetFileType(fileName.c_str(), 0);
if(fif == FIF_UNKNOWN) {
// or guess via filename
fif = FreeImage_GetFIFFromFilename(fileName.c_str());
}
if((fif != FIF_UNKNOWN) && FreeImage_FIFSupportsReading(fif)) {
bmp = FreeImage_Load(fif, fileName.c_str(), 0);
if (bmp != NULL){
bLoaded = true;
}
}// Write{FITAG* tag = FreeImage_CreateTag();string s = "Add Comment To Image";// property settingsFreeImage_SetTagLength(tag, s.size());FreeImage_SetTagCount(tag, s.size());FreeImage_SetTagType(tag, FIDT_ASCII);FreeImage_SetTagValue(tag, s.c_str());// store the tag as a comment// use "Comment" only// if gif use "CommentX" x = 0-NFreeImage_SetTagKey(tag, "Comment");FreeImage_SetMetadata(FIMD_COMMENTS, bmp, FreeImage_GetTagKey(tag), tag);// destroy the tagFreeImage_DeleteTag(tag);// save and update fileFreeImage_Save(fif, bmp, fileName.c_str(), JPEG_QUALITYGOOD);FreeImage_Unload(bmp);}// Read{FITAG *tag = NULL;FIMETADATA *mdhandle = NULL;// get the 'Comments' metadatamdhandle = FreeImage_FindFirstMetadata(FIMD_COMMENTS, bmp, &tag);if(mdhandle) {char* c = (char*)FreeImage_GetTagValue(tag);cout<<c<<endl;FreeImage_FindCloseMetadata(mdhandle);}}
0 Comments
偶然发现一个很有意思的Shader,代码就上面这些,可以看出只有一个fragment shader,没有任何的geometry输入。 其他所有的处理都是在 Fragment Shader 里面完成的,包括: 波浪的生成,折射/反射,Fresnel,泡沫,甚至球的绘制也是(当初看到还是吓了一跳,完完全全的只有一个Fragment)。 By default Visual Assist X stores its symbol database in the following directory tree: C盘空间越来越小了,检查一下发现VSA又囤积好几G的数据库文件。但是记得之前修改过路径了,看来新版VSA无效了,到官方论坛找了一下,找到这个。只要修改原来 REG_SZ 为 REG_EXPAND_SZ 就可以了。 原文链接 左边就是缺失的情况,右边是修复后的。
模型: https://mega.co.nz/#!nAUARKAI!fM4iJWbl01UYGDbP8bEKQz7GyMklF_TWZsHCEvRUELg --文章很长,描述了解决问题的过程,如果只需要解决方案的话,请自行翻页到最后。-- |