Unverified mid-round state (cliff plates / horizon slab / routes in progress). Resume from here. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MmSoF64BbRFmk9C3p1VsBJ
60 lines
3.9 KiB
C++
60 lines
3.9 KiB
C++
#include "../Research/OwnerShapeWorld/gpu_field_port/GpuFarViewer.h"
|
|
|
|
// The isolated CPU viewer does not compile the GPU Far implementation. These link stubs keep
|
|
// that optional path unavailable while preserving the Core and CPU mesh/capture paths.
|
|
namespace VoxelForgeGpuFarViewer
|
|
{
|
|
std::filesystem::path ExecutablePrecompiledShaderDirectory(const std::filesystem::path& path)
|
|
{ return path.parent_path(); }
|
|
bool InitializeFarPipeline(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool QueueFarShaderWarmup(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
bool,const std::string&,bool,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool CompleteFarShaderWarmup(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool ReserveFarOutputPool(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
std::uint32_t,std::uint32_t,std::string& error,std::uint32_t)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool ReadFarTileRequiredVertexCounts(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
const std::vector<std::uint32_t>&,std::vector<std::uint32_t>&,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool ReadFarTileOutputStatuses(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
const std::vector<std::uint32_t>&,std::vector<std::uint32_t>&,std::vector<std::uint32_t>&,
|
|
std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool QueryFarGpuMemory(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
std::uint64_t& usage,std::uint64_t& budget,std::string& error)
|
|
{ usage=budget=0;error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool BeginFarTileBatch(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool BuildFarTile(ID3D11Device*,ID3D11DeviceContext*,VoxelForgeCore::World&,
|
|
const VoxelForgeCore::TileKey&,const VoxelForgeCore::FarFieldTileInput*,
|
|
const std::filesystem::path&,ID3D11Buffer** vertices,ID3D11Buffer** indices,
|
|
ID3D11Buffer** args,ID3D11Buffer** connectorVertices,ID3D11Buffer** connectorIndices,
|
|
std::uint32_t,std::uint32_t,std::uint32_t* argsOffset,ID3D11Query** completion,
|
|
GpuTimingQueries*,CpuMesh*,double* enqueueMs,double* dispatchMs,std::string& error,
|
|
bool,std::uint32_t,std::uint32_t)
|
|
{
|
|
if(vertices)*vertices=nullptr;
|
|
if(indices)*indices=nullptr;
|
|
if(args)*args=nullptr;
|
|
if(connectorVertices)*connectorVertices=nullptr;
|
|
if(connectorIndices)*connectorIndices=nullptr;
|
|
if(argsOffset)*argsOffset=0;
|
|
if(completion)*completion=nullptr;
|
|
if(enqueueMs)*enqueueMs=0.0;
|
|
if(dispatchMs)*dispatchMs=0.0;
|
|
error="GPU far rendering is excluded from the isolated CPU viewer";
|
|
return false;
|
|
}
|
|
bool SubmitFarTileBatch(ID3D11Device*,ID3D11DeviceContext*,const std::filesystem::path&,
|
|
ID3D11Query**,GpuTimingQueries*,std::string& error)
|
|
{ error="GPU far rendering is excluded from the isolated CPU viewer";return false; }
|
|
bool ResolveGpuTiming(ID3D11DeviceContext*,GpuTimingQueries&,double& dispatchMs,
|
|
std::uint64_t*,std::uint64_t*,std::uint64_t*)
|
|
{ dispatchMs=0.0;return false; }
|
|
bool ResolveGpuTimestampPair(ID3D11DeviceContext*,GpuTimingQueries&,std::uint64_t,double& dispatchMs)
|
|
{ dispatchMs=0.0;return false; }
|
|
}
|