[ad_1]
一个非常简单的问题是,我需要一个用于编写类似于 Java 中的 ByteBuffers 的原始像素的库(如果您熟悉的话),使用
一种图像对象,可以与我将演示的像素绘制方法(带有一些光线跟踪内容)一起使用。
我进行光线跟踪的方法是编写 rayOrgin、判别式,并在名为 PerPixel 的 int 类型函数中返回颜色,并使用名为“coord”的 2 浮点向量,然后通过嵌套的 for 循环将数据补充到图像数据。
它应该是这样的:
C++
for (int y = 0; y < IMAGE_WIDTH; y++) { for (int y = 0; y < IMAGE_HEIGHT; y++) { Vector2f coord = { x / (float) IMAGE_WIDTH, y / (float) IMAGE_HEIGHT }; imageData[x + y * IMAGE_WIDTH] = PerPixel(coord); } } int PerPixel(Vector2f coord) { // RAYTRACING STUFF // ORDER CAN BE RGBA, ARGB, RGB and etc. just needs to have Red, Green and Blue channels. if (discriminant >= 0) return 0xffff00ff; return 0xff000000; }
我尝试过的:
我已经尝试过 SDL,但是当我正确创建图像时,当我进入光线跟踪部分时它就失败了。 我尝试过OpenGL
相反,但这一次当我尝试使用 VAO、VBO、TBO 等创建图像时,它给了我一个例外。
除了图像创建之外,我不需要任何大型教程,只需要一段类似于我之前展示的使用库的代码片段的代码片段(并且显然还给了我库的名称)。
解决方案1
查看一些链接 设置像素 gdi – Google 搜索[^] 和 设置像素 directx – Google 搜索[^]。
[ad_2]
コメント