@@ -327,32 +327,25 @@ void GameRenderer::render(VkCommandBuffer commandBuffer, Camera &camera, Scene &
327
327
if (renderMaterial.type == MaterialType::Skin && !m_dawntrailMode) {
328
328
systemKeys.push_back (physis_shpk_crc (" DecodeDepthBuffer_RAWZ" ));
329
329
}
330
+
330
331
std::vector<uint32_t > sceneKeys;
331
- if (m_dawntrailMode) {
332
- sceneKeys.push_back (physis_shpk_crc (" ApplyDitherClipOff" ));
333
- sceneKeys.push_back (physis_shpk_crc (" ApplyDissolveColorOff" ));
334
- sceneKeys.push_back (physis_shpk_crc (" GetCustumizeColorAuraOff" ));
332
+ for (int j = 0 ; j < renderMaterial.shaderPackage .num_scene_keys ; j++) {
333
+ auto id = renderMaterial.shaderPackage .scene_keys [j].id ;
335
334
336
- if (model.skinned ) {
337
- sceneKeys.push_back (physis_shpk_crc (" TransformViewSkin" ));
338
- } else {
339
- sceneKeys.push_back (physis_shpk_crc (" TransformViewRigid" ));
335
+ bool found = false ;
336
+ if (id == physis_shpk_crc (" TransformView" )) {
337
+ if (model.skinned ) {
338
+ sceneKeys.push_back (physis_shpk_crc (" TransformViewSkin" ));
339
+ } else {
340
+ sceneKeys.push_back (physis_shpk_crc (" TransformViewRigid" ));
341
+ }
342
+ found = true ;
340
343
}
341
344
342
- sceneKeys.push_back (physis_shpk_crc (" ApplyVertexMovementOff" ));
343
- sceneKeys.push_back (physis_shpk_crc (" CalculateInstancingPosition_Off" ));
344
-
345
- } else {
346
- if (model.skinned ) {
347
- sceneKeys.push_back (physis_shpk_crc (" TransformViewSkin" ));
348
- } else {
349
- sceneKeys.push_back (physis_shpk_crc (" TransformViewRigid" ));
345
+ // Fall back to default if needed
346
+ if (!found) {
347
+ sceneKeys.push_back (renderMaterial.shaderPackage .scene_keys [j].default_value );
350
348
}
351
-
352
- sceneKeys.push_back (physis_shpk_crc (" GetAmbientLight_SH" ));
353
- sceneKeys.push_back (physis_shpk_crc (" GetReflectColor_Texture" ));
354
- sceneKeys.push_back (physis_shpk_crc (" GetAmbientOcclusion_None" ));
355
- sceneKeys.push_back (physis_shpk_crc (" ApplyDitherClipOff" ));
356
349
}
357
350
358
351
std::vector<uint32_t > materialKeys;
0 commit comments