当前位置: 首页 > news >正文

如何用云服务器做网站怎么自己做投票网站

如何用云服务器做网站,怎么自己做投票网站,桂林网站制作找志合网络公司,网站建设电话营销培训ppt课件自定义粒子系统示例(二) 目前自定义粒子的方法有很多#xff0c;在OSG 中使用的是 Billboard 技术与色彩融合技术。色彩融合是一种高级的渲染技术#xff0c;如果读者有兴趣#xff0c;可参看 OSG 粒子系统实现的源代码。这里采用简单的布告牌技术(osg::Billboard)与动画来实…自定义粒子系统示例(二) 目前自定义粒子的方法有很多在OSG 中使用的是 Billboard 技术与色彩融合技术。色彩融合是一种高级的渲染技术如果读者有兴趣可参看 OSG 粒子系统实现的源代码。这里采用简单的布告牌技术(osg::Billboard)与动画来实现。这种方法也可以生成比较好的粒子系统的效果。最好使用同名的贴图示例中并没有对这些贴图进行处理它只是向读者展示如何模拟一个自定义的粒子系统读者可仔细体会。 自定义粒子系统示例(二)的代码如程序清单11-6所示。 /* 自定义粒子系统示例2 */ void particleSystem_11_6(const string strDataFolder) {osg::ref_ptrosgViewer::Viewer viewer new osgViewer::Viewer();osg::ref_ptrosg::GraphicsContext::Traits traits new osg::GraphicsContext::Traits;traits-x 40;traits-y 40;traits-width 600;traits-height 480;traits-windowDecoration true;traits-doubleBuffer true;traits-sharedContext 0;osg::ref_ptrosg::GraphicsContext gc osg::GraphicsContext::createGraphicsContext(traits.get());osg::ref_ptrosg::Camera camera viewer-getCamera();camera-setGraphicsContext(gc.get());camera-setViewport(new osg::Viewport(0, 0, traits-width, traits-height));GLenum buffer traits-doubleBuffer ? GL_BACK : GL_FRONT;camera-setDrawBuffer(buffer);camera-setReadBuffer(buffer);osg::ref_ptrosg::Group root new osg::Group();// 向场景中添加帧动画osg::ref_ptrosg::Sequencesq new osg::Sequence();sq createSequence(strDataFolder);root-addChild(sq.get());// 优化场景数据osgUtil::Optimizer optimize;optimize.optimize(root.get());viewer-setSceneData(root.get());viewer-realize();viewer-run(); }osg::ref_ptrosg::Node createBillBoard(osg::ref_ptrosg::Image image) {// 创建四边形osg::ref_ptrosg::Geometry geometry new osg::Geometry();// 设置顶点osg::ref_ptrosg::Vec3Array v new osg::Vec3Array();v-push_back(osg::Vec3(-0.5, 0.0, -0.5));v-push_back(osg::Vec3(0.5, 0.0, -0.5));v-push_back(osg::Vec3(0.5, 0.0, 0.5));v-push_back(osg::Vec3(-0.5, 0.0, 0.5));geometry-setVertexArray(v.get());// 设置法线osg::ref_ptrosg::Vec3Array normal new osg::Vec3Array();normal-push_back(osg::Vec3(1.0, 0.0, 0.0) ^ osg::Vec3(0.0, 0.0, 1.0));geometry-setNormalArray(normal.get());geometry-setNormalBinding(osg::Geometry::BIND_OVERALL);// 设置纹理坐标osg::ref_ptrosg::Vec2Array vt new osg::Vec2Array();vt-push_back(osg::Vec2(0.0, 0.0));vt-push_back(osg::Vec2(1.0, 0.0));vt-push_back(osg::Vec2(1.0, 1.0));vt-push_back(osg::Vec2(0.0, 1.0));geometry-setTexCoordArray(0, vt.get());// 绘制四边形geometry-addPrimitiveSet(new osg::DrawArrays(osg::PrimitiveSet::QUADS, 0, 4));if (image.get()){// 属性对象osg::ref_ptrosg::StateSet stateset new osg::StateSet();// 创建一个Texture2D属性对象osg::ref_ptrosg::Texture2D texture new osg::Texture2D();// 关联imagetexture-setImage(image.get());// 关联Texture2D纹理对象第三个参数默认为ONstateset-setTextureAttributeAndModes(0, texture.get(), osg::StateAttribute::ON);// 启用混合stateset-setMode(GL_BLEND, osg::StateAttribute::ON);// 关闭光照stateset-setMode(GL_LIGHTING, osg::StateAttribute::OFF);geometry-setStateSet(stateset.get());}// 创建BillBoard对象1osg::ref_ptrosg::Billboard billboard1 new osg::Billboard();// 设置旋转模式为绕视点billboard1-setMode(osg::Billboard::POINT_ROT_EYE);// 添加Drawable,并设置其位置默认位置为osg::Vec3(0,0,0)billboard1-addDrawable(geometry.get(), osg::Vec3(5.0, 0.0, 0.0));//osg::ref_ptrosg::Billboard billboard2 new osg::Billboard();osg::ref_ptrosg::Group billboard new osg::Group();billboard-addChild(billboard1.get());return billboard.get(); }// 创建帧动画 osg::ref_ptrosg::Sequence createSequence(const string strDataFolder) {// 创建帧动画对象osg::ref_ptrosg::Sequence seq new osg::Sequence();// 文件名向量对象typedef std::vectorstring Filenames;Filenames filenames;char name_count[256];for (int i 0; i 60; i){sprintf_s(name_count, %sosgVR\\bz%d.jpg, strDataFolder.c_str(),i);filenames.push_back(name_count);}for (Filenames::iterator itr filenames.begin(); itr ! filenames.end(); itr){// 加载模型osg::Image *image osgDB::readImageFile(*itr);if (image){// 添加子节点seq-addChild(createBillBoard(image));// 设定节点的持续时间seq-setTime(seq-getNumChildren() - 1, 0.1);}}// 设置帧动画持续的时间seq-setInterval(osg::Sequence::LOOP, 0, -1);// 设置播放的速度及重复的次数seq-setDuration(1.0, -1);// 开始播放seq-setMode(osg::Sequence::START);return seq.get(); } 运行程序截图如图 11-8 所示 图11-8自定义粒子系统示例(二)截图
http://wiki.neutronadmin.com/news/124467/

相关文章:

  • 无锡网页建站公司广州网站建设海珠新科
  • 怎么修改公司网站内容网站开发对企业的关键
  • 软件网站关键词优化盐城工程造价信息网
  • 网站备案快速备案久久建筑网免费下载怎么没有了
  • 网站建设制作公司哪家义乌网站建设电话
  • 深圳网站设计精选刻邯郸市有搞网站服服务的吗
  • 网站竞价如何做wordpress to joomla
  • 汕头网站排名推广简约大气的ppt模板免费下载
  • 外贸网站开发定制公众号怎么建立
  • 有哪些企业可以做招聘的网站有哪些内容wordpress产品参数
  • 电子商务专业网站wordpress付费阅读文章功能
  • seo整站网站推广优化排名网站视觉元素
  • 电影网站建设规划书移动端使用wordpress富文本编辑器
  • 网站建设在哪个软件下做旅游网站建设费用
  • 专业的网站建设案例开发平台游戏
  • 织梦iis7搭建网站那些行业做网站优化的比较多
  • php网站怎么做自适应江苏建设人才网官网入口
  • 深圳网站建设 工作室南京做网站企业
  • 怎么关键词优化网站制作网页一般多少钱
  • 容桂手机网站建设网站开发需要什么专业知识
  • 优秀国内个人网站网址网站备案多久可以注销
  • 网站怎样做的有吸引力重庆旅游攻略详细安排
  • 国内做视频网站需要啥建e室内设计网官网全景效果图
  • 如何360收录网站中国建设银行个人网站
  • 建设和同城类似的网站wordpress发文器
  • 网站框架结构图wordpress跳转到微信
  • 北京做网站哪家好wordpress模板图片不显示
  • 武功县住房与城乡建设局网站注册安全工程师报考官网
  • 用ps做网站尺寸北京网站设计制作关键词
  • 网站外链如何建设最有用个人网站做交易类的赚钱吗