MCPcopy Create free account

hub / github.com/TanTanDev/binary_greedy_mesher_demo / functions

Functions101 in github.com/TanTanDev/binary_greedy_mesher_demo

↓ 27 callersMethodis_solid
(&self)
src/voxel.rs:13
↓ 13 callersMethodget_block
! helper function to get block data that may exceed the bounds of the middle chunk ! input position is local pos to middle chunk
src/chunks_refs.rs:78
↓ 11 callersMethodget_block
(&self, index: usize)
src/chunk.rs:16
↓ 11 callersFunctionmake_vertex_u32
( // position: [i32; 3], /*, normal: i32, color: Color, texture_id: u32*/ pos: IVec3, /*, normal: i32,
src/utils.rs:70
↓ 11 callersMethodworld_to_sample
! offset input position with this face direction
src/face_direction.rs:41
↓ 8 callersMethodjump_index
! how much to multiply to reach next voxel ! lower lod gives higher jump
src/lod.rs:25
↓ 8 callersMethodnormal_index
! normal data is packed in the shader
src/face_direction.rs:17
↓ 7 callersFunctionvec3_to_index
(pos: IVec3, bounds: i32)
src/utils.rs:125
↓ 6 callersFunctiongenerate_indices
(vertex_count: usize)
src/utils.rs:95
↓ 6 callersFunctionpush_face
(mesh: &mut ChunkMesh, dir: Direction, vpos: IVec3, color: Color, block_type: u32)
src/culled_mesher.rs:11
↓ 6 callersFunctionpush_face_ao
( chunks_refs: &ChunksRefs, mesh: &mut ChunkMesh, dir: Direction, vpos: IVec3, color: Colo
src/culled_mesher.rs:227
↓ 6 callersFunctionvertices_from_face_no_ao
( face_dir: FaceDir, chunks_refs: &ChunksRefs, lod: &Lod, )
src/greedy_mesher.rs:123
↓ 5 callersMethodsize
! the amount of voxels per axis
src/lod.rs:13
↓ 4 callersFunctionadd_voxel_to_axis_cols
( b: &crate::voxel::BlockData, x: usize, y: usize, z: usize, axis_cols
src/greedy_mesher_optimized.rs:31
↓ 4 callersMethodget_normal
! normal data is packed in the shader
src/quad.rs:16
↓ 4 callersFunctionindex_to_ivec3
(i: i32)
src/utils.rs:4
↓ 4 callersFunctionindex_to_ivec3_bounds
(i: i32, bounds: i32)
src/utils.rs:12
↓ 3 callersMethodair_sample_dir
! direction to sample face culling
src/face_direction.rs:29
↓ 3 callersFunctionbuild_chunk_mesh
(chunks_refs: ChunksRefs, lod: Lod)
src/greedy_mesher.rs:16
↓ 3 callersFunctiongreedy_mesh_binary_plane
! generate quads of a binary slice ! lod not implemented yet
src/greedy_mesher.rs:251
↓ 3 callersFunctionvertices_from_face
! generate vertices for the facing direction, all planes of a chunk
src/greedy_mesher.rs:57
↓ 2 callersMethodappend_vertices
! compress this quad data into the input vertices vec
src/greedy_mesher.rs:169
↓ 2 callersFunctionbuild_chunk_mesh_ao
(chunks_refs: &ChunksRefs, _lod: Lod)
src/culled_mesher.rs:147
↓ 2 callersMethodget_2
(&self, pos: IVec3, offset: IVec3)
src/chunks_refs.rs:125
↓ 2 callersMethodget_adjacent_blocks
! helper function to sample adjacent(back,left,down) voxels
src/chunks_refs.rs:101
↓ 2 callersMethodget_block_if_filled
(&self)
src/chunk.rs:26
↓ 2 callersMethodis_air
(&self)
src/voxel.rs:20
↓ 2 callersFunctionmake_chunks_refs
helper for incrementing and constructing chunksrefs
benches/meshing.rs:33
↓ 2 callersFunctionmake_offset_vec
! constructs spherical positions with the provided chunk radius
src/scanner.rs:182
↓ 2 callersMethodreverse_order
! returns true if vertices should be reverse. ! (needed because indices are always same)
src/face_direction.rs:54
↓ 1 callersFunctionambient_corner_voxels
! helper for fetching voxels that will contribute to the current voxels ao value
src/culled_mesher.rs:98
↓ 1 callersMethodappend_vertices
! compress this quad data into the input vertices vec
src/greedy_mesher_optimized.rs:223
↓ 1 callersFunctionbench_chunk
(world_pos: IVec3)
benches/chunk.rs:5
↓ 1 callersFunctionbinary_mesh_optimized
(chunks_refs: ChunksRefs)
benches/meshing.rs:24
↓ 1 callersFunctionbuild_chunk_mesh_no_ao
(chunks_refs: ChunksRefs, _lod: Lod)
src/culled_mesher.rs:23
↓ 1 callersFunctionculled_mesh_ao
(chunks_refs: ChunksRefs)
benches/meshing.rs:28
↓ 1 callersMethodget_block_no_neighbour
! helper function to get voxels ! panics if the local pos is outside the middle chunk
src/chunks_refs.rs:94
↓ 1 callersFunctionget_edging_chunk
(pos: IVec3)
src/utils.rs:43
↓ 1 callersMethodget_opposite
(self)
src/quad.rs:27
↓ 1 callersMethodget_von_neumann
! helper function to sample adjacent voxels, von neuman include all facing planes
src/chunks_refs.rs:114
↓ 1 callersFunctiongreedy_mesh_binary_plane
! generate quads of a binary slice ! lod not implemented atm
src/greedy_mesher_optimized.rs:307
↓ 1 callersMethodis_all_voxels_same
returns if all the voxels are the same this is an incredibly fast approximation (1 sample per chunk) all = voxels[0] so may be inacurate, but the odds
src/chunks_refs.rs:42
↓ 1 callersFunctioniter_chunkrefs
(chunks_refs: ChunksRefs)
benches/chunks_refs.rs:21
↓ 1 callersFunctioniter_chunkrefs_padding
(chunks_refs: ChunksRefs)
benches/chunks_refs.rs:10
↓ 1 callersFunctioniter_vec
(data: Vec<BlockData>)
benches/chunks_refs.rs:32
↓ 1 callersMethodnegate_axis
! get delta for traversing the previous axis pos
src/face_direction.rs:66
↓ 1 callersFunctionpush_face
construct vertices for a face in provided direciton
src/culled_mesher_optimized.rs:21
↓ 1 callersMethodunload_all_meshes
(&mut self, scanner: &Scanner, scanner_transform: &GlobalTransform)
src/voxel_engine.rs:171
↓ 1 callersFunctionworld_to_chunk
(pos: Vec3)
src/utils.rs:88
Methodalpha_mode
(&self)
src/rendering.rs:96
Functionambient_corner_voxels_cloned
( chunks_refs: &ChunksRefs, direction: Direction, local_pos: IVec3, )
src/culled_mesher.rs:122
Functionapply_chunk_material
( no_wireframe: Query<Entity, With<Handle<ChunkMaterial>>>, wireframe: Query<Entity, With<Handle<Chunk
src/rendering.rs:30
Functionbench_mesh
(chunks_refs: ChunksRefs)
benches/meshing.rs:16
Functionbench_mesh_no_ao
(chunks_refs: ChunksRefs)
benches/meshing.rs:20
Methodbuild
(&self, app: &mut App)
src/sun.rs:30
Methodbuild
(&self, app: &mut App)
src/scanner.rs:17
Methodbuild
(&self, app: &mut App)
src/rendering.rs:22
Methodbuild
(&self, app: &mut App)
src/voxel_engine.rs:35
Functionbuild_chunk_mesh
(chunks_refs: &ChunksRefs, lod: Lod)
src/greedy_mesher_optimized.rs:17
Functionbuild_chunk_mesh
(chunks_refs: ChunksRefs, lod: Lod)
src/culled_mesher_optimized.rs:54
Functionbuild_chunk_mesh_no_ao
(chunks_refs: ChunksRefs, lod: Lod)
src/greedy_mesher.rs:34
Functioncriterion_benchmark
(c: &mut Criterion)
benches/chunks_refs.rs:44
Functioncriterion_benchmark
(c: &mut Criterion)
benches/chunk.rs:9
Functioncriterion_benchmark
(c: &mut Criterion)
benches/meshing.rs:66
Functiondaylight_cycle
( mut query: Query<(&mut Transform, &mut DirectionalLight), With<Sun>>, mut timer: ResMut<SkyTime>,
src/sun.rs:45
Functiondebug_inputs
( keyboard_input: Res<ButtonInput<KeyCode>>, mut voxel_engine: ResMut<VoxelEngine>, scanners: Quer
src/voxel_engine.rs:60
Methoddefault
()
src/voxel_engine.rs:187
Functiondetect_move
! on scanner chunk change, enqueue chunks to load/unload
src/scanner.rs:83
Functiondiagnostics_count
(mut diagnostics: Diagnostics, voxel_engine: Res<VoxelEngine>)
src/voxel_engine.rs:146
Methodfragment_shader
()
src/rendering.rs:92
Methodfrom_direction
(direction: Direction, pos: IVec3, color: Color)
src/quad.rs:50
Methodgenerate
! shape our voxel data based on the chunk_pos
src/chunk.rs:35
Functionindex_functions
()
src/utils.rs:111
Functionindex_to_ivec3_bounds_reverse
(i: i32, bounds: i32)
src/utils.rs:20
Functionis_on_edge
(pos: IVec3)
src/utils.rs:28
Functionjoin_data
! join the chunkdata threads
src/voxel_engine.rs:359
Functionjoin_mesh
! join the multithreaded chunk mesh tasks, and construct a finalized chunk entity
src/voxel_engine.rs:411
Functionmain
()
src/main.rs:34
Methodmake_dummy_chunk_refs
! only use for testing purposes
src/chunks_refs.rs:61
Functionmake_empty
()
benches/meshing.rs:38
Functionmake_filled
()
benches/meshing.rs:50
Functionmodify_current_terrain
( query: Query<&Transform, With<Camera>>, key: Res<ButtonInput<KeyCode>>, mut voxel_engine: ResMut
src/main.rs:78
Methodnew
! construct scanner, chunk offsets are based on distance ! warning: slow execution time on distances above 15-20,
src/scanner.rs:62
Methodprepass_fragment_shader
()
src/rendering.rs:115
Methodprepass_vertex_shader
()
src/rendering.rs:111
Functionpromote_dirty_meshes
( mut commands: Commands, children: Query<(Entity, &Handle<Mesh>, &Parent), With<WaitingToLoadMeshTag>
src/voxel_engine.rs:384
Functionscan_data
( mut scanners: Query<(&mut Scanner, &GlobalTransform)>, mut voxel_engine: ResMut<VoxelEngine>, )
src/scanner.rs:198
Functionscan_data_unload
( mut scanners: Query<(&mut Scanner, &GlobalTransform)>, mut voxel_engine: ResMut<VoxelEngine>, )
src/scanner.rs:231
Functionscan_mesh
(mut scanners: Query<&mut Scanner>, mut voxel_engine: ResMut<VoxelEngine>)
src/scanner.rs:256
Functionscan_mesh_unload
(mut scanners: Query<&mut Scanner>, mut voxel_engine: ResMut<VoxelEngine>)
src/scanner.rs:247
Functionsetup
( mut commands: Commands, mut chunk_materials: ResMut<Assets<ChunkMaterial>>, mut chunk_materials_
src/main.rs:102
Functionsetup_diagnostics
(mut onscreen: ResMut<ScreenDiagnostics>)
src/voxel_engine.rs:115
Functionslicer
(data: [u32; 32])
benches/meshing.rs:62
Methodspecialize
( _pipeline: &MaterialPipeline<Self>, descriptor: &mut RenderPipelineDescriptor, layou
src/rendering.rs:100
Functionstart_data_tasks
! begin data building tasks for chunks in range
src/voxel_engine.rs:208
Functionstart_mesh_tasks
! begin mesh building tasks for chunks in range
src/voxel_engine.rs:277
Functionstart_modifications
start
src/voxel_engine.rs:321
Methodtry_new
! construct a ChunkRefs at middle_chunk position ! safety: panics if ChunkData doesn't exist in input world_data
src/chunks_refs.rs:26
Functionunload_data
! destroy enqueued, chunk data
src/voxel_engine.rs:243
Functionunload_mesh
! destroy enqueued, chunk mesh entities
src/voxel_engine.rs:255
next →1–100 of 101, ranked by callers