diff --git a/src/vht/App.cppm b/src/vht/App.cppm
index 3fdbcd8..370a993 100644
--- a/src/vht/App.cppm
+++ b/src/vht/App.cppm
@@ -10,7 +10,7 @@ import Window;
 import Device;
 import Swapchain;
 import DepthImage;
-import RenderPass;
+// import RenderPass;
 import GraphicsPipeline;
 import CommandPool;
 import InputAssembly;
@@ -27,7 +27,7 @@ export namespace vht {
         std::shared_ptr<vht::Device> m_device{ nullptr };
         std::shared_ptr<vht::Swapchain> m_swapchain{ nullptr };
         std::shared_ptr<vht::DepthImage> m_depth_image{ nullptr };
-        std::shared_ptr<vht::RenderPass> m_render_pass{ nullptr };
+        // std::shared_ptr<vht::RenderPass> m_render_pass{ nullptr };
         std::shared_ptr<vht::GraphicsPipeline> m_graphics_pipeline{ nullptr };
         std::shared_ptr<vht::CommandPool> m_command_pool{ nullptr };
         std::shared_ptr<vht::InputAssembly> m_input_assembly{ nullptr };
@@ -56,14 +56,14 @@ export namespace vht {
             std::println("device created");
             init_swapchain();
             std::println("swapchain created");
+            init_command_pool(); // 前移命令池的创建
+            std::println("command pool created");
             init_depth_image();
             std::println("depth image created");
-            init_render_pass();
-            std::println("render pass created");
+            // init_render_pass();
+            // std::println("render pass created");
             init_graphics_pipeline();
             std::println("graphics pipeline created");
-            init_command_pool();
-            std::println("command pool created");
             init_uniform_buffer();
             std::println("uniform buffer created");
             init_texture_sampler();
@@ -80,9 +80,9 @@ export namespace vht {
         void init_window() { m_window = std::make_shared<vht::Window>( m_context ); }
         void init_device() { m_device = std::make_shared<vht::Device>( m_context, m_window ); }
         void init_swapchain() { m_swapchain = std::make_shared<vht::Swapchain>( m_window, m_device ); }
-        void init_depth_image() { m_depth_image = std::make_shared<vht::DepthImage>( m_device, m_swapchain ); }
-        void init_render_pass() { m_render_pass = std::make_shared<vht::RenderPass>( m_window, m_device, m_swapchain, m_depth_image ); }
-        void init_graphics_pipeline() { m_graphics_pipeline = std::make_shared<vht::GraphicsPipeline>( m_device, m_render_pass ); }
+        void init_depth_image() { m_depth_image = std::make_shared<vht::DepthImage>( m_device, m_swapchain, m_command_pool ); }
+        // void init_render_pass() { m_render_pass = std::make_shared<vht::RenderPass>( m_window, m_device, m_swapchain, m_depth_image ); }
+        void init_graphics_pipeline() { m_graphics_pipeline = std::make_shared<vht::GraphicsPipeline>( m_device, m_swapchain, m_depth_image ); }
         void init_command_pool() { m_command_pool = std::make_shared<vht::CommandPool>( m_device ); }
         void init_input_assembly() { m_input_assembly = std::make_shared<vht::InputAssembly>( m_data_loader, m_device, m_command_pool ); }
         void init_uniform_buffer() { m_uniform_buffer = std::make_shared<vht::UniformBuffer>( m_window, m_device, m_swapchain ); }
@@ -94,7 +94,7 @@ export namespace vht {
                 m_window,
                 m_device,
                 m_swapchain,
-                m_render_pass,
+                m_depth_image,
                 m_graphics_pipeline,
                 m_command_pool,
                 m_input_assembly,
