2.建立场景图形--4 渲染状态 -渲染示例

在这里插入图片描述

创建root顶节点, 设置:关闭光照

osg::ref_ptr<osg::Node> createSceneGraph()
{
	//创建Group根节点,指定了一个光照模式
	osg::ref_ptr<osg::Group> root = new osg::Group;
	{
		osg::StateSet *state = root->getOrCreateStateSet();
		state->setMode(GL_LIGHTING,
						osg::StateAttribute::OFF|
						osg::StateAttribute::PROTECTED);
	}
	
	osg::ref_ptr<osg::Geode> geode = new osg::Geode;
	geode->addDrawable(createDrawable().get() or createGeometry().get());
	
	//左上
	 ...
	//右上
     ...
	//左下
	...
	//右下
	..
}

左上

osg::Matrix m;
{
	m.makeTranslate(-2.f,0.f,2.f);

	osg::ref_ptr<osg::MatrixTransform> mt = new osg::MatrixTransform;
	mt->setMatrix(m);

	root->addChild(mt.get());
	mt->addchild(geode.get());
}
Geode
Matrix
Attribute
Node
addChild
addChild
setMode
setMatrix
setVertex
setColor
setPrimitveSet
vertext
子叶节点 geode = new Geode
color
DrawArrays
PrimiteSet
DrawElement
Matrix m
trans节点 mt = new MatrixTransform
GL_LIGHTING
group节点 root=new Group
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值