#include <RenderSystem3D.h>
类 | |
| struct | MeshRenderer |
| struct | Transform3D |
Public 成员函数 | |
| void | release () override |
| void | setPosition (float x, float y, float z) |
| void | setRotation (float yaw, float pitch, float roll) |
| void | setYaw (float yaw) |
| float | getYaw () |
| void | setScale (float sx, float sy, float sz) |
| void | setMesh (Mesh *mesh) |
| void | setTexture (Texture *texture) |
| void | setNormalTexture (Texture *texture) |
| void | setHeightTexture (Texture *texture) |
| Height map for parallax (R channel; white = raised). nullptr disables sampling. | |
| void | setShader (Shader *shader) |
| void | setMaterial (Material *material) |
| Attach a Material that packages shading method + surface params. | |
| Material * | getMaterial () |
| void | setXRayShader (Shader *shader) |
| Attach an X-ray mesh shader (see Shader::setXray) for occluded silhouettes. | |
| Shader * | getXRayShader () |
| void | setXRayHighlight (bool on) |
| When true, this entity is an X-ray target: its G-buffer pixels are replaced by occluders and it is redrawn with xrayShader so the part hidden behind buildings shows as a highlight silhouette (visible parts stay normal). | |
| bool | getXRayHighlight () |
| void | setPart (int index, const std::string &name, Mesh *mesh, Material *material) |
| Bind a named mesh+material part (e.g. Assimp submesh / body region). index 0..kMaxParts-1. Passing nullptr mesh clears that slot and trims partCount. | |
| void | clearParts () |
| int | getPartCount () |
| std::string | getPartName (int index) |
| Mesh * | getPartMesh (int index) |
| Material * | getPartMaterial (int index) |
| void | setHair (bool hair) |
| bool | getHair () |
| void | setTint (float r, float g, float b, float a=1.f) |
| void | setMetallic (float metallic) |
| void | setRoughness (float roughness) |
| void | setTexCellBomb (float cellScale, float strength, float rotAmount=1.f) |
| Texture cell bombing — random per-cell UV offset/rotation blended across a 2×2 neighborhood to hide tiling. strength 0 disables (default). | |
| float | getTexCellBombScale () |
| float | getTexCellBombStrength () |
| float | getTexCellBombRotation () |
| void | setParallax (float scale, float minLayers=8.f, float maxLayers=32.f) |
| Parallax occlusion mapping. scale 0 disables (default). Typical scale 0.02..0.08. Requires a height texture via setHeightTexture. | |
| float | getParallaxScale () |
| float | getParallaxMinLayers () |
| float | getParallaxMaxLayers () |
| void | setVisible (bool visible) |
| void | setReceiveLight (bool receive) |
| void | setCastShadow (bool cast) |
| void | setReceiveShadow (bool receive) |
| void | setCastOcclusion (bool cast) |
| bool | getCastOcclusion () |
| void | setCamera (Camera3D *camera) |
| void | setMeshLod (int index, Mesh *mesh, float switchDistance=0.f) |
| Configure geometric LOD. index 0 = highest detail. For index > 0, switchDistance is the camera distance that selects this level (stored in lodDistances[index-1]). Passing nullptr mesh clears that slot. | |
| void | clearMeshLod () |
| int | getMeshLodCount () |
| int | getMeshLodLevelAtDistance (float distance) |
详细描述
在文件 RenderSystem3D.h 第 73 行定义.
成员函数说明
◆ clearMeshLod()
| void eve::graphics::Renderable3D::clearMeshLod | ( | ) |
在文件 RenderSystem3D.cpp 第 386 行定义.
引用了 eve::graphics::Renderable3D::MeshRenderer::kMaxLodLevels , 以及 mr.
◆ clearParts()
| void eve::graphics::Renderable3D::clearParts | ( | ) |
在文件 RenderSystem3D.cpp 第 285 行定义.
引用了 eve::graphics::Renderable3D::MeshRenderer::kMaxParts , 以及 mr.
◆ getCastOcclusion()
| bool eve::graphics::Renderable3D::getCastOcclusion | ( | ) |
在文件 RenderSystem3D.cpp 第 368 行定义.
◆ getHair()
| bool eve::graphics::Renderable3D::getHair | ( | ) |
在文件 RenderSystem3D.cpp 第 315 行定义.
◆ getMaterial()
| Material * eve::graphics::Renderable3D::getMaterial | ( | ) |
在文件 RenderSystem3D.cpp 第 262 行定义.
◆ getMeshLodCount()
| int eve::graphics::Renderable3D::getMeshLodCount | ( | ) |
在文件 RenderSystem3D.cpp 第 392 行定义.
◆ getMeshLodLevelAtDistance()
| int eve::graphics::Renderable3D::getMeshLodLevelAtDistance | ( | float | distance | ) |
在文件 RenderSystem3D.cpp 第 394 行定义.
◆ getParallaxMaxLayers()
| float eve::graphics::Renderable3D::getParallaxMaxLayers | ( | ) |
在文件 RenderSystem3D.cpp 第 356 行定义.
◆ getParallaxMinLayers()
| float eve::graphics::Renderable3D::getParallaxMinLayers | ( | ) |
在文件 RenderSystem3D.cpp 第 354 行定义.
◆ getParallaxScale()
| float eve::graphics::Renderable3D::getParallaxScale | ( | ) |
在文件 RenderSystem3D.cpp 第 352 行定义.
◆ getPartCount()
| int eve::graphics::Renderable3D::getPartCount | ( | ) |
在文件 RenderSystem3D.cpp 第 293 行定义.
◆ getPartMaterial()
| Material * eve::graphics::Renderable3D::getPartMaterial | ( | int | index | ) |
在文件 RenderSystem3D.cpp 第 307 行定义.
引用了 mr.
◆ getPartMesh()
| Mesh * eve::graphics::Renderable3D::getPartMesh | ( | int | index | ) |
在文件 RenderSystem3D.cpp 第 301 行定义.
引用了 mr.
◆ getPartName()
| std::string eve::graphics::Renderable3D::getPartName | ( | int | index | ) |
在文件 RenderSystem3D.cpp 第 295 行定义.
引用了 mr.
◆ getTexCellBombRotation()
| float eve::graphics::Renderable3D::getTexCellBombRotation | ( | ) |
在文件 RenderSystem3D.cpp 第 340 行定义.
◆ getTexCellBombScale()
| float eve::graphics::Renderable3D::getTexCellBombScale | ( | ) |
在文件 RenderSystem3D.cpp 第 336 行定义.
◆ getTexCellBombStrength()
| float eve::graphics::Renderable3D::getTexCellBombStrength | ( | ) |
在文件 RenderSystem3D.cpp 第 338 行定义.
◆ getXRayHighlight()
| bool eve::graphics::Renderable3D::getXRayHighlight | ( | ) |
在文件 RenderSystem3D.cpp 第 270 行定义.
◆ getXRayShader()
| Shader * eve::graphics::Renderable3D::getXRayShader | ( | ) |
在文件 RenderSystem3D.cpp 第 266 行定义.
◆ getYaw()
| float eve::graphics::Renderable3D::getYaw | ( | ) |
在文件 RenderSystem3D.cpp 第 241 行定义.
◆ release()
|
inlineoverride |
在文件 RenderSystem3D.h 第 77 行定义.
◆ setCamera()
| void eve::graphics::Renderable3D::setCamera | ( | Camera3D * | camera | ) |
在文件 RenderSystem3D.cpp 第 370 行定义.
◆ setCastOcclusion()
| void eve::graphics::Renderable3D::setCastOcclusion | ( | bool | cast | ) |
在文件 RenderSystem3D.cpp 第 366 行定义.
◆ setCastShadow()
| void eve::graphics::Renderable3D::setCastShadow | ( | bool | cast | ) |
在文件 RenderSystem3D.cpp 第 362 行定义.
◆ setHair()
| void eve::graphics::Renderable3D::setHair | ( | bool | hair | ) |
在文件 RenderSystem3D.cpp 第 313 行定义.
引用了 hair.
◆ setHeightTexture()
| void eve::graphics::Renderable3D::setHeightTexture | ( | Texture * | texture | ) |
Height map for parallax (R channel; white = raised). nullptr disables sampling.
在文件 RenderSystem3D.cpp 第 256 行定义.
◆ setMaterial()
| void eve::graphics::Renderable3D::setMaterial | ( | Material * | material | ) |
Attach a Material that packages shading method + surface params.
在文件 RenderSystem3D.cpp 第 260 行定义.
引用了 material.
被这些函数引用 eve::weather::Weather::init().
◆ setMesh()
| void eve::graphics::Renderable3D::setMesh | ( | Mesh * | mesh | ) |
在文件 RenderSystem3D.cpp 第 250 行定义.
引用了 mesh.
被这些函数引用 eve::weather::Weather::init() , 以及 eve::avatar::AvatarInstance::setMesh().
◆ setMeshLod()
Configure geometric LOD. index 0 = highest detail. For index > 0, switchDistance is the camera distance that selects this level (stored in lodDistances[index-1]). Passing nullptr mesh clears that slot.
在文件 RenderSystem3D.cpp 第 372 行定义.
引用了 eve::graphics::Renderable3D::MeshRenderer::kMaxLodLevels, mesh , 以及 mr.
◆ setMetallic()
| void eve::graphics::Renderable3D::setMetallic | ( | float | metallic | ) |
在文件 RenderSystem3D.cpp 第 325 行定义.
引用了 metallic.
◆ setNormalTexture()
| void eve::graphics::Renderable3D::setNormalTexture | ( | Texture * | texture | ) |
在文件 RenderSystem3D.cpp 第 254 行定义.
◆ setParallax()
| void eve::graphics::Renderable3D::setParallax | ( | float | scale, |
| float | minLayers = 8.f, |
||
| float | maxLayers = 32.f |
||
| ) |
Parallax occlusion mapping. scale 0 disables (default). Typical scale 0.02..0.08. Requires a height texture via setHeightTexture.
在文件 RenderSystem3D.cpp 第 342 行定义.
◆ setPart()
| void eve::graphics::Renderable3D::setPart | ( | int | index, |
| const std::string & | name, | ||
| Mesh * | mesh, | ||
| Material * | material | ||
| ) |
Bind a named mesh+material part (e.g. Assimp submesh / body region). index 0..kMaxParts-1. Passing nullptr mesh clears that slot and trims partCount.
在文件 RenderSystem3D.cpp 第 272 行定义.
引用了 eve::graphics::Renderable3D::MeshRenderer::kMaxParts, material, mesh, mr , 以及 name.
◆ setPosition()
| void eve::graphics::Renderable3D::setPosition | ( | float | x, |
| float | y, | ||
| float | z | ||
| ) |
在文件 RenderSystem3D.cpp 第 225 行定义.
◆ setReceiveLight()
| void eve::graphics::Renderable3D::setReceiveLight | ( | bool | receive | ) |
在文件 RenderSystem3D.cpp 第 360 行定义.
◆ setReceiveShadow()
| void eve::graphics::Renderable3D::setReceiveShadow | ( | bool | receive | ) |
在文件 RenderSystem3D.cpp 第 364 行定义.
◆ setRotation()
| void eve::graphics::Renderable3D::setRotation | ( | float | yaw, |
| float | pitch, | ||
| float | roll | ||
| ) |
在文件 RenderSystem3D.cpp 第 232 行定义.
◆ setRoughness()
| void eve::graphics::Renderable3D::setRoughness | ( | float | roughness | ) |
在文件 RenderSystem3D.cpp 第 327 行定义.
引用了 roughness.
◆ setScale()
| void eve::graphics::Renderable3D::setScale | ( | float | sx, |
| float | sy, | ||
| float | sz | ||
| ) |
在文件 RenderSystem3D.cpp 第 243 行定义.
◆ setShader()
| void eve::graphics::Renderable3D::setShader | ( | Shader * | shader | ) |
在文件 RenderSystem3D.cpp 第 258 行定义.
引用了 shader.
◆ setTexCellBomb()
| void eve::graphics::Renderable3D::setTexCellBomb | ( | float | cellScale, |
| float | strength, | ||
| float | rotAmount = 1.f |
||
| ) |
Texture cell bombing — random per-cell UV offset/rotation blended across a 2×2 neighborhood to hide tiling. strength 0 disables (default).
在文件 RenderSystem3D.cpp 第 329 行定义.
引用了 mr.
◆ setTexture()
| void eve::graphics::Renderable3D::setTexture | ( | Texture * | texture | ) |
在文件 RenderSystem3D.cpp 第 252 行定义.
被这些函数引用 eve::weather::Weather::init() , 以及 eve::avatar::AvatarInstance::setTexture().
◆ setTint()
| void eve::graphics::Renderable3D::setTint | ( | float | r, |
| float | g, | ||
| float | b, | ||
| float | a = 1.f |
||
| ) |
在文件 RenderSystem3D.cpp 第 317 行定义.
◆ setVisible()
| void eve::graphics::Renderable3D::setVisible | ( | bool | visible | ) |
在文件 RenderSystem3D.cpp 第 358 行定义.
被这些函数引用 eve::weather::Weather::init() , 以及 eve::weather::Weather::update().
◆ setXRayHighlight()
| void eve::graphics::Renderable3D::setXRayHighlight | ( | bool | on | ) |
When true, this entity is an X-ray target: its G-buffer pixels are replaced by occluders and it is redrawn with xrayShader so the part hidden behind buildings shows as a highlight silhouette (visible parts stay normal).
在文件 RenderSystem3D.cpp 第 268 行定义.
◆ setXRayShader()
| void eve::graphics::Renderable3D::setXRayShader | ( | Shader * | shader | ) |
Attach an X-ray mesh shader (see Shader::setXray) for occluded silhouettes.
在文件 RenderSystem3D.cpp 第 264 行定义.
引用了 shader.
◆ setYaw()
| void eve::graphics::Renderable3D::setYaw | ( | float | yaw | ) |
在文件 RenderSystem3D.cpp 第 239 行定义.
该类的文档由以下文件生成:
- src/modules/graphics/RenderSystem3D.h
- src/modules/graphics/RenderSystem3D.cpp