首页 > 技术文章 > 光线追踪 学习记录 1.1 输出图片

xcantaloupe 2021-01-30 15:46 原文

光线追踪 学习记录

本文使用 《Ray Tracing in One Weekend》作为学习书籍

1. 输出图片

本书生成的图片使用PPM格式,然后用PMView图片查看器打开生成的图片文件查看即可
输出

p3
3 2
255
255 0 0
0 255 255
0 0 255
255 255 0
255 255 255
0 0 0

p3代表颜色用ASCII输出
3 2代表有三列两行
255代表像素颜色最大值
接下来有6行每个像素的RGB值

C#代码

StreamWriter sw = new StreamWriter("E:/test1.ppm");
string head = string.Format("P3\n{0} {1} \n255\n", 3, 2);
sw.Write(head);
sw.Write(string.Format("{0} {1} {2}\n", 255, 0, 0));
sw.Write(string.Format("{0} {1} {2}\n", 0, 255, 255));
sw.Write(string.Format("{0} {1} {2}\n", 0, 0, 255));
sw.Write(string.Format("{0} {1} {2}\n", 255, 255, 0));
sw.Write(string.Format("{0} {1} {2}\n", 255, 255, 255));
sw.Write(string.Format("{0} {1} {2}\n", 0, 0, 0));
sw.Close();
Console.WriteLine("按任意键退出");
Console.ReadKey();

推荐阅读