今天北京有沙尘。我感觉疫情下的天空,格外的苍凉。
不过,还是不能中断我更新博客。今天简简单单写个
osg渲染中常用到的图片优化手段。
当然,这样得记录一些知识:
- 模型贴图使用dds+mipmap的方式加载时间和显存占用时间明显降低。
- dds格式:DDS是一种图片格式。DirectDraw Surface的缩写,它是DirectX纹理压缩(DirectX Texture Compression,简称DXTC)的产物。【来自百度百科】
- Mipmap:Mipmap(有时候拼写成mipmap)是一种电脑图形图像技术,用于在三维图像的二维代替物中达到立体感效应。【来自百度百科】
注:以下代码没执行过,不过确实是我开发中运用到的大概思路,这里做以简单的记录,供以后参考
#include<iostream>
#include<boost/filesystem.hpp>
#include<osgDB/ReadFile>
#include<osgDB/WriteFile>
#include<osg/Image>
#include<osg/ImageProcessor>
//写一个放缩图片的函数
void scaleImage(osg::ref_ptr<osg::Image> image, const float scale)
{
//当然,知道图片的放缩比例之后,仍然是对图片的宽和高进行放缩。
const int width