载入中...
搜索中...
未找到
PrimitiveDrawList.h
浏览该文件的文档.
70 [[nodiscard]] eve::Result<PrimitiveRecordStatus> tryDrawPolyline(std::span<const glm::vec2> points, bool closed,
77 void drawRoundedRect(glm::vec2 minimum, glm::vec2 maximum, glm::vec2 radii, const PrimitivePaint& paint,
80 void drawCircle(glm::vec2 center, float radius, const PrimitivePaint& paint, std::uint32_t segments = 48);
85 void drawEllipse(glm::vec2 center, glm::vec2 radii, const PrimitivePaint& paint, std::uint32_t segments = 48);
87 void drawArc(glm::vec2 center, glm::vec2 radii, float startRadians, float sweepRadians, const PrimitivePaint& paint,
93 [[nodiscard]] const std::vector<PolylineCommand2D>& commands() const noexcept { return commands_; }
95 [[nodiscard]] const std::vector<TriangleCommand2D>& triangles() const noexcept { return triangles_; }
117 explicit PrimitiveSceneCanvas3D(SceneDrawContext context, std::size_t hardCommandLimit = 65536);
130 void drawPolyline(std::span<const glm::vec3> points, bool closed, const ScenePrimitivePaint& paint);
132 [[nodiscard]] eve::Result<PrimitiveRecordStatus> tryDrawPolyline(std::span<const glm::vec3> points, bool closed,
135 void drawRay(glm::vec3 origin, glm::vec3 direction, float length, const ScenePrimitivePaint& paint);
139 void drawQuad(glm::vec3 a, glm::vec3 b, glm::vec3 c, glm::vec3 d, const ScenePrimitivePaint& paint);
141 void drawDisk(glm::vec3 center, glm::vec3 normal, float radius, const ScenePrimitivePaint& paint,
144 void drawArc(glm::vec3 center, glm::vec3 normal, glm::vec3 zeroDirection, float radius, float startRadians,
149 void drawObb(glm::vec3 center, const std::array<glm::vec3, 3>& halfAxes, const ScenePrimitivePaint& paint);
151 void drawGrid(glm::vec3 origin, glm::vec3 axisU, glm::vec3 axisV, std::uint32_t cellsU, std::uint32_t cellsV,
154 void drawSphere(glm::vec3 center, float radius, const ScenePrimitivePaint& paint, std::uint32_t segments = 32);
165 void drawCone(glm::vec3 apex, glm::vec3 axis, float height, float radius, const ScenePrimitivePaint& paint,
168 void drawArrow(glm::vec3 from, glm::vec3 to, float headLength, float headRadius, const ScenePrimitivePaint& paint);
177 [[nodiscard]] const std::vector<PolylineCommand3D>& commands() const noexcept { return commands_; }
179 [[nodiscard]] const std::vector<TriangleCommand3D>& triangles() const noexcept { return triangles_; }
181 [[nodiscard]] const PrimitiveDrawStatistics& statistics() const noexcept { return statistics_; }
Move-only, checked operation results for the common layer.
Frame-local Skia-style recorder for 2D line primitives.
Definition PrimitiveDrawList.h:52
const std::vector< TriangleCommand2D > & triangles() const noexcept
Triangles.
Definition PrimitiveDrawList.h:95
const std::vector< PolylineCommand2D > & commands() const noexcept
Commands.
Definition PrimitiveDrawList.h:93
const PrimitiveDrawStatistics & statistics() const noexcept
Statistics.
Definition PrimitiveDrawList.h:97
Frame-local scene recorder for 3D line primitives.
Definition PrimitiveDrawList.h:114
const std::vector< TriangleCommand3D > & triangles() const noexcept
Triangles.
Definition PrimitiveDrawList.h:179
const std::vector< PolylineCommand3D > & commands() const noexcept
Commands.
Definition PrimitiveDrawList.h:177
const PrimitiveDrawStatistics & statistics() const noexcept
Statistics.
Definition PrimitiveDrawList.h:181
Authoritative owner for primitives that persist across frames.
Definition PrimitiveScene.h:167
卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局...
Definition Animation.h:25
glm::vec4 Color
Render-neutral RGBA color shared by graphics-facing modules.
Definition RenderTypes.h:8
One owning 2D polyline command recorded for the current frame.
Definition PrimitiveDrawList.h:19
std::vector< glm::vec2 > points
Definition PrimitiveDrawList.h:20
std::vector< float > cumulativeLengths
Definition PrimitiveDrawList.h:21
One owning 3D polyline command recorded for the current frame.
Definition PrimitiveDrawList.h:36
std::vector< glm::vec3 > points
Definition PrimitiveDrawList.h:37
std::vector< float > cumulativeWorldLengths
Definition PrimitiveDrawList.h:38
Per-frame observable primitive workload.
Definition PrimitiveTypes.h:111
Quality and screen-error policy used by circles and curved spatial primitives.
Definition PrimitiveTypes.h:37
Immutable camera and viewport facts used to resolve one 3D draw list. Projection uses the engine's RH...
Definition PrimitiveTypes.h:98
Additional scene-pass state carried by every 3D command.
Definition PrimitiveTypes.h:85
One owning filled 2D triangle command.
Definition PrimitiveDrawList.h:28
std::array< glm::vec2, 3 > points
Definition PrimitiveDrawList.h:29
std::optional< std::array< Color, 3 > > vertexColors
Definition PrimitiveDrawList.h:32
One owning filled 3D triangle command.
Definition PrimitiveDrawList.h:45
std::array< glm::vec3, 3 > points
Definition PrimitiveDrawList.h:46