载入中...
搜索中...
未找到
IGraphics3D.h
浏览该文件的文档.
118 DiagnosticCode::Unsupported, "extended PBR material rendering is unavailable on this backend"));
152 virtual void drawMeshShadow(Mesh *mesh, const glm::mat4 &lightMVP, bool doubleSided = true) = 0;
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
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
3D frame / mesh / light / shadow rendering surface.
Definition IGraphics3D.h:51
virtual void setMesh3DSceneDepth(Texture *depth)=0
Sets the mesh 3 d scene depth.
virtual void setMesh3DView(const glm::mat4 &view)=0
Sets the mesh 3 d view.
virtual void setMesh3DHeightTexture(Texture *height)=0
Sets the mesh 3 d height texture.
virtual void setMesh3DReflectionProbes(const ReflectionProbeUpload &upload)=0
Sets the mesh 3 d reflection probes.
virtual Result< void > setMesh3DPbrSurface(const PbrSurface *surface)
Copy a validated extended surface for subsequent draws; null resets to legacy shading.
Definition IGraphics3D.h:114
virtual void setMesh3DEnvProbe(const glm::vec3 ¢er, const glm::vec3 &extent)=0
Sets the mesh 3 d env probe.
virtual void setMesh3DSceneColor(Texture *color)=0
Sets the mesh 3 d scene color.
virtual void setMesh3DLighting(const Lighting3DPack &pack)=0
Sets the mesh 3 d lighting.
virtual void drawPrimitiveScene(const PrimitiveSceneCanvas3D &canvas)=0
Submits an owning frame-local primitive canvas into the active 3D pass.
virtual ~IGraphics3D()=default
Releases IGraphics3D resources.
virtual void setMesh3DMaterial(float metallic, float roughness)=0
Sets the mesh 3 d material.
virtual void setMesh3DEnv(Texture *cube, float intensity)=0
Sets the mesh 3 d env.
virtual void drawScene3DRGBA(float x, float y, float w, float h, float r=1.f, float g=1.f, float b=1.f, float a=1.f)=0
Draws scene 3 drgba.
virtual void setMesh3DCameraPos(const glm::vec3 &eye)=0
Sets the mesh 3 d camera pos.
virtual void beginGBufferPass(int width, int height)=0
Begins g buffer pass.
virtual void end3DFrameToCanvas()=0
Ends 3 d frame to canvas.
virtual void setCloudShadows(float strength, float worldCell, float time, float windSpeed, float windAngle, float coverage, float detail)=0
Sets the cloud shadows.
virtual void drawMeshShadowAlpha(Mesh *mesh, const glm::mat4 &lightMVP, Texture *albedo=nullptr, bool doubleSided=true, float lodWeight=1.f, bool lodFadeReverse=false, bool lodDither=false)=0
Queue an alpha-cutout caster with explicit face-culling policy.
virtual void drawMeshGBuffer(Mesh *mesh, const glm::mat4 &mvp, const glm::mat4 &model, float nearZ, float farZ, Texture *albedo=nullptr, float tintR=1.f, float tintG=1.f, float tintB=1.f, float motionX=0.f, float motionY=0.f, float roughness=0.45f, float metallic=0.f)=0
Draws mesh g buffer.
virtual void begin3DFrameToCanvas(Canvas *canvas)=0
Begins 3 d frame to canvas.
virtual void setMesh3DShadowReceive(bool receive)=0
Sets the mesh 3 d shadow receive.
virtual void drawCanvasRGBA(Canvas *canvas, float x, float y, float w, float h, float r=1.f, float g=1.f, float b=1.f, float a=1.f)=0
Draws canvas rgba.
virtual void setMesh3DViewProj(const glm::mat4 &viewProj)=0
Sets the mesh 3 d view proj.
virtual void drawVoxelFaceInstances(const uint32_t *packed, int count, float originX, float originY, float originZ, const std::string &faceDir, Texture *atlas, int tilesPerRow=16, const uint32_t *ao=nullptr)=0
Draws voxel face instances.
virtual void setDirectionalLight(float dx, float dy, float dz, float r=1.f, float g=1.f, float b=1.f)=0
Sets the directional light.
virtual void setMesh3DLight(const glm::vec3 &dir, const glm::vec3 &color)=0
Sets the mesh 3 d light.
virtual void setMesh3DClusteredLighting(const ClusteredLightingUpload &upload)=0
Sets the mesh 3 d clustered lighting.
virtual void drawMesh(Mesh *mesh, const glm::mat4 &model, Texture *texture, const Color &tint)=0
Draws mesh.
virtual void setMesh3DSkinInfluenceLimit(SkinInfluenceLimit count)=0
Select the influence limit consumed by subsequent mesh draws.
virtual void setMesh3DClip(float nearZ, float farZ)=0
Sets the mesh 3 d clip.
virtual void drawMeshGBufferAlpha(Mesh *mesh, const glm::mat4 &mvp, const glm::mat4 &model, float nearZ, float farZ, Texture *albedo=nullptr, float tintR=1.f, float tintG=1.f, float tintB=1.f, float motionX=0.f, float motionY=0.f, float roughness=0.45f, float metallic=0.f)=0
Draws mesh g buffer alpha.
virtual void drawMeshShadow(Mesh *mesh, const glm::mat4 &lightMVP, bool doubleSided=true)=0
Queue an opaque caster with explicit face-culling policy.
virtual void setMesh3DNormalTexture(Texture *normal)=0
Sets the mesh 3 d normal texture.
virtual void beginShadowPass(int cascadeIndex)=0
Begins shadow pass.
virtual void setMesh3DTexCellBomb(float cellScale, float strength, float rotAmount=1.f)=0
Sets the mesh 3 d tex cell bomb.
virtual void renderScene3DToCanvas(Canvas *canvas, Camera3D *camera)=0
Renders scene 3 d to canvas.
virtual void drawMeshShader(Mesh *mesh, const glm::mat4 &model, Texture *texture, const Color &tint, Shader *shader)=0
Draws mesh shader.
virtual void setMesh3DShadows(const ShadowUpload &upload)=0
Sets the mesh 3 d shadows.
virtual void setMesh3DParallax(float scale, float minLayers=8.f, float maxLayers=32.f)=0
Sets the mesh 3 d parallax.
Frame-local scene recorder for 3D line primitives.
Definition PrimitiveDrawList.h:114
GPU texture created via Graphics::newTexture. Owns GPU resources through an opaque backend handle.
Definition Texture.h:18
卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局...
Definition Animation.h:25
eve::Color Color
RGBA color used by every graphics draw call. Lives inside eve::graphics so including a graphics heade...
Definition Color.h:13
SkinInfluenceLimit
Number of strongest vertex influences retained by GPU skinning.
Definition IGraphics3D.h:19
@ Unsupported
CPU-built clustered lighting upload for one frame/camera. Point lights are clustered; directional lig...
Definition ClusteredLight.h:33
Owning material parameter snapshot; texture pointers remain borrowed. Base color/metallic/roughness c...
Definition PbrSurface.h:218
float blendDistance
Definition IGraphics3D.h:34
static constexpr int kMaxProbes
Definition IGraphics3D.h:27