#include <algorithm>#include <cstring>#include <set>#include <stdexcept>#include "graphics/ShaderResourceValidation.h"#include "graphics/shaders/mesh3d_vert_spv.inc"#include "graphics/vulkan/Graphics.h"#include "graphics/vulkan/ShaderResourceReload.h"类 | |
| struct | eve::graphics::vulkan::MeshShaderResources |
命名空间 | |
| namespace | eve |
| Build metadata (engine git commit, build time, third-party version). | |
| namespace | eve::graphics |
| 卡牌游戏 UI 工具模块:工厂 + 脚本绑定入口。 功能参考 ycarowr/UiCard:扇形手牌布局、抽牌/洗牌、悬浮放大、拖拽到落牌区、 敌方手牌(背面/偷看)、费用不足置灰,以及可实时调节的布局参数。 数据模型与渲染/交互逻辑见 CardTypes.h。 | |
| namespace | eve::graphics::vulkan |
函数 | |
| bool | eve::graphics::vulkan::isMeshResourceImageShared (const GpuShader &first, std::uint32_t firstSlot, const GpuShader &second, std::uint32_t secondSlot) |
| Query whether two live shader image slots share immutable GPU storage. @ownership Borrows both shaders for this render-thread call only; invalid slots return false. | |
| Result< void > | eve::graphics::vulkan::validateMeshResourceShaderReload (const GpuShader &shader, std::span< const uint32_t > vertex, std::span< const uint32_t > fragment) |
| Validate mesh resource shader reload. | |
| std::uint32_t | eve::graphics::vulkan::meshResourceInstanceCount (const GpuShader &shader) |
| Immutable uploaded instance count; render-thread read, no retained borrow. | |
变量说明
◆ contentOwner
| std::weak_ptr<const void> contentOwner |
在文件 GraphicsShaderResources.cpp 第 18 行定义.
◆ image
| vk::UniqueImage image |
在文件 GraphicsShaderResources.cpp 第 14 行定义.
被这些函数引用 eve::ui::UI::addImage(), eve::ui::UI::addNinePatch(), eve::procgen::bakeGtsWeatherPbr(), eve::model3d::ModelData::bakeNormalMap(), eve::procgen::bakeTerrainGrassImage(), eve::graphics::GrassField::bakeTexturedPoints(), eve::asset_procgen::buildTerrainMaterialAtlases(), eve::pixelworld_editor::PixelWorldCatalogPanel::buildWidgetTree(), eve::asset::cookEvaToEvpack(), eve::asset::SpriteAnimationClip::decode(), eve::asset::decodeEvpackImage(), eve::graphics::vulkan::Graphics::drawDeferredLighting(), eve::fluids::exposeVolumeFluidFactory(), eve::procgen::Procgen::generateImageHandle(), eve::procgen::Procgen::generateNormalImageHandle(), eve::procgen::generatePrototypeTexture(), eve::procgen::road::generateRoadMarkingsTexture(), eve::procgen::Procgen::generateTerrainAlbedoMap(), eve::procgen::generateTerrainImageMaskFromImage(), eve::procgen::Procgen::generateTerrainSplatMap(), eve::procgen::Procgen::generateTextureBorrowed(), eve::ui::image(), eve::dev::imageContentResult(), eve::image::UvPaintSession::initializeResult(), eve::procgen::DynamicMeshUvPaintSession::initializeResult(), eve::asset_graphics::EvpackStaticPrefab::load(), eve::asset_graphics::EvpackImageLoader::load(), eve::graphics::SkyWispsAsset::load(), eve::asset_graphics::loadVegetationSceneElementMasks(), eve::asset_procgen::packTerrainMaterialAtlases(), eve::avatar::parseVrm(), eve::asset_import::prepareCanonicalTerrainImport(), eve::asset_graphics::EvpackStaticPrefab::prepareGpuDriven(), eve::asset_import::prepareUnitySpriteAnimation(), eve::asset_import::prepareUnityVegetationConversionImport(), eve::asset_import::prepareUnityVegetationMaterial(), eve::asset_import::prepareUnityVegetationScene(), eve::asset_graphics::detail::readCookedMaterial(), eve::graphics::webgpu::Graphics::readDecalLayerToImageData(), eve::graphics::webgpu::Graphics::readGBufferToImageData(), eve::graphics::vulkan::recordTextureCopies(), eve::asset_procgen::TerrainDetailGpuResolver::release(), eve::graphics::vulkan::Graphics::replaceMeshShaderResources(), eve::graphics::shaderImageRegions(), eve::stylize::AfterimageEffect::snapshot(), eve::stylize::AfterimageEffect::update(), eve::asset_procgen::uploadPackedTerrainMaterialAtlases() , 以及 eve::asset_procgen::uploadTerrainMaterialAtlases().
◆ memory
| vk::UniqueDeviceMemory memory |
在文件 GraphicsShaderResources.cpp 第 13 行定义.
被这些函数引用 eve::combat::MeleeHitRuntime::advance(), eve::animation::SmrMeshRetNet::forward(), eve::npc_ai::perceptionMemoryFrom(), eve::npc_ai::NpcAiWorld::remember(), eve::graphics::vulkan::Graphics::replaceMeshShaderResources(), eve::npc_ai::NpcAiWorld::restoreAgent(), eve::graphics::raytracing::DeviceAddressBuffer::steal() , 以及 eve::npc_ai::NpcAiWorld::tick().
◆ sampler
| vk::UniqueSampler sampler |
在文件 GraphicsShaderResources.cpp 第 16 行定义.
被这些函数引用 eve::graphics::vulkan::Graphics::drawDeferredLighting(), eve::voxel::Chunk::ensureMeshed(), eve::procgen::Heightmap::generate(), eve::procgen::Procgen::generateHeightmapHandle(), eve::graphics::Texture::getSampler(), eve::voxel::GreedyMesher::meshChunk(), eve::voxel::GreedyMesher::meshFace(), eve::asset_import::prepareUnityVegetationMaterial(), eve::asset_graphics::detail::readCookedMaterial(), eve::voxel::Chunk::remesh(), eve::graphics::vulkan::Graphics::setTextureSampler(), eve::graphics::webgpu::Graphics::setTextureSampler() , 以及 eve::graphics::vulkan::Graphics::PbrResources::~PbrResources().
◆ shape
| ShaderImageInput shape |
在文件 GraphicsShaderResources.cpp 第 17 行定义.
被这些函数引用 eve::vehicle::VehiclePhysics::attach3D(), eve::scene_editor::SceneEditorSession::beginPhysicsPlacement(), eve::tensor::onnx_detail::broadcastIndex(), eve::scene_editor::ScenePhysicsPlacementBackend::Impl::build(), eve::physics::World3D::closestPoint(), eve::fluids::composeVolumeFluidEmitterShapes(), eve::container::Zone< Space >::contains(), eve::tensor::onnx_detail::count(), eve::scene_editor::ScenePhysicsPlacementBackend::create(), eve::scene_editor::ScenePhysicsPlacementBackend::Impl::createShape(), eve::tensor::onnx_detail::dispatchFloat(), eve::tensor::onnx_detail::execute(), eve::tensor::onnx_detail::executeIndex(), eve::tensor::onnx_detail::executeMisc(), eve::tensor::onnx_detail::executeNeural(), eve::tensor::onnx_detail::executeNumeric(), eve::tensor::onnx_detail::executeQuant(), eve::tensor::onnx_detail::executeQuantLstm(), eve::tensor::onnx_detail::executeShape(), eve::fluids::exposeVolumeFluidFactory(), eve::procgen::Procgen::filterPolygonHandle(), eve::physics::World3D::findShapeById(), eve::physics::World3D::forgetShape(), eve::action::ActionAttackVfxBinding::fromPayload(), eve::action::ActionAudioBinding::fromPayload(), eve::action::ActionVfxBinding::fromPayload(), eve::procgen::generateRockMesh(), eve::editor::ActionTimelineWidget::insertableTypes(), eve::tensor::onnx_detail::make(), eve::physics::Body3D::newBoxShape(), eve::physics::Body3D::newCapsuleShape(), eve::physics::Body::newChainFixture(), eve::physics::Body::newCircleFixture(), eve::physics::Body3D::newConvexHullShape(), eve::physics::Body3D::newHeightFieldShape(), eve::physics::Body::newPolygonFixture(), eve::physics::Body::newRectangleFixtureAt(), eve::physics::Body3D::newSphereShape(), eve::physics::Body3D::newTriangleMeshShape(), eve::physics::World::pointProbe(), eve::physics::PhysicsArtifactProvider::prepare(), eve::climbing::ClimbingRuntime::probeInto(), eve::map::Map::publishCollision(), eve::physics::World3D::queryAABB(), eve::physics::World3D::queryAabbBroadPhaseOwned(), eve::physics::World3D::rayCastOwned(), eve::physics::World3D::registerShapeHandle(), eve::graphics::vulkan::Graphics::replaceMeshShaderResources(), eve::definition::restoreRuntimeInstance(), eve::physics::PhysicsArtifactProvider::restoreState(), eve::physics::World3D::setBodyPairCollisionEnabled(), eve::graphics::FogVolume::setShape(), eve::level_editing::Brush::setShape(), eve::physics::WorldSnapshotAccess::setShapeId(), eve::physics::Body3D::setType(), eve::physics::WorldSnapshotAccess::shapeSource(), eve::physics::World3D::step(), eve::dnut::stepShapeName(), eve::physics::World3D::updateShapeTag(), eve::physics_editing::PhysicsColliderTarget::validate() , 以及 eve::action::ActionNotifyRegistry::validate().
◆ view
| vk::UniqueImageView view |
在文件 GraphicsShaderResources.cpp 第 15 行定义.