AI 协作日志
学生 Web 实验作品平台
学号:202312215301009 · 来源:ai-log.md
# 实验一 AI协作记录 > 请记录本人真实的AI协作过程。不要只粘贴AI生成结果,应体现自己的判断、测试和核验。以下代码已提供参考实现,但运行现象、Console状态和测试结果必须由本人实际操作后填写,不能预先编造。 ## AI协作1:理解数据流 ### 我的目标:搞清楚数据从哪里来、经过哪些步骤、最后被谁使用,以及中间发生了什么变化 ### 提示词:如何理解图形学中的数据流 ### AI关键回答摘要:理解数据流不只是知道每行代码的作用,还要知道这些代码之间的关系——前一步提供的数据,如何被下一步接收和使用。 ### 我的判断:很多代码体现了数据流 ### 验证方法:使用 VS2022 打开项目,通过浏览器运行对应的 HTML 页面,观察图形是否正常显示,并按 F12 打开开发者工具检查 Console 是否存在错误信息。 ### 验证结果:图形正常显示:记录实际显示的图形和颜色。 ### 修正后的结论:经过浏览器测试,图形显示符合预期,Console 未发现相关错误。通过本次验证,我进一步理解了顶点数据的传递过程,以及绘制函数与图元类型之间的关系。 --- ## AI协作2:程序调试 ### 现象:使用 VS2022 打开实验项目,并通过浏览器运行任务 1~5 的 HTML 页面。运行后,五个任务中的图形均完整显示,没有出现黑屏、图形缺失或明显的显示异常。 ### 我的初步判断:根据实际运行现象,我初步判断项目中的顶点数据、图形绘制流程和基本的 WebGL 配置能够正常工作。但仅凭图形显示正常,还不能证明所有代码细节都完全正确,因此还需要检查浏览器 Console,并结合实验要求核对代码 ### 给AI的提示词:请帮我检查 WebGL 实验任务 1~5 的代码,说明顶点数据、缓冲区、顶点属性和绘制函数之间的关系,并告诉我如何通过浏览器运行和 Console 检查程序是否存在问题。 ### AI给出的关键建议:AI 建议通过浏览器运行各任务页面,观察图形是否正常显示,并使用开发者工具检查 Console。同时,应核对顶点数据与顶点属性配置是否匹配,以及绘制函数使用的图元类型和顶点数量是否合理。 ### 我实际进行的测试: ### 1.使用浏览器运行任务 1~5 的页面。 ### 2.观察各任务中的图形是否完整显示。 ### 3.检查页面运行情况,并查看浏览器 Console。 ### 4.根据实际运行结果判断是否存在明显的显示异常或控制台报错。 ### 测试结果:任务 1~5 的图形均完整显示,运行过程中未发现明显的显示异常。浏览器 Console 未发现报错。 ### 最终原因:本次测试中,五个任务均能正常显示图形,未发现需要进一步修正的运行问题。结合测试结果,当前代码的基本绘制流程能够正常工作。 ### 是否采纳AI建议及理由:我采纳了 AI 关于运行页面、检查图形显示和查看 Console 的建议。通过亲自运行任务 1~5 并检查浏览器 Console,我核验了程序的基本运行情况。后续还需要结合各任务的实验要求进行对照测试,以进一步理解图元类型和顶点属性的作用。 --- ## AI协作3:顶点属性与颜色 ### 我的目标:理解 WebGL 中顶点位置和顶点颜色的传递方式,了解顶点属性配置对最终图形显示效果的影响。 ### 提示词:请解释 WebGL 任务 4 中顶点坐标和顶点颜色是如何传递到 GPU 的,以及 gl.vertexAttribPointer()、gl.enableVertexAttribArray() 和顶点着色器分别起什么作用。请提供一种可以实际操作验证的对照实验。 ### AI关键回答摘要:顶点坐标和顶点颜色可以分别存储在 GPU 缓冲区中。gl.vertexAttribPointer() 用于指定顶点属性的数据格式和读取方式,gl.enableVertexAttribArray() 用于启用对应的顶点属性。顶点着色器接收顶点属性,并将颜色等数据传递给后续渲染阶段。对于不同顶点具有不同颜色的三角形,图形内部可以呈现颜色渐变。 ### 对照实验:计划比较任务 4 中顶点颜色属性配置修改前后的显示效果。修改前先记录原始代码和图形效果,再临时修改颜色属性的读取配置,观察图形显示是否发生变化。测试完成后恢复原始代码。 ### 实际现象:出现了两个绿色三角形边框 ### 我的解释:根据实际观察到的结果,分析顶点颜色数据是否正确传递,以及顶点属性配置变化为什么会影响颜色显示。如果实际结果与预期不同,需要结合代码和 Console 信息进一步检查。 ### 最终结论:通过本次实验,我进一步理解了顶点位置和顶点颜色都需要通过顶点属性传递给 GPU。顶点属性的配置必须与实际数据格式相匹配,才能得到预期的绘制结果。