载入中...
搜索中...
未找到
PrimitiveScriptBindings.cpp
浏览该文件的文档.
32 eve::Diagnostic::error(eve::DiagnosticCode::StaleHandle, "primitive scene owner no longer exists",
37 eve::Diagnostic::error(eve::DiagnosticCode::StaleHandle, "primitive handle is stale", "primitive", {},
51 eve::Diagnostic::error(eve::DiagnosticCode::StaleHandle, "primitive scene owner no longer exists",
68 auto projected = eve::script::projectStatusResult(vm, eve::Status::success(eve::StatusCode::Applied));
86eve::Result<std::vector<glm::vec3>> scriptPoints(ssq::Array values, std::size_t minimum, std::size_t maximum) {
89 eve::DiagnosticCode::InvalidArgument, "expected a flat xyz array with the required point count", "points",
98 eve::DiagnosticCode::InvalidArgument, error.what(), "points", {}, "graphics.primitive.binding"));
124 cls.addFunc("newPrimitiveArc3D", [vm](Graphics* self, ssq::Array xyz, float radius, float start, float sweep,
164 descriptor.geometry = PrimitiveFrustum3D{{points[0],points[1],points[2],points[3],points[4],points[5],points[6],points[7]}};
168 cls.addFunc("newPrimitiveDisk3D", [vm](Graphics* self, float x, float y, float z, float nx, float ny, float nz, float radius,
176 cls.addFunc("newPrimitiveCylinder3D", [vm](Graphics* self, float ax, float ay, float az, float bx, float by, float bz, float radius,
184 cls.addFunc("newPrimitiveCapsule3D", [vm](Graphics* self, float ax, float ay, float az, float bx, float by, float bz, float radius,
192 cls.addFunc("newPrimitiveCone3D", [vm](Graphics* self, float x, float y, float z, float dx, float dy, float dz, float height, float radius,
200 cls.addFunc("newPrimitiveArrow3D", [vm](Graphics* self, float ax, float ay, float az, float bx, float by, float bz, float headLength, float headRadius,
212 "setPrimitiveTransforms3D", [vm, primitiveTag](Graphics* self, ssq::Array proxies, ssq::Array matrices) {
215 vm, eve::Result<std::size_t>::failure(eve::Diagnostic::error(eve::DiagnosticCode::InvalidArgument,
430 eve::Diagnostic::error(eve::DiagnosticCode::InvalidArgument, "primitive proxy must not be null",
438 eve::Diagnostic::error(eve::DiagnosticCode::StaleHandle, "primitive scene owner no longer exists",
450 mutatePrimitive(value, [visible](PrimitiveDescriptor3D& descriptor) { descriptor.visible = visible; });
456 primitive.addFunc("setColor", [vm](ScriptPrimitive3D* value, float r, float g, float b, float a) {
472 primitive.addFunc("setDash", [vm](ScriptPrimitive3D* value, float drawLength, float gapLength, float phase,
478 eve::Diagnostic::error(eve::DiagnosticCode::InvalidArgument, "dash space must be screen or world",
495 mutatePrimitive(value, [](PrimitiveDescriptor3D& descriptor) { descriptor.paint.stroke.dash.reset(); });
539 cls.addFunc("newPrimitiveLine3D", [vm](Graphics* self, float ax, float ay, float az, float bx, float by, float bz,
547 cls.addFunc("newPrimitiveSphere3D", [vm](Graphics* self, float x, float y, float z, float radius, float r, float g,
The single Squirrel projection for common Result, Status and Value.
Explicit Value/Owned/Borrowed semantics at the Squirrel boundary.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
const Status & status() const noexcept
Inspect the structured operation status.
Definition Result.h:269
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
static Status success(StatusCode code=StatusCode::Ok)
Construct a successful status with an explicit non-error outcome.
Definition Status.h:81
Definition Graphics.h:125
std::shared_ptr< PrimitiveScene > getPrimitiveScene() const noexcept
Returns the authoritative persistent spatial-primitive scene.
Definition Graphics.h:521
卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局...
Definition Animation.h:25
@ Square
void exposePrimitiveScriptBindings(ssq::Table &table, ssq::Class &cls)
Registers owning primitive proxies on the VM owner thread; retains no table references.
Definition PrimitiveScriptBindings.cpp:104
@ FillAndStroke
@ Stroke
eve::Color Color
RGBA color used by every graphics draw call. Lives inside eve::graphics so including a graphics heade...
Definition Color.h:13
@ ScreenPixels
@ WorldUnits
@ ScreenPixels
@ WorldUnits
@ TestAndWrite
ssq::Table projectStatusResult(HSQUIRRELVM vm, const Status &status)
Project a checked native status that carries no payload.
Definition SquirrelBinding.cpp:454
@ InvalidArgument
@ StaleHandle
@ Applied
@ Premultiplied
@ Additive
@ Alpha
@ Multiply
@ Opaque
Definition Container.h:602
Owning alternating draw/gap pattern for stroked primitives.
Definition PrimitiveTypes.h:48
One persistent scene primitive owned by PrimitiveScene.
Definition PrimitiveScene.h:141
PrimitiveGeometry3D geometry
Definition PrimitiveScene.h:142
Owning persistent polyline descriptor.
Definition PrimitiveScene.h:57