使用Ogre::ManualObject 绘制自定义图形

在ogre中如果需要进行自定义图形绘制可以使用ManualObject。例如绘制一个三角形的用法如下:

SceneNode* pGridNode = m_pBaseNode->createChildSceneNode("gridNode");
        //创建ManualObject
        Ogre::ManualObject* grid = m_pSceneMgr->createManualObject("gird");
        //创建材质

        //使用ogre的自带材质
        grid->begin("BaseWhite",RenderOperation::OT_TRIANGLE_LIST);

        //顶点顺序默认为逆时针可见

        grid->position(100.0f,0,0);                //vertex1
        grid->colour(ColourValue(1,1,1,1));

        grid->position(0,173,0);
        grid->colour(ColourValue(1,1,1,1));        //vertex2

        grid->position(-100.0f,0,0);
        grid->colour(ColourValue(1,1,1,1));        //vertex3

        grid->end();

        pGridNode->attachObject(grid);

其中Ogre自带三种内置材质:

DefaultSettings :默认材质
BaseWhite :基于光照的白色材质,事实上DefaultSettings的材质就是它
BaseWhiteNoLighting :基于无光照的白色材质

时间: 2024-10-23 02:20:00

使用Ogre::ManualObject 绘制自定义图形的相关文章

在Unity中使用uGUI绘制自定义图形(饼状图 雷达图)

饼状图或者是雷达图是根据属性自动生成的自定义图形.这里展示了如何使用uGUI完成这一功能. 先附上我制作雷达图的控件的代码  UIPropWidget.cs using UnityEngine; using System.Collections.Generic; using UnityEngine.UI; /* * * 2 6 * * 3 7 * * 0 1 5 4 * * * 2 6位为属性0 3为属性1 0为属性2 4为属性3 7为属性4 */ public class UIPropWidg

UIBezierPath+CAShapeLayer 绘制自定义图形

转载注明出处,谢谢. 使用CAShapeLayer与UIBezierPath可以实现不在view的drawRect方法中就画出一些想要的图形. 1.背景知识: UIBezierPath:UIBezierPath是在UIKit中的一个类,继承于NSObject,可以创建基于矢量的路径.此类是Core Graphics框架关于path的一个OC封装.使用此类可以定义常见的圆形.多边形等形状.我们使用直线.弧(arc)来创建复杂的曲线形状.每一个直线段或者曲线段的结束的地方是下一个的开始的地方.每一个

C# 绘制PDF图形——基本图形、自定义图形、色彩透明度

引言 在PDF中我们可以通过C#程序代码来添加非常丰富的元素来呈现我们想要表达的内容,如绘制表格.文字,添加图形.图像等等.在本篇文章中,我将介绍如何在PDF中绘制图形,并设置图形属性的操作. 文章中将分以下要点进行介绍: 1. 绘制基本图形(线条.椭圆.圆形.矩形.三角形) 2. 绘制自定义图形 3. 绘制图形并设置图形透明度 所需工具:Spire.PDF for .NET 4.0 提示:安装后,直接引用安装路径下Bin文件夹中的dll文件到项目程序中即可. [示例1]绘制基本图形 C# 步骤

iOS--Quartz2D使用(自定义UIImageView控件、绘制基本图形)

自定义UIImageView控件 一.实现思路 Quartz2D最大的用途在于自定义View(自定义UI控件),当系统的View不能满足我们使用需求的时候,自定义View. 使用Quartz2D自定义View,可以从模仿系统的ImageView的使用开始. 需求驱动开发:模仿系统的imageview的使用过程 1.创建 2.设置图片 3.设置frame 4.把创建的自定义的view添加到界面上(在自定义的View中,需要一个image属性接收image图片参数->5). 5.添加一个image属

openlayers之绘制矩形星星拉框放大自定义图形

简介:openlayers绘制矩形.星星.拉框绘制,以及自定义图形. 实际是对ol.interaction.Draw的扩展,geometryFunction属性. 查看详细教程 原文地址:https://www.cnblogs.com/dqygiser/p/9782169.html

C# 绘制Word图形、组合图形

一.序言 在Office Word中,支持在Word文档中插入类型非常丰富的形状,包括线条.矩形.基本形状(诸如圆形.多边形.星形.括号.笑脸等等图形).箭头形状.公式形状.流程图.旗帜图形.标注图形等等,我们在编程过程中,想要在Word中绘制不同类型的图形,可以通过类库来操作.控件Spire.Doc for .NET 6.0及以上版本开始支持Office Word中的所有图形,可以通过代码操作某个单一的形状,也可以通过将单一形状进行组合来获得想要的图形或形状效果,当然,也支持自己自定义图形,通

鼠标绘制简单图形

功能: 1.绘制的图形包括直线.椭圆和矩形,通过菜单对绘制的图形切换 2.在视图中使用鼠标动态的绘制图形 分析: 当窗口尺寸发生变化时,引起窗口重绘,会发送WM_PAINT消息,这时首先会擦除窗口的背景,然后再进行重绘操作,这样就把窗口中先前绘制的图形擦除掉了:可以将绘制图形的三要素(起点.终点.绘制类型)保存下来,在窗口重绘调用程序视图类窗口的OnDraw函数中再将图形根据保存的三要素重新输出: 1.数据 在视图中添加两个点坐标 CPoint m_ptOrigin;  //起点坐标 CPoin

[Tool] 使用Astah绘制UML图形

[Tool] 使用Astah绘制UML图形 前言 在软件开发的过程中,开发人员可以绘制UML图形来将分析设计内容转化为图形化文件,方便在团队之间传递分析设计结果.但在团队经费有限的情景中,可能没办法为每个项目成员都配置专业的UML绘制工具,例如Visual Studio Ultimate,来绘制UML图形,这时可以选择一些免费版本的绘制工具,做为团队间绘制UML图形的工具. 本篇文章介绍Astah这个提供免费版本的UML绘制工具,用来在团队经费有限的状况下,为每个成员配置UML绘制工具,避免软件

Android中使用ListView绘制自定义表格(2)

上回再写了<Android中使用ListView绘制自定义表格>后,很多人留言代码不全和没有数据样例.但因为项目原因,没法把源码全部贴上来.近两天,抽空简化了一下,做了一个例子. 效果图如 一.功能: 1.支持列合并 2.考虑了界面刷新优化 3.预留部分接口 4.支持左右滚动 1.枚举类:CellTypeEnum package csdn.danielinbiti.custometableview.item; public enum CellTypeEnum { STRING //字符 ,DI