载入中...
搜索中...
未找到
RenderSystem3D.cpp 文件参考
#include "graphics/RenderSystem3D.h"
#include "common/RenderTrace.h"
#include "graphics/AmbientOcclusion.h"
#include "graphics/ClipSpace.h"
#include "graphics/ClusteredLight.h"
#include "graphics/Graphics.h"
#include "graphics/Light.h"
#include "graphics/Material.h"
#include "graphics/Outline.h"
#include "graphics/RenderControl.h"
#include "graphics/Shadow.h"
#include <algorithm>
#include <cmath>
#include <glm/gtc/matrix_inverse.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <vector>

浏览源代码.

命名空间

namespace  eve
 
namespace  eve::graphics
 卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局参数。 数据模型与渲染/交互逻辑见 CardTypes.h。
 

变量说明

◆ camIdx

int camIdx = 0

在文件 RenderSystem3D.cpp534 行定义.

被这些函数引用 eve::graphics::RenderSystem3D::render().

◆ cascadeMask

uint32_t cascadeMask = 0

在文件 RenderSystem3D.cpp535 行定义.

◆ clustered

ClusteredLightingUpload clustered {}

在文件 RenderSystem3D.cpp491 行定义.

被这些函数引用 eve::graphics::RenderSystem3D::render().

◆ clusteredUploaded

bool clusteredUploaded = false

Whether the clustered SSBOs were uploaded for this camera this frame.

在文件 RenderSystem3D.cpp494 行定义.

◆ clusteredValid

bool clusteredValid = false

在文件 RenderSystem3D.cpp492 行定义.

◆ data

Camera3D::Data* data = nullptr

在文件 RenderSystem3D.cpp51 行定义.

◆ distSq

float distSq = 0.f

在文件 RenderSystem3D.cpp533 行定义.

被这些函数引用 eve::graphics::RenderSystem3D::render().

◆ eye

◆ fovRad

◆ frustum

FrustumPlanes frustum

在文件 RenderSystem3D.cpp488 行定义.

被这些函数引用 eve::voxel::VoxelWorld::selectVisible().

◆ hair

bool hair = false

在文件 RenderSystem3D.cpp538 行定义.

被这些函数引用 eve::graphics::Material::setHair() , 以及 eve::graphics::Renderable3D::setHair().

◆ inDefaultView

bool inDefaultView = false

在文件 RenderSystem3D.cpp537 行定义.

◆ inView

bool inView = false

在文件 RenderSystem3D.cpp536 行定义.

◆ isPoint

bool isPoint = true

在文件 RenderSystem3D.cpp52 行定义.

◆ lighting

Lighting3DPack lighting {}

在文件 RenderSystem3D.cpp490 行定义.

◆ material

◆ mesh

Mesh* mesh = nullptr

在文件 RenderSystem3D.cpp527 行定义.

被这些函数引用 eve::graphics::vulkan::Graphics::bakeMeshMorph(), eve::graphics::webgpu::Graphics::bakeMeshMorph(), eve::animation::AnimLattice::bindModel(), eve::graphics::grass::buildBillboards(), eve::procgen::Procgen::buildMesh(), eve::graphics::vulkan::Graphics::drawMesh(), eve::graphics::webgpu::Graphics::drawMesh(), eve::graphics::vulkan::Graphics::drawMeshGBuffer(), eve::graphics::webgpu::Graphics::drawMeshGBuffer(), eve::graphics::vulkan::Graphics::drawMeshGBufferAlpha(), eve::graphics::webgpu::Graphics::drawMeshGBufferAlpha(), eve::graphics::vulkan::Graphics::drawMeshShader(), eve::graphics::webgpu::Graphics::drawMeshShader(), eve::graphics::vulkan::Graphics::drawMeshShadow(), eve::graphics::webgpu::Graphics::drawMeshShadow(), eve::graphics::vulkan::Graphics::drawMeshShadowAlpha(), eve::graphics::webgpu::Graphics::drawMeshShadowAlpha(), eve::animation::AnimSkin::fromModel(), eve::animation::AnimLattice::fromModel(), eve::housegen::HouseLayout::instantiate(), eve::graphics::webgpu::Graphics::newMeshFromArrays(), eve::graphics::vulkan::Graphics::newMeshFromAssimp(), eve::graphics::webgpu::Graphics::newMeshFromAssimp(), eve::graphics::vulkan::Graphics::newMeshFromAssimp(), eve::graphics::webgpu::Graphics::newMeshFromAssimp(), eve::graphics::Graphics::releaseMesh(), eve::graphics::vulkan::Graphics::releaseMesh(), eve::graphics::webgpu::Graphics::releaseMesh(), eve::avatar::AvatarInstance::setMesh(), eve::graphics::Renderable3D::setMesh(), eve::graphics::Renderable3D::setMeshLod(), eve::graphics::Renderable3D::setPart(), eve::graphics::vulkan::Graphics::updateMeshVertices() , 以及 eve::graphics::webgpu::Graphics::updateMeshVertices().

◆ model

glm::mat4 model {1.f}

在文件 RenderSystem3D.cpp530 行定义.

被这些函数引用 eve::animation::AnimLattice::bindModel(), eve::model3d::buildRenderable(), eve::model3d::buildRenderables(), eve::model3d::Model3D::createRenderable(), eve::graphics::GrassField::draw(), eve::graphics::vulkan::Graphics::drawMesh(), eve::graphics::webgpu::Graphics::drawMesh(), eve::graphics::vulkan::Graphics::drawMeshGBuffer(), eve::graphics::webgpu::Graphics::drawMeshGBuffer(), eve::graphics::vulkan::Graphics::drawMeshGBufferAlpha(), eve::graphics::webgpu::Graphics::drawMeshGBufferAlpha(), eve::graphics::vulkan::Graphics::drawMeshShader(), eve::graphics::webgpu::Graphics::drawMeshShader(), eve::animation::AnimSkin::fromModel(), eve::animation::AnimLattice::fromModel(), eve::animation::AnimImporter::getAnimationCountFromModel(), eve::animation::AnimImporter::getAnimationNameFromModel(), eve::housegen::HouseLayout::instantiate(), eve::animation::AnimImporter::loadClipFromModel(), eve::housegen::HouseComponentLibrary::loadFromFile(), eve::animation::AnimImporter::loadSkeletonFromModel(), eve::animation::Animation::newClipFromModel(), eve::animation::Animation::newLatticeFromModel(), eve::animation::Animation::newSkeletonFromModel(), eve::animation::Animation::newSkinFromModel(), eve::graphics::RenderSystem3D::render(), eve::graphics::RenderSystem3D::renderToCanvas(), eve::virtualgeometry::VirtualGeometryRenderer::setCamera(), eve::dev::RenderVision::setModel(), eve::graphics::Material::setShadingModel(), eve::spritestack::SpriteStack::sliceModel() , 以及 eve::spritestack::sliceModelToLayers().

◆ mr

◆ p

glm::vec4 p[6] {}

在文件 RenderSystem3D.cpp444 行定义.

被这些函数引用 eve::scene::aabbIntersectsFrustum(), eve::graphics::grass::buildBillboards(), eve::graphics::buildDirectionalCSM(), eve::network::NetRpc::call(), eve::ui::EditorHost::capture(), eve::dev::Snapshot::captureState(), eve::graphics::clampParallaxParams(), eve::physics::Cloth::Cloth(), eve::scene::cornerInsideClip(), eve::cmd::Cmdline::Create(), eve::animation::AnimLattice::deformNormals(), eve::animation::AnimLattice::deformPositions(), eve::voxel::VoxelWorld::deserializeWorld(), eve::animation::AnimTrail::draw(), eve::physics::Cloth::draw(), eve::physics::Fluid::draw(), eve::physics::Fluid::emit(), eve::ModuleManager::find(), eve::scene::SceneHost::findIndexByPath(), eve::animation::AnimSkin::fromModel(), eve::procgen::PbrParams::fromParams(), eve::procgen::generateLinearStructure(), eve::procgen::generateRockMesh(), eve::animation::SpineSkeleton::getBoneWorldMatrix(), eve::rpg::SkillSystem::getCastProgress(), eve::editor::TransformGizmo::getMatrix(), eve::scene::SceneNodeRef::getParentId(), eve::scene::Scene::getParentId(), eve::image::ImageData::getPixel(), eve::graphics::webgpu::Graphics::getPixelImpl(), eve::system::System::getPlatform(), eve::physics::Cloth::grabAt(), eve::graphics::RenderControl::hasPass(), eve::voxel::Frustum::intersectsAABB(), eve::sceneloader::SceneLoader::loadAsync(), eve::ui::EditorHost::loadEditorsFromDisk(), eve::animation::SpineAtlas::loadFromText(), eve::scene::Scene::localToWorldAt(), eve::physics::Cloth::moveGrab(), eve::graphics::webgpu::Graphics::newMeshFromAssimp(), eve::network::UdpLink::onDatagram(), eve::tensor::optimizeGraph(), eve::graphics::orthoVulkanRH_ZO(), eve::graphics::grass::packSwayAtlasRGBA(), eve::graphics::perspectiveVulkanRH_ZO(), eve::dialogue::Dialogue::pickLine(), eve::grid::GridConfig::planeName(), eve::dialogue::Dialogue::playLine(), eve::dialogue::Dialogue::playPool(), eve::filesystem::HotReload::pollRemoteChange(), ssq::detail::popValue(), eve::editor::Brush::previewAt(), eve::sceneloader::SceneLoader::prewarmAsync(), eve::tensor::q::quantize(), eve::tensor::TF::quantizeWeight(), eve::network::TcpSocket::queueSend(), eve::editor::TransformGizmo::rebuildParts(), eve::ModuleManager::register_module(), eve::procgen::registerLinearStructureRecipes(), eve::graphics::RenderSystem3D::render(), eve::particles::ParticleEmitter::reset(), eve::dev::Snapshot::restoreState(), eve::cmd::Cmdline::runArgs(), eve::particles::ParticleGradient::sample(), eve::particles::ParticleCurve::sample(), eve::graphics::grass::sampleHalton(), eve::graphics::grass::samplePoisson(), eve::network::UdpLink::send(), eve::virtualgeometry::VirtualGeometryRenderer::setCamera(), eve::ui::EditorHost::setEditorValue(), eve::physics::Cloth::setParticlePosition(), eve::daynight::DayNight::setPaused(), eve::audio::Source::setPitch(), eve::image::ImageData::setPixel(), eve::animation::AnimLattice::setPointOffset(), eve::animation::AnimLattice::setPointScale(), eve::dialogue::Dialogue::setRandomSeed(), eve::animation::AnimLattice::setScale(), eve::animation::SpineSkeleton::setToSetupPose(), eve::spritestack::sliceModelToLayers(), eve::particles::spawnParticleAt(), eve::particles::stepEmitterSim(), eve::particles::stepEmitterSimGpu(), eve::graphics::texCellBombSampleUV(), eve::particles::ParticleLightSystem::update(), eve::animation::AnimTrail::update(), eve::physics::Cloth::update(), eve::physics::Fluid::update(), eve::animation::SpineSkeleton::updateWorldTransform(), eve::scene::SceneHost::walkAncestors(), eve::scene::NodeDesc::withRotation(), eve::scene::worldBoundsOf() , 以及 eve::scene::Scene::worldToLocalAt().

◆ proj

◆ shader

Shader* shader = nullptr

在文件 RenderSystem3D.cpp529 行定义.

被这些函数引用 eve::graphics::grass::bindAtlasLayout(), eve::graphics::grass::bindDefaults(), eve::graphics::hair::bindDefaults(), eve::graphics::grass::bindLayer(), eve::stylize::bindMeshUniforms(), eve::stylize::bindPostUniforms(), eve::gpgpu::Gpgpu::dispatch(), eve::graphics::vulkan::Graphics::drawMeshShader(), eve::graphics::webgpu::Graphics::drawMeshShader(), eve::graphics::vulkan::Graphics::drawTexturedRectShader(), eve::graphics::webgpu::Graphics::drawTexturedRectShader(), eve::graphics::vulkan::Graphics::drawTexturedRectShaderDepth(), eve::graphics::webgpu::Graphics::drawTexturedRectShaderDepth(), eve::graphics::vulkan::Graphics::drawTexturedRectShaderUV(), eve::graphics::webgpu::Graphics::drawTexturedRectShaderUV(), eve::graphics::vulkan::Graphics::drawTexturedRectShaderUVRotated(), eve::graphics::webgpu::Graphics::drawTexturedRectShaderUVRotated(), eve::stylize::Stylize::newPassFromShader(), eve::gpgpu::Sequence::recordDispatch(), eve::graphics::Graphics::releaseShader(), eve::graphics::vulkan::Graphics::releaseShader(), eve::graphics::webgpu::Graphics::releaseShader(), eve::graphics::RenderSystem3D::render(), eve::graphics::RenderSystem3D::renderToCanvas(), eve::graphics::grass::setFrameDuration(), eve::gpgpu::ShaderSystem::setShader(), eve::particles::ParticleEmitter::setShader(), eve::graphics::Graphics::setShader(), eve::graphics::Material::setShader(), eve::graphics::Renderable3D::setShader(), eve::graphics::grass::setTime(), eve::graphics::Renderable3D::setXRayShader(), eve::particles::stepEmitterSimGpu(), eve::gpgpu::vulkanDispatch(), eve::gpgpu::vulkanNewShaderFromSpirv(), eve::gpgpu::vulkanSequenceRecordDispatch(), eve::gpgpu::vulkanSequenceSubmit(), eve::gpgpu::webgpuDispatch() , 以及 eve::gpgpu::webgpuNewShaderFromWgsl().

◆ view

◆ viewProj

◆ worldC

glm::vec3 worldC {0.f}

在文件 RenderSystem3D.cpp531 行定义.

◆ worldR

float worldR = 0.f

在文件 RenderSystem3D.cpp532 行定义.

◆ xray

bool xray = false

在文件 RenderSystem3D.cpp539 行定义.