实验”软渲染器:局部光照 (15 分)”验收分数不明确

实验文档中没有明确说明在验收时,实验"软渲染器:局部光照 (15 分)"的分数将如何计算。如果渲染实现中有小错误是会扣除部分分数还是扣除全部分数。

以我们的标准而言,

  • 因浮点误差等问题导致的、范围一般限于若干像素或一两条线的图像问题,例如局部的黑点、黑边等,由于我们并不要求大家进行浮点误差估计和处理,都不算错误。
  • 因为环境光处理或其他参数设置等原因,渲染图整体偏亮或偏暗的,只要幅度不大,我们不认为这是错误。

这也是我们今年没有为渲染写单元测试的原因——写一段比对像素的代码并不难,但我们的要求并不是每个像素都要与参考答案一致,又暂时没有想到好办法来自动比对两幅图像。

注意:因为光照模型实现不正确导致高光范围偏大(或偏小)不在豁免范围内,这属于“物体的颜色不正确”。

该实验验收得分标准为:

  • 渲染图中能看到所有应该出现的物体可以得 5 分
  • 所有物体的颜色和位置都正确再得 10 分

目前的渲染部分实验文档中缺失了一些具体得分标准,我们将会在这几天更新文档加以补充。

如果出现一部分的颜色错误是" * 所有物体的颜色和位置都正确再得 10 分"全部扣完吗?还是说酌情给分?

我看你在另一个话题中提到的是高光范围有差异,由于这部分代码是由 @roland 实现的,只要他认定你的差异不是因为实现错误,就可以直接给满分;相反如果确实是你实现不对,那这 10 分会被全部扣掉。

由于我们并不认为给出的参考实现一定正确且精准,所以整体上标准是比较宽松的。而且如果现场认定你实现不对,也可以放弃本次验收,等下次改对了再来。

老师在课上说不可刷分,这种情况是否属于"刷分"。

我好像在群里也解释过一次,这种情况不算刷分。

我们验收的流程是这样的:

  1. 首先你需要声明,自己这次验收是想要拿到全部分数还是只要部分分数
  2. 我们按照你想要获取的分值,开始检查结果并问一些问题
  3. 如果你的结果确实可以得到你期望的分数,那么验收结束并且不可以再来验收

也就是说,“禁止刷分”指的是:

  • 如果你一开始已经说明自己只要部分分数,那么你就不可以再通过任何办法拿到这个实验的全部分数。
  • 验收结束后,无论拿到了多少分数,都可以选择接受并 登记成绩。如果你已经登记了成绩,以后就不可以再验收这个实验。

而如果你一开始就说自己想要拿到全部分数,而验收的结果是不成功,那么你可以选择 不登记成绩 并下次再来验收。