载入中...
搜索中...
未找到
PixelWorldPhysics.h
浏览该文件的文档.
83[[nodiscard]] EVENGINE_API_DOMAINS eve::Result<std::vector<TerrainCollisionContour>> extractTerrainContours(
84 const eve::pixelworld::PixelWorld& pixelWorld, int chunkX, int chunkY, std::uint32_t maximumVertices = 4096);
99 const eve::pixelworld::PixelWorld& pixelWorld, float startX, float startY, float endX, float endY, float radius,
Typed composition link from a gameplay entity to a physics body.
Move-only, checked operation results for the common layer.
Sparse, chunked, deterministic 2D falling-material world.
Definition PixelWorld.h:224
Owning detached bitmap plus a non-owning, stale-safe dynamic body link.
Definition PixelWorldPhysics.h:110
PixelFragmentBody(PixelFragmentBody &&) noexcept=default
Pixel fragment body.
~PixelFragmentBody()=default
Pixel fragment body.
Incremental static collision projection of authoritative PixelWorld chunks.
Definition PixelWorldPhysics.h:173
~PixelTerrainCollisionCache()
Pixel terrain collision cache.
PixelTerrainCollisionCache(PixelTerrainCollisionCache &&) noexcept
Pixel terrain collision cache.
eve::Result< PixelTerrainContact > sweepTerrainCircle(const eve::pixelworld::PixelWorld &pixelWorld, float startX, float startY, float endX, float endY, float radius, std::uint32_t maximumCells)
Sweep a circular character shape continuously through authoritative solid material cells.
Definition PixelWorldPhysics.cpp:277
eve::Result< std::vector< TerrainCollisionContour > > extractTerrainContours(const eve::pixelworld::PixelWorld &pixelWorld, int chunkX, int chunkY, std::uint32_t maximumVertices)
Extract simplified binary Marching-Squares-equivalent boundary chains for one Chunk.
Definition PixelWorldPhysics.cpp:118
eve::Result< PixelTerrainContact > probeTerrainCircle(const eve::pixelworld::PixelWorld &pixelWorld, float centerX, float centerY, float radius, std::uint32_t maximumCells)
Probe a circular character contact directly against authoritative solid material cells.
Definition PixelWorldPhysics.cpp:216
FragmentSettleDisposition
Observable outcome of polling a fragment body for settlement.
Definition PixelWorldPhysics.h:36
MaterialId
Compact stable material identifier stored in each authoritative cell.
Definition PixelMaterial.h:16
Definition Container.h:602
Policy for dynamic fragment fixture creation and terrain settlement.
Definition PixelWorldPhysics.h:28
std::uint32_t maximumFixtures
Definition PixelWorldPhysics.h:32
float friction
Definition PixelWorldPhysics.h:30
float restitution
Definition PixelWorldPhysics.h:31
One deterministic axis-aligned fixture produced from a fragment bitmap.
Definition PixelWorldPhysics.h:20
Receipt for one checked fragment-body settlement poll.
Definition PixelWorldPhysics.h:39
FragmentSettleDisposition disposition
Definition PixelWorldPhysics.h:40
std::uint64_t fragmentId
Definition PixelWorldPhysics.h:41
int quarterTurns
Definition PixelWorldPhysics.h:43
std::uint32_t cellsRasterized
Definition PixelWorldPhysics.h:42
Deterministic contact returned by an authoritative terrain probe or sweep.
Definition PixelWorldPhysics.h:63
eve::pixelworld::MaterialId material
Definition PixelWorldPhysics.h:65
float depth
Probe penetration depth, or zero for a non-overlapping sweep hit.
Definition PixelWorldPhysics.h:73
One simplified local-space boundary contour generated for a terrain Chunk.
Definition PixelWorldPhysics.h:55
std::vector< float > vertices
Packed local pixel-space vertices x0,y0,x1,y1,... without a repeated loop endpoint.
Definition PixelWorldPhysics.h:57
Counters for one transactional dirty-Chunk terrain collision sync.
Definition PixelWorldPhysics.h:47
std::uint32_t bodiesRemoved
Definition PixelWorldPhysics.h:51
std::uint64_t sourceRevision
Definition PixelWorldPhysics.h:48
std::uint32_t chunksRebuilt
Definition PixelWorldPhysics.h:49
std::uint32_t fixturesCreated
Definition PixelWorldPhysics.h:50