WorkObject增加GetPrimitiveCreater函数,并连带更新BillboardTest/PlaneGrid3D
This commit is contained in:
parent
6635d33461
commit
73027ffd9a
@ -130,7 +130,7 @@ private:
|
|||||||
using namespace inline_geometry;
|
using namespace inline_geometry;
|
||||||
|
|
||||||
{
|
{
|
||||||
PrimitiveCreater pc(GetDevice(),mi_plane_grid->GetVIL());
|
auto pc=GetPrimitiveCreater(mi_plane_grid);
|
||||||
|
|
||||||
struct PlaneGridCreateInfo pgci;
|
struct PlaneGridCreateInfo pgci;
|
||||||
|
|
||||||
@ -140,18 +140,18 @@ private:
|
|||||||
pgci.lum=128;
|
pgci.lum=128;
|
||||||
pgci.sub_lum=192;
|
pgci.sub_lum=192;
|
||||||
|
|
||||||
prim_plane_grid=CreatePlaneGrid2D(&pc,&pgci);
|
prim_plane_grid=CreatePlaneGrid2D(pc,&pgci);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
PrimitiveCreater pc(GetDevice(),mi_billboard->GetVIL());
|
auto pc=GetPrimitiveCreater(mi_billboard);
|
||||||
|
|
||||||
pc.Init("Billboard",1);
|
pc->Init("Billboard",1);
|
||||||
|
|
||||||
if(!pc.WriteVAB(VAN::Position,VF_V3F,position_data))
|
if(!pc->WriteVAB(VAN::Position,VF_V3F,position_data))
|
||||||
return(false);
|
return(false);
|
||||||
|
|
||||||
ro_billboard=db->CreateMesh(&pc,mi_billboard,pipeline_billboard);
|
ro_billboard=db->CreateMesh(pc,mi_billboard,pipeline_billboard);
|
||||||
|
|
||||||
if(!ro_billboard)
|
if(!ro_billboard)
|
||||||
return(false);
|
return(false);
|
||||||
|
@ -69,9 +69,9 @@ private:
|
|||||||
pgci.lum=180;
|
pgci.lum=180;
|
||||||
pgci.sub_lum=255;
|
pgci.sub_lum=255;
|
||||||
|
|
||||||
PrimitiveCreater pc(GetDevice(),material_instance[0]->GetVIL());
|
auto pc=GetPrimitiveCreater(material_instance[0]);
|
||||||
|
|
||||||
prim_plane_grid=CreatePlaneGrid2D(&pc,&pgci);
|
prim_plane_grid=CreatePlaneGrid2D(pc,&pgci);
|
||||||
|
|
||||||
return prim_plane_grid;
|
return prim_plane_grid;
|
||||||
}
|
}
|
||||||
|
@ -94,6 +94,14 @@ namespace hgl
|
|||||||
return db->CreateMaterialInstance(mtl_name,mci,vil_cfg);
|
return db->CreateMaterialInstance(mtl_name,mci,vil_cfg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AutoDelete<graph::PrimitiveCreater> GetPrimitiveCreater(graph::MaterialInstance *mi)
|
||||||
|
{
|
||||||
|
if(!mi)
|
||||||
|
return(nullptr);
|
||||||
|
|
||||||
|
return(new graph::PrimitiveCreater(GetDevice(),mi->GetVIL()));
|
||||||
|
}
|
||||||
|
|
||||||
graph::Primitive *CreatePrimitive( const AnsiString &name,
|
graph::Primitive *CreatePrimitive( const AnsiString &name,
|
||||||
const uint32_t vertices_count,
|
const uint32_t vertices_count,
|
||||||
const graph::VIL *vil,
|
const graph::VIL *vil,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user