Fixing float data bug
This commit is contained in:
@@ -23,17 +23,17 @@ float4 fragmentMain(in FragmentParameter params) : SV_Target
|
||||
float3 result = float3(0, 0, 0);
|
||||
for(int i = 0; i < pLightEnv.numDirectionalLights; ++i)
|
||||
{
|
||||
//result += pLightEnv.directionalLights[i].illuminate(lightingParams, brdf);
|
||||
result += pLightEnv.directionalLights[i].illuminate(lightingParams, brdf);
|
||||
}
|
||||
for(uint i = 0; i < pLightEnv.numPointLights; ++i)
|
||||
{
|
||||
//uint lightIndex = pLightCullingData.lightIndexList[startOffset + i];
|
||||
//result += pLightEnv.pointLights[i].illuminate(lightingParams, brdf);
|
||||
result += pLightEnv.pointLights[i].illuminate(lightingParams, brdf);
|
||||
}
|
||||
result += brdf.evaluateAmbient();
|
||||
// gamma correction
|
||||
//result = result / (result + float3(1.0));
|
||||
//result = pow(result, float3(1.0/2.2));
|
||||
return float4(result, 1.0f);
|
||||
return float4(result, brdf.getAlpha());
|
||||
}
|
||||
|
||||
@@ -51,7 +51,7 @@ void VertexData::updateMesh(entt::entity id, uint32 meshIndex, PMesh mesh, Compo
|
||||
auto [instanceId, meshletOffset] = getCullingMapping(id, meshIndex, data.numMeshlets);
|
||||
|
||||
referencedInstance->updateDescriptor();
|
||||
if (false && mat->hasTransparency()) {
|
||||
if (mat->hasTransparency()) {
|
||||
auto params = referencedInstance->getMaterialOffsets();
|
||||
transparentData.add(TransparentDraw{
|
||||
.matInst = referencedInstance,
|
||||
@@ -136,15 +136,11 @@ void VertexData::createDescriptors() {
|
||||
instance.offsets.textureOffset = offsets.textureOffset;
|
||||
instance.offsets.samplerOffset = offsets.samplerOffset;
|
||||
instance.offsets.floatOffset = offsets.floatOffset;
|
||||
// instance.offsets.cullingCounterOffset = cullingOffsets.size();
|
||||
// instance.numMeshlets = 0;
|
||||
for (size_t i = 0; i < instance.instanceData.size(); ++i) {
|
||||
cullingOffsets.add(instance.cullingOffsets[i]);
|
||||
instanceData.add(instance.instanceData[i]);
|
||||
instanceMeshData.add(instance.instanceMeshData[i]);
|
||||
rayTracingScene.add(instance.rayTracingData[i]);
|
||||
// instance.numMeshlets += instance.instanceMeshData[i].numMeshlets;
|
||||
// cullingOffsets.add(numMeshlets);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -75,6 +75,7 @@ void Material::updateDescriptor() {
|
||||
.sourceData =
|
||||
{
|
||||
.size = floatData.size() * sizeof(float),
|
||||
.data = (uint8*)floatData.data(),
|
||||
},
|
||||
});
|
||||
floatBuffer->pipelineBarrier(Gfx::SE_ACCESS_TRANSFER_WRITE_BIT, Gfx::SE_PIPELINE_STAGE_TRANSFER_BIT, Gfx::SE_ACCESS_SHADER_READ_BIT,
|
||||
|
||||
Reference in New Issue
Block a user