Skip to content

Conversation

@hzqst
Copy link
Contributor

@hzqst hzqst commented Aug 18, 2025

to mitigate the problem in #701

@hzqst hzqst requested a review from TheMostDiligent as a code owner August 18, 2025 15:19
@TheMostDiligent
Copy link
Contributor

Moving render state cache to archiver is not as easy as that. The cache implementation is still in the GraphicsTools, which means that Archiver needs to use GraphicsTools as dependency. But Archiver is already the dependency of GraphicsTools

@hzqst
Copy link
Contributor Author

hzqst commented Aug 18, 2025

Moving render state cache to archiver is not as easy as that. The cache implementation is still in the GraphicsTools, which means that Archiver needs to use GraphicsTools as dependency. But Archiver is already the dependency of GraphicsTools

Sorry I don't get it, but why GraphicsTools relies on Archiver? or more specifically, which part of GraphicsTools relies on Archiver?

@TheMostDiligent
Copy link
Contributor

Because render state cache is essentially a wrapper on top of archiver.

@hzqst
Copy link
Contributor Author

hzqst commented Aug 18, 2025

Because render state cache is essentially a wrapper on top of archiver.

What about RenderStateCacheImpl takes IArchiverFactory *pArchiverFactory as input through RenderStateCacheCreateInfo and let user decide how to get the factory (either static link or with LoadEngineDll) ? This does minimal impact to current code hierarchy

@TheMostDiligent
Copy link
Contributor

What about RenderStateCacheImpl takes IArchiverFactory *pArchiverFactory as input through RenderStateCacheCreateInfo

This may help, though GraphicsTools will still have dependencies needed for other components in the library.

@hzqst
Copy link
Contributor Author

hzqst commented Aug 18, 2025

image

I'm good with this except needs for nothing more than xxhash.lib, which is not quite a problem to me.

@hzqst hzqst changed the title Archiver DLL: bring CreateRenderStateCache in RenderStateCache: takes pArchiverFactory as input in CreateInfo, let user decide how to get pArchiverFactory Aug 18, 2025
@TheMostDiligent
Copy link
Contributor

I'm good with this except needs for nothing more than xxhash.lib

I think it will still transitively depend on other libraries (abseil, tint) unless it is taken care of.

@TheMostDiligent
Copy link
Contributor

This is now implemented in f4c2460...a694c58

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants