改进SceneNode/RenderList的Camera相关处理
This commit is contained in:
parent
6f6d2f9524
commit
8ce7bceee0
@ -78,7 +78,6 @@ namespace hgl
|
||||
bool ExpendToList(RenderList *rl,Frustum *f) ///<展开到渲染列表(使用平截头裁剪)
|
||||
{return ExpendToList(rl,FrustumClipFilter,f);}
|
||||
|
||||
// bool ExpendToList(RenderList *,const Matrix4f &,const Matrix4f &,RenderListCompFunc=nullptr); ///<展开到渲染列表(使用平截头裁剪并排序)
|
||||
bool ExpendToList(RenderList *,Camera *,RenderListCompFunc=nullptr); ///<展开到渲染列表(使用摄像机平截头裁剪并排序)
|
||||
};//class SceneNode
|
||||
}//namespace graph
|
||||
|
@ -30,15 +30,12 @@ namespace hgl
|
||||
{
|
||||
camera=cam;
|
||||
|
||||
MakeCameraMatrix( &ubo_matrix.projection,
|
||||
&ubo_matrix.modelview,
|
||||
&camera);
|
||||
|
||||
ubo_matrix.projection=camera.projection;
|
||||
ubo_matrix.modelview=camera.modelview;
|
||||
ubo_matrix.mvp =ubo_matrix.projection*ubo_matrix.modelview;
|
||||
ubo_matrix.normal =ubo_matrix.modelview.Float3x3Part(); //法线矩阵为3x3
|
||||
|
||||
CameraToFrustum(&frustum,
|
||||
&camera);
|
||||
frustum=camera.frustum;
|
||||
}
|
||||
|
||||
void RenderList::SetMVP(const Matrix4f &proj,const Matrix4f &mv)
|
||||
|
@ -1,6 +1,5 @@
|
||||
#include<hgl/graph/SceneNode.h>
|
||||
#include<hgl/graph/RenderList.h>
|
||||
//#include<hgl/graph/Frustum.h>
|
||||
namespace hgl
|
||||
{
|
||||
namespace graph
|
||||
@ -92,13 +91,6 @@ namespace hgl
|
||||
return(true);
|
||||
}
|
||||
|
||||
//bool SceneNode::ExpendToList(RenderList *rl,const Matrix4f &proj,const Matrix4f &mv,RenderListCompFunc comp_func)const
|
||||
//{
|
||||
// if(!rl)return(false);
|
||||
|
||||
|
||||
//}
|
||||
|
||||
/**
|
||||
* 从当前节点展开输出到一个渲染列表
|
||||
* @param rl 渲染列表
|
||||
@ -109,11 +101,6 @@ namespace hgl
|
||||
{
|
||||
if(!rl||!cam)return(false);
|
||||
|
||||
// Frustum f;
|
||||
|
||||
// MakeCameraFrustum(&f,cam);
|
||||
|
||||
// if(!ExpendToList(rl,&f))
|
||||
if(!ExpendToList(rl))
|
||||
return(false);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user