SYMBOL INDEX (114 symbols across 9 files) FILE: build.rs function main (line 10) | fn main() { function should_skip_shader_compilation (line 16) | fn should_skip_shader_compilation() -> bool { function compile_shaders (line 22) | fn compile_shaders() { function get_shader_source_dir_path (line 50) | fn get_shader_source_dir_path() -> PathBuf { function get_root_path (line 56) | fn get_root_path() -> &'static Path { function handle_program_result (line 60) | fn handle_program_result(result: Result) { FILE: src/camera.rs type Camera (line 5) | pub struct Camera { method position (line 12) | pub fn position(&self) -> Point3 { method rotate (line 22) | pub fn rotate(&mut self, theta: f32, phi: f32) { method forward (line 28) | pub fn forward(&mut self, r: f32) { method default (line 34) | fn default() -> Self { FILE: src/context.rs type VkContext (line 3) | pub struct VkContext { method instance (line 14) | pub fn instance(&self) -> &Instance { method surface (line 18) | pub fn surface(&self) -> &surface::Instance { method surface_khr (line 22) | pub fn surface_khr(&self) -> vk::SurfaceKHR { method physical_device (line 26) | pub fn physical_device(&self) -> vk::PhysicalDevice { method device (line 30) | pub fn device(&self) -> &Device { method get_mem_properties (line 36) | pub fn get_mem_properties(&self) -> vk::PhysicalDeviceMemoryProperties { method find_supported_format (line 44) | pub fn find_supported_format( method get_max_usable_sample_count (line 62) | pub fn get_max_usable_sample_count(&self) -> vk::SampleCountFlags { method new (line 90) | pub fn new( method drop (line 112) | fn drop(&mut self) { FILE: src/debug.rs constant ENABLE_VALIDATION_LAYERS (line 8) | pub const ENABLE_VALIDATION_LAYERS: bool = true; constant ENABLE_VALIDATION_LAYERS (line 10) | pub const ENABLE_VALIDATION_LAYERS: bool = false; constant REQUIRED_LAYERS (line 12) | const REQUIRED_LAYERS: [&str; 1] = ["VK_LAYER_KHRONOS_validation"]; function vulkan_debug_callback (line 14) | unsafe extern "system" fn vulkan_debug_callback( function get_layer_names_and_pointers (line 36) | pub fn get_layer_names_and_pointers() -> (Vec, Vec<*const c_cha... function check_validation_layer_support (line 54) | pub fn check_validation_layer_support(entry: &Entry) { function setup_debug_messenger (line 70) | pub fn setup_debug_messenger( function create_debug_create_info (line 89) | pub fn create_debug_create_info() -> vk::DebugUtilsMessengerCreateInfoEX... FILE: src/fs.rs function load (line 4) | pub fn load>(path: P) -> Cursor> { FILE: src/main.rs constant WIDTH (line 30) | const WIDTH: u32 = 800; constant HEIGHT (line 31) | const HEIGHT: u32 = 600; constant MAX_FRAMES_IN_FLIGHT (line 32) | const MAX_FRAMES_IN_FLIGHT: u32 = 2; function main (line 34) | fn main() { type App (line 45) | struct App { method resumed (line 51) | fn resumed(&mut self, event_loop: &ActiveEventLoop) { method new_events (line 64) | fn new_events(&mut self, _: &ActiveEventLoop, _: StartCause) { method window_event (line 71) | fn window_event(&mut self, event_loop: &ActiveEventLoop, _: WindowId, ev... method about_to_wait (line 108) | fn about_to_wait(&mut self, _: &ActiveEventLoop) { method exiting (line 124) | fn exiting(&mut self, _: &ActiveEventLoop) { type VulkanApp (line 129) | struct VulkanApp { method new (line 175) | fn new(window: &Window) -> Self { method create_instance (line 357) | fn create_instance(entry: &Entry, window: &Window) -> Instance { method pick_physical_device (line 413) | fn pick_physical_device( method is_device_suitable (line 438) | fn is_device_suitable( method check_device_extension_support (line 458) | fn check_device_extension_support(instance: &Instance, device: vk::Phy... method get_required_device_extensions (line 482) | fn get_required_device_extensions() -> [&'static CStr; 1] { method get_required_device_extensions (line 487) | fn get_required_device_extensions() -> [&'static CStr; 2] { method find_queue_families (line 497) | fn find_queue_families( method create_logical_device_with_graphics_queue (line 537) | fn create_logical_device_with_graphics_queue( method create_swapchain_and_images (line 596) | fn create_swapchain_and_images( method create_swapchain_image_views (line 671) | fn create_swapchain_image_views( method create_image_view (line 690) | fn create_image_view( method create_render_pass (line 712) | fn create_render_pass( method create_descriptor_set_layout (line 789) | fn create_descriptor_set_layout(device: &Device) -> vk::DescriptorSetL... method create_descriptor_pool (line 808) | fn create_descriptor_pool(device: &Device, size: u32) -> vk::Descripto... method create_descriptor_sets (line 828) | fn create_descriptor_sets( method create_pipeline (line 880) | fn create_pipeline( method read_shader_from_file (line 1019) | fn read_shader_from_file>(path: P) -> Vec vk::ShaderMo... method create_framebuffers (line 1030) | fn create_framebuffers( method create_command_pool (line 1053) | fn create_command_pool( method create_color_texture (line 1069) | fn create_color_texture( method create_depth_texture (line 1114) | fn create_depth_texture( method find_depth_format (line 1150) | fn find_depth_format(vk_context: &VkContext) -> vk::Format { method has_stencil_component (line 1165) | fn has_stencil_component(format: vk::Format) -> bool { method create_texture_image (line 1169) | fn create_texture_image( method create_image (line 1280) | fn create_image( method transition_image_layout (line 1328) | fn transition_image_layout( method copy_buffer_to_image (line 1420) | fn copy_buffer_to_image( method generate_mipmaps (line 1458) | fn generate_mipmaps( method load_model (line 1616) | fn load_model() -> (Vec, Vec) { method create_vertex_buffer (line 1654) | fn create_vertex_buffer( method create_index_buffer (line 1669) | fn create_index_buffer( method create_device_local_buffer_with_data (line 1690) | fn create_device_local_buffer_with_data( method create_uniform_buffers (line 1739) | fn create_uniform_buffers( method create_buffer (line 1767) | fn create_buffer( method copy_buffer (line 1806) | fn copy_buffer( method execute_one_time_commands (line 1827) | fn execute_one_time_commands( method find_memory_type (line 1882) | fn find_memory_type( method create_and_register_command_buffers (line 1899) | fn create_and_register_command_buffers( method create_sync_objects (line 2007) | fn create_sync_objects(device: &Device) -> InFlightFrames { method wait_gpu_idle (line 2037) | pub fn wait_gpu_idle(&self) { method draw_frame (line 2041) | pub fn draw_frame(&mut self) -> bool { method recreate_swapchain (line 2130) | pub fn recreate_swapchain(&mut self) { method cleanup_swapchain (line 2212) | fn cleanup_swapchain(&mut self) { method update_uniform_buffers (line 2231) | fn update_uniform_buffers(&mut self, current_image: u32) { method drop (line 2272) | fn drop(&mut self) { type QueueFamiliesIndices (line 2299) | struct QueueFamiliesIndices { type SyncObjects (line 2305) | struct SyncObjects { method destroy (line 2312) | fn destroy(&self, device: &Device) { type InFlightFrames (line 2321) | struct InFlightFrames { method new (line 2327) | fn new(sync_objects: Vec) -> Self { method destroy (line 2334) | fn destroy(&self, device: &Device) { type Item (line 2340) | type Item = SyncObjects; method next (line 2342) | fn next(&mut self) -> Option { type Vertex (line 2354) | struct Vertex { method get_binding_description (line 2361) | fn get_binding_description() -> vk::VertexInputBindingDescription { method get_attribute_descriptions (line 2368) | fn get_attribute_descriptions() -> [vk::VertexInputAttributeDescriptio... type UniformBufferObject (line 2390) | struct UniformBufferObject { method get_descriptor_set_layout_binding (line 2397) | fn get_descriptor_set_layout_binding<'a>() -> vk::DescriptorSetLayoutB... FILE: src/math.rs function perspective (line 8) | pub fn perspective(fovy: F, aspect: S, near: S, far: S) -> Matrix4 function clamp (line 48) | pub fn clamp(value: T, min: T, max: T) -> T { FILE: src/swapchain.rs type SwapchainSupportDetails (line 4) | pub struct SwapchainSupportDetails { method new (line 11) | pub fn new( method get_ideal_swapchain_properties (line 41) | pub fn get_ideal_swapchain_properties( method choose_swapchain_surface_format (line 59) | fn choose_swapchain_surface_format( method choose_swapchain_surface_present_mode (line 82) | fn choose_swapchain_surface_present_mode( method choose_swapchain_extent (line 99) | fn choose_swapchain_extent( type SwapchainProperties (line 116) | pub struct SwapchainProperties { FILE: src/texture.rs type Texture (line 4) | pub struct Texture { method new (line 12) | pub fn new( method destroy (line 26) | pub fn destroy(&mut self, device: &Device) {