luvcraft/world-package.lisp
defpackage#:luvcraft.world
:use#:cl
:local-nicknames
#:domains#:luv.domains
#:fields#:luvcraft.world.fields
#:math#:luv.arithmetic
:import-from#:luv.arithmetic.lisp.vec3#:make-vec3#:vec3#:vec3-component#:vec3-cross#:vec3-dot#:vec3-list#:vec3-x#:vec3-y#:vec3-z
:documentation
Renderer-independent coordinates, chunk domains, and resident voxel data.
:export#:*voxel-face-directions*#:+voxel-negative-x+#:+voxel-negative-y+#:+voxel-negative-z+#:+voxel-positive-x+#:+voxel-positive-y+#:+voxel-positive-z+#:apply-block-edits-to-chunk#:block-chunk#:block-chunk-boundary-revision#:block-chunk-content#:block-chunk-domain#:block-chunk-incarnation#:block-chunk-light-field#:block-chunk-revision#:block-content-column#:block-content-column-domain#:block-content-column-indices#:block-content-column-palette#:block-content-column-vocabulary#:block-vocabulary#:block-vocabulary-cardinality#:block-vocabulary-member#:block-vocabulary-members#:block-vocabulary-offset#:block-vocabulary-revision#:block-vocabulary-translation#:block-world-vocabulary#:make-block-vocabulary#:block-content-at-offset#:block-edit-at#:block-edit-overlay#:block-edit-overlay-count#:block-edit-overlay-entries#:block-ray-hit#:block-ray-hit-adjacent-coordinate#:block-ray-hit-block#:block-ray-hit-coordinate#:block-ray-hit-distance#:block-world#:block-world-cell-change-hook#:block-world-residency-change-hook#:block-world-residency-revision#:block-world-revision#:block-world-source#:block-world-space#:borrow-block-content-storage#:call-with-world-change-transaction#:chunk-block-at#:chunk-block-at-offset#:chunk-boundary-index#:chunk-coordinate#:chunk-coordinate-neighbor#:chunk-coordinate-x#:chunk-coordinate-y#:chunk-coordinate-z#:chunk-key#:chunk-domain#:chunk-domain-cardinality#:chunk-domain-coordinate#:chunk-domain-local-components#:chunk-domain-local-coordinate#:chunk-domain-local-coordinate-p#:chunk-domain-offset#:chunk-domain-offset-components#:chunk-domain-origin#:chunk-domain-space#:chunk-domain-world-components#:chunk-domain-world-coordinate#:chunk-local-world-coordinate#:chunk-not-resident#:chunk-shape#:chunk-shape-depth#:chunk-shape-height#:chunk-shape-width#:continue-chunk-window-site#:copy-local-coordinate#:do-chunk-domain-face#:do-chunk-domain-sites#:do-chunk-site-neighbors#:do-chunk-window-neighbors#:ensure-world-chunk#:install-world-chunk-storage#:local-coordinate#:local-coordinate-x#:local-coordinate-y#:local-coordinate-z#:locate-chunk-window-site#:make-block-chunk#:make-block-edit-overlay#:make-block-world#:make-chunk-coordinate#:make-chunk-domain#:make-chunk-shape#:make-local-coordinate#:make-voxel-direction#:make-voxel-space#:make-world-coordinate#:map-chunk-blocks#:opposite-voxel-direction#:raycast-block-world#:record-block-edit#:remove-world-chunk#:resident-world-chunks#:step-chunk-domain-site#:voxel-direction#:voxel-direction-dx#:voxel-direction-dy#:voxel-direction-dz#:voxel-space#:voxel-space-cell-extent#:voxel-space-chunk-shape#:voxel-space-decompose-components#:voxel-space-id#:with-block-content-storage#:with-chunk-domain-step#:with-chunk-window-step#:with-world-change-transaction#:world-block-at#:world-chunk-at#:world-chunk-at-coordinate#:world-coordinate#:world-coordinate-cell-origin#:world-coordinate-chunk-and-local#:world-coordinate-neighbor#:world-coordinate-x#:world-coordinate-y#:world-coordinate-z