1# Taken from godot-demo-projects/3d/voxel/world/chunk.gd 2func _create_block_collider(block_sub_position): 3 var collider = CollisionShape.new() 4 collider.shape = BoxShape.new() 5 collider.shape.extents = Vector3.ONE / 2 6 collider.transform.origin = block_sub_position + Vector3.ONE / 2 7 add_child(collider) 8 9static func calculate_block_uvs(block_id): 10 # This method only supports square texture sheets. 11 var row = block_id / TEXTURE_SHEET_WIDTH 12 var col = block_id % TEXTURE_SHEET_WIDTH 13 14 return [ 15 TEXTURE_TILE_SIZE * Vector2(col, row), 16 TEXTURE_TILE_SIZE * Vector2(col, row + 1), 17 TEXTURE_TILE_SIZE * Vector2(col + 1, row), 18 TEXTURE_TILE_SIZE * Vector2(col + 1, row + 1), 19 ] 20 21func id(a): 22 return a 23 24remote func r(b): 25 return b 26 27remote static func x(c): 28 return c 29