renamed the name from "WorldMatrix" to "CameraMatrix"
This commit is contained in:
Submodule 3rdpty/MathGeoLib updated: 47599c77c4...2940b99b99
Submodule CMCMakeModule updated: e15c5ce039...4b71f19e46
2
CMCore
2
CMCore
Submodule CMCore updated: 162a6ce2f2...d065f24770
Submodule CMPlatform updated: 72b54414ac...ea2aaf3126
Submodule CMSceneGraph updated: aaf998351f...275dce7c49
@@ -37,7 +37,7 @@ private:
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
GPUBuffer * ubo_color_material =nullptr;
|
||||
GPUBuffer * ubo_line_config =nullptr;
|
||||
|
||||
@@ -88,7 +88,7 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix =CreateUBO("world", sizeof(WorldMatrix), &cam.matrix);
|
||||
ubo_camera_matrix =CreateUBO("camera", sizeof(CameraMatrix), &cam.matrix);
|
||||
ubo_color_material =CreateUBO("color_material",sizeof(Vector4f), &color);
|
||||
ubo_line_config =CreateUBO("line2d_config", sizeof(Line2DConfig), &line_2d_config);
|
||||
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(render_instance);
|
||||
}
|
||||
|
@@ -61,7 +61,7 @@ private:
|
||||
|
||||
bool InitUBO()
|
||||
{
|
||||
if(!material_instance->BindUBO("world",GetCameraMatrixBuffer()))
|
||||
if(!material_instance->BindUBO("camera",GetCameraMatrixBuffer()))
|
||||
return(false);
|
||||
|
||||
ubo_atomsphere=db->CreateUBO(sizeof(AtmosphereData),&atomsphere_data);
|
||||
|
@@ -193,12 +193,12 @@ private:
|
||||
|
||||
sampler=db->CreateSampler(&sampler_create_info);
|
||||
|
||||
sp_gbuffer.material_instance->BindUBO("world",GetCameraMatrixBuffer());
|
||||
sp_gbuffer.material_instance->BindUBO("camera",GetCameraMatrixBuffer());
|
||||
sp_gbuffer.material_instance->BindSampler("TexColor" ,texture.color, sampler);
|
||||
sp_gbuffer.material_instance->BindSampler("TexNormal" ,texture.normal, sampler);
|
||||
sp_gbuffer.material_instance->Update();
|
||||
|
||||
sp_composition.material_instance->BindUBO("world",GetCameraMatrixBuffer());
|
||||
sp_composition.material_instance->BindUBO("camera",GetCameraMatrixBuffer());
|
||||
sp_composition.material_instance->BindUBO("lights",ubo_lights);
|
||||
sp_composition.material_instance->BindSampler("GB_Color" ,gbuffer.rt->GetColorTexture((uint)GBufferAttachment::Color),sampler);
|
||||
sp_composition.material_instance->BindSampler("GB_Normal" ,gbuffer.rt->GetColorTexture((uint)GBufferAttachment::Normal),sampler);
|
||||
|
@@ -28,7 +28,7 @@ private:
|
||||
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
GPUBuffer * ubo_color =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
@@ -65,7 +65,7 @@ private:
|
||||
sampler=db->CreateSampler();
|
||||
|
||||
material_instance->BindSampler("lum_texture",tile_font->GetTexture(),sampler);
|
||||
material_instance->BindUBO("world",ubo_world_matrix);
|
||||
material_instance->BindUBO("camera",ubo_camera_matrix);
|
||||
material_instance->BindUBO("color_material",ubo_color);
|
||||
material_instance->Update();
|
||||
|
||||
@@ -81,9 +81,9 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
color.One();
|
||||
@@ -181,7 +181,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(render_instance);
|
||||
}
|
||||
|
@@ -42,7 +42,7 @@ private:
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Renderable * render_obj =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -155,7 +155,7 @@ private:
|
||||
sampler=db->CreateSampler();
|
||||
|
||||
material_instance->BindSampler("tex",tile_data->GetTexture(),sampler);
|
||||
material_instance->BindUBO("world",ubo_world_matrix);
|
||||
material_instance->BindUBO("camera",ubo_camera_matrix);
|
||||
material_instance->Update();
|
||||
|
||||
return(true);
|
||||
@@ -170,9 +170,9 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
return(true);
|
||||
@@ -227,7 +227,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(render_instance);
|
||||
}
|
||||
|
@@ -28,7 +28,7 @@ private:
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -58,13 +58,13 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
if(!material_instance->BindUBO("world",ubo_world_matrix))return(false);
|
||||
if(!material_instance->BindUBO("frag_world",ubo_world_matrix))return(false);
|
||||
if(!material_instance->BindUBO("camera",ubo_camera_matrix))return(false);
|
||||
if(!material_instance->BindUBO("frag_world",ubo_camera_matrix))return(false);
|
||||
|
||||
material_instance->Update();
|
||||
return(true);
|
||||
@@ -109,7 +109,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(renderable_instance);
|
||||
}
|
||||
|
@@ -35,7 +35,7 @@ private:
|
||||
Renderable * ro_circle =nullptr;
|
||||
Renderable * ro_round_rectangle =nullptr;
|
||||
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
GPUBuffer * ubo_color_material =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
@@ -118,7 +118,7 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix =CreateUBO("world", sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix =CreateUBO("camera", sizeof(CameraMatrix),&cam.matrix);
|
||||
ubo_color_material =CreateUBO("color_material",sizeof(Vector4f),&color);
|
||||
|
||||
material_instance->Update();
|
||||
@@ -164,7 +164,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(&render_list);
|
||||
}
|
||||
|
@@ -46,7 +46,7 @@ private:
|
||||
|
||||
mdp->pipeline=CreatePipeline(mdp->material_instance,InlinePipeline::Solid3D,primitive);
|
||||
|
||||
if(!mdp->material_instance->BindUBO("world",GetCameraMatrixBuffer()))
|
||||
if(!mdp->material_instance->BindUBO("camera",GetCameraMatrixBuffer()))
|
||||
return(false);
|
||||
|
||||
mdp->material_instance->Update();
|
||||
|
@@ -204,14 +204,14 @@ private:
|
||||
material_instance->BindUBO("light",ubo_light);
|
||||
material_instance->BindUBO("phong",ubo_phong);
|
||||
|
||||
if(!material_instance->BindUBO("world",GetCameraMatrixBuffer()))
|
||||
if(!material_instance->BindUBO("camera",GetCameraMatrixBuffer()))
|
||||
return(false);
|
||||
|
||||
material_instance->BindUBO("fs_light",ubo_light);
|
||||
|
||||
material_instance->Update();
|
||||
|
||||
if(!axis_mi->BindUBO("world",GetCameraMatrixBuffer()))
|
||||
if(!axis_mi->BindUBO("camera",GetCameraMatrixBuffer()))
|
||||
return(false);
|
||||
|
||||
axis_mi->Update();
|
||||
|
@@ -16,7 +16,7 @@ class TestApp:public CameraAppFramework
|
||||
Camera cam;
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
};
|
||||
|
||||
struct:public RenderObject
|
||||
@@ -65,12 +65,12 @@ public:
|
||||
|
||||
ro->cam.Refresh();
|
||||
|
||||
ro->ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&ro->cam.matrix);
|
||||
ro->ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&ro->cam.matrix);
|
||||
|
||||
if(!ro->ubo_world_matrix)
|
||||
if(!ro->ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
ro->material_instance->BindUBO("world",ro->ubo_world_matrix);
|
||||
ro->material_instance->BindUBO("camera",ro->ubo_camera_matrix);
|
||||
ro->material_instance->Update();
|
||||
return(true);
|
||||
}
|
||||
@@ -131,7 +131,7 @@ public:
|
||||
if(!cube.sampler)return(false);
|
||||
|
||||
cube.material_instance->BindSampler("tex",os.render_taget->GetColorTexture(),cube.sampler);
|
||||
cube.material_instance->BindUBO("world",GetCameraMatrixBuffer());
|
||||
cube.material_instance->BindUBO("camera",GetCameraMatrixBuffer());
|
||||
cube.material_instance->Update();
|
||||
|
||||
{
|
||||
@@ -148,7 +148,7 @@ public:
|
||||
cube.scene_root.RefreshMatrix();
|
||||
cube.scene_root.ExpendToList(&cube.render_list);
|
||||
|
||||
camera.eye.Set(5,5,5,1.0);
|
||||
camera->pos.Set(5,5,5,1.0);
|
||||
|
||||
return(true);
|
||||
}
|
||||
|
@@ -41,7 +41,7 @@ private:
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
Renderable * render_obj =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -61,7 +61,7 @@ private:
|
||||
sampler=db->CreateSampler();
|
||||
|
||||
material_instance->BindSampler("tex",texture,sampler);
|
||||
material_instance->BindUBO("world",ubo_world_matrix);
|
||||
material_instance->BindUBO("camera",ubo_camera_matrix);
|
||||
material_instance->Update();
|
||||
|
||||
db->Add(texture);
|
||||
@@ -77,9 +77,9 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
return(true);
|
||||
@@ -127,7 +127,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(render_instance);
|
||||
}
|
||||
|
@@ -34,7 +34,7 @@ private:
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -62,12 +62,12 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
material_instance->BindUBO("world",ubo_world_matrix);
|
||||
material_instance->BindUBO("camera",ubo_camera_matrix);
|
||||
material_instance->Update();
|
||||
return(true);
|
||||
}
|
||||
@@ -113,7 +113,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(render_instance);
|
||||
}
|
||||
|
@@ -38,7 +38,7 @@ private:
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -62,13 +62,13 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
if(!material_instance->BindUBO("world",ubo_world_matrix))return(false);
|
||||
if(!material_instance->BindUBO("frag_world",ubo_world_matrix))return(false);
|
||||
if(!material_instance->BindUBO("camera",ubo_camera_matrix))return(false);
|
||||
if(!material_instance->BindUBO("frag_world",ubo_camera_matrix))return(false);
|
||||
|
||||
material_instance->Update();
|
||||
return(true);
|
||||
@@ -115,7 +115,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(renderable_instance);
|
||||
}
|
||||
|
@@ -53,7 +53,7 @@ private:
|
||||
Sampler * sampler =nullptr;
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *renderable_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
private:
|
||||
@@ -85,12 +85,12 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
if(!material_instance->BindUBO("world",ubo_world_matrix))return(false);
|
||||
if(!material_instance->BindUBO("camera",ubo_camera_matrix))return(false);
|
||||
material_instance->Update();
|
||||
return(true);
|
||||
}
|
||||
@@ -137,7 +137,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(renderable_instance);
|
||||
}
|
||||
|
@@ -37,7 +37,7 @@ private:
|
||||
|
||||
MaterialInstance * material_instance =nullptr;
|
||||
RenderableInstance *render_instance =nullptr;
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
Pipeline * pipeline =nullptr;
|
||||
|
||||
@@ -65,12 +65,12 @@ private:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&cam.matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&cam.matrix);
|
||||
|
||||
if(!ubo_world_matrix)
|
||||
if(!ubo_camera_matrix)
|
||||
return(false);
|
||||
|
||||
material_instance->BindUBO("world",ubo_world_matrix);
|
||||
material_instance->BindUBO("camera",ubo_camera_matrix);
|
||||
material_instance->Update();
|
||||
return(true);
|
||||
}
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
|
||||
cam.Refresh();
|
||||
|
||||
ubo_world_matrix->Write(&cam.matrix);
|
||||
ubo_camera_matrix->Write(&cam.matrix);
|
||||
|
||||
BuildCommandBuffer(&render_list);
|
||||
}
|
||||
|
@@ -300,7 +300,7 @@ class CameraAppFramework:public VulkanApplicationFramework
|
||||
{
|
||||
private:
|
||||
|
||||
GPUBuffer * ubo_world_matrix =nullptr;
|
||||
GPUBuffer * ubo_camera_matrix =nullptr;
|
||||
|
||||
protected:
|
||||
|
||||
@@ -340,7 +340,7 @@ public:
|
||||
|
||||
camera->Refresh(); //更新矩阵计算
|
||||
|
||||
ubo_world_matrix=db->CreateUBO(sizeof(WorldMatrix),&camera->matrix);
|
||||
ubo_camera_matrix=db->CreateUBO(sizeof(CameraMatrix),&camera->matrix);
|
||||
}
|
||||
|
||||
void Resize(int w,int h)override
|
||||
@@ -351,7 +351,7 @@ public:
|
||||
|
||||
GPUBuffer *GetCameraMatrixBuffer()
|
||||
{
|
||||
return ubo_world_matrix;
|
||||
return ubo_camera_matrix;
|
||||
}
|
||||
|
||||
virtual void BuildCommandBuffer(uint32_t index)=0;
|
||||
@@ -359,7 +359,7 @@ public:
|
||||
virtual void Draw()override
|
||||
{
|
||||
camera->Refresh(); //更新相机矩阵
|
||||
ubo_world_matrix->Write(&camera->matrix); //写入缓冲区
|
||||
ubo_camera_matrix->Write(&camera->matrix); //写入缓冲区
|
||||
|
||||
const uint32_t index=AcquireNextImage();
|
||||
|
||||
|
@@ -12,7 +12,7 @@ VK_NAMESPACE_BEGIN
|
||||
*/
|
||||
enum class ShaderDataSource
|
||||
{
|
||||
Global=0, ///<由全局系统提供的数据(如WorldMatrix)
|
||||
Global=0, ///<由全局系统提供的数据(如CameraMatrix)
|
||||
Private=1, ///<每种材质的私有数据
|
||||
};//
|
||||
|
||||
|
Reference in New Issue
Block a user